org.argouml.uml.cognitive.critics
Class CrNameConfusion
java.lang.Object
org.argouml.cognitive.critics.Critic
org.argouml.uml.cognitive.critics.CrUML
org.argouml.uml.cognitive.critics.CrNameConfusion
- All Implemented Interfaces:
- Poster, java.io.Serializable
- public class CrNameConfusion
- extends CrUML
Well-formedness rule [1] for MNamespace. See page 33 of UML 1.1
Semantics. OMG document ad/97-08-04.
- See Also:
- Serialized Form
Fields inherited from class org.argouml.uml.cognitive.critics.CrUML |
cat, decBEHAVIOR, decCLASS_SELECTION, decCODE_GEN, decCONTAINMENT, decEXPECTED_USAGE, decINHERITANCE, decINSTANCIATION, decMETHODS, decMODULARITY, decNAMING, decPATTERNS, decPLANNED_EXTENSIONS, decRELATIONSHIPS, decSTATE_MACHINES, decSTEREOTYPES, decSTORAGE |
Fields inherited from class org.argouml.cognitive.critics.Critic |
_clarifier, _knowledgeTypes, _numCriticsFired, _supportedDecisions, _supportedGoals, _triggerMask, DEFAULT_CLARIFIER, ENABLED, KT_COMPLETENESS, KT_CONSISTENCY, KT_CORRECTNESS, KT_DESIGNERS, KT_EXPERIENCIAL, KT_OPTIMIZATION, KT_ORGANIZATIONAL, KT_PRESENTATION, KT_SEMANTICS, KT_SYNTAX, KT_TOOL, NO_PROBLEM, PROBLEM_FOUND, RESOURCE_BUNDLE, SNOOZE_ORDER |
Method Summary |
org.tigris.gef.util.VectorSet |
computeOffenders(ru.novosoft.uml.foundation.core.MModelElement dm)
|
boolean |
confusable(java.lang.String stripped1,
java.lang.String stripped2)
|
int |
countDiffs(java.lang.String s1,
java.lang.String s2)
|
javax.swing.Icon |
getClarifier()
|
java.lang.Class |
getWizardClass(ToDoItem item)
Return the Class of wizard that can fix the problem identifed by
this critic. |
void |
initWizard(Wizard w)
Initialize a newly created wizard with information found by the
critic. |
boolean |
predicate2(java.lang.Object dm,
Designer dsgr)
|
boolean |
stillValid(ToDoItem i,
Designer dsgr)
Return true iff the given ToDoItem is still valid and should be
kept in the given designers ToDoList. |
java.lang.String |
strip(java.lang.String s)
|
ToDoItem |
toDoItem(java.lang.Object dm,
Designer dsgr)
Reply the ToDoItem that the designer should see iff predicate()
returns true. |
Methods inherited from class org.argouml.cognitive.critics.Critic |
addControlRec, addKnowledgeType, addSupportedDecision, addSupportedGoal, addTrigger, beActive, beInactive, canFixIt, containsKnowledgeType, critique, defaultMoreInfoURL, fixIt, getArg, getArgs, getControlRec, getCriticCategory, getCriticKey, getCriticName, getCriticType, getDecisionCategory, getDescription, getDescriptionTemplate, getExpertEmail, getHeadline, getHeadline, getHeadline, getMoreInfoURL, getMoreInfoURL, getPriority, getPriority, getSupportedDecisions, getSupportedGoals, getTriggerMask, isActive, isEnabled, isRelevantToDecisions, isRelevantToGoals, makeWizard, matchReason, postItem, reasonCodeFor, setArg, setArgs, setDecisionCategory, setDescription, setEnabled, setExpertEmail, setKnowledgeTypes, setKnowledgeTypes, setKnowledgeTypes, setKnowledgeTypes, setMoreInfoURL, setPriority, snooze, snoozeOrder, supports, supports, toString, unsnooze |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
CrNameConfusion
public CrNameConfusion()
predicate2
public boolean predicate2(java.lang.Object dm,
Designer dsgr)
- Overrides:
predicate2
in class CrUML
computeOffenders
public org.tigris.gef.util.VectorSet computeOffenders(ru.novosoft.uml.foundation.core.MModelElement dm)
toDoItem
public ToDoItem toDoItem(java.lang.Object dm,
Designer dsgr)
- Description copied from class:
Critic
- Reply the ToDoItem that the designer should see iff predicate()
returns true. By default it just fills in the fields of the
ToDoItem from accessor methods of this Critic. Critic Subclasses
may override this method or the accessor methods to add computed
fields to the ToDoItem.
TODO: Critic's may want to add new fields to a
ToDoItem to make stillValid more efficent.
- Overrides:
toDoItem
in class Critic
- See Also:
Critic.critique(java.lang.Object, org.argouml.cognitive.Designer)
stillValid
public boolean stillValid(ToDoItem i,
Designer dsgr)
- Description copied from class:
Critic
- Return true iff the given ToDoItem is still valid and should be
kept in the given designers ToDoList. Critics that are not
enabled should always return false so that their ToDoItems will
be removed. Subclasses of Critic that supply multiple offenders
should always override this method.
By default this method basically asks the critic to again
critique the offending Object and then it checks if the
resulting ToDoItem is the same as the one already posted. This is
simple and it works fine for light-weight critics. Critics that
expend a lot of computational effort in making feedback that can
be easily check to see if it still holds, should override this
method.
TODO: Maybe ToDoItem should carry some data to make
this method more efficient.
- Specified by:
stillValid
in interface Poster
- Overrides:
stillValid
in class Critic
confusable
public boolean confusable(java.lang.String stripped1,
java.lang.String stripped2)
countDiffs
public int countDiffs(java.lang.String s1,
java.lang.String s2)
strip
public java.lang.String strip(java.lang.String s)
getClarifier
public javax.swing.Icon getClarifier()
- Specified by:
getClarifier
in interface Poster
- Overrides:
getClarifier
in class Critic
initWizard
public void initWizard(Wizard w)
- Description copied from class:
Critic
- Initialize a newly created wizard with information found by the
critic. This is called right after the wizard is made in
makeWizard() and after the wizard's ToDoItem is set. Any critic
that supports wizards should probably override this method, and
call super initWizard() first.
- Overrides:
initWizard
in class Critic
getWizardClass
public java.lang.Class getWizardClass(ToDoItem item)
- Description copied from class:
Critic
- Return the Class of wizard that can fix the problem identifed by
this critic.
This method returns null, subclasses with wizards should override it.
- Overrides:
getWizardClass
in class Critic
- Returns:
- null if no wizard is defined.