org.argouml.uml.cognitive.critics
Class CrComponentWithoutNode
java.lang.Object
org.argouml.cognitive.critics.Critic
org.argouml.uml.cognitive.critics.CrUML
org.argouml.uml.cognitive.critics.CrComponentWithoutNode
- All Implemented Interfaces:
- Poster, java.io.Serializable
- public class CrComponentWithoutNode
- extends CrUML
A critic to detect when there are components that
are not inside a node
- 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 |
Methods inherited from class org.argouml.cognitive.critics.Critic |
addControlRec, addKnowledgeType, addSupportedDecision, addSupportedGoal, addTrigger, beActive, beInactive, canFixIt, containsKnowledgeType, critique, defaultMoreInfoURL, fixIt, getArg, getArgs, getClarifier, getControlRec, getCriticCategory, getCriticKey, getCriticName, getCriticType, getDecisionCategory, getDescription, getDescriptionTemplate, getExpertEmail, getHeadline, getHeadline, getHeadline, getMoreInfoURL, getMoreInfoURL, getPriority, getPriority, getSupportedDecisions, getSupportedGoals, getTriggerMask, getWizardClass, initWizard, 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 |
CrComponentWithoutNode
public CrComponentWithoutNode()
predicate2
public boolean predicate2(java.lang.Object dm,
Designer dsgr)
- Overrides:
predicate2
in class CrUML
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
computeOffenders
public org.tigris.gef.util.VectorSet computeOffenders(UMLDeploymentDiagram dd)
- If there are components that have no enclosing FigMNode
the returned vector-set is not null. Then in the vector-set
are the UMLDeploymentDiagram and all FigComponents with no
enclosing FigMNode