|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.argouml.cognitive.critics.Critic
org.argouml.uml.cognitive.critics.CrUML
org.argouml.pattern.cognitive.critics.CrConsiderSingleton
A critic to detect when a class can never have more than one instance (of itself of any subclasses), and thus whether it is suitable for declaration as a Singleton (with stereotype «Singleton».
Field Summary |
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, SNOOZE_ORDER |
Constructor Summary | |
CrConsiderSingleton()
Constructor for the critic. |
Method Summary | |
boolean |
predicate2(java.lang.Object dm,
Designer dsgr)
The trigger for the critic. |
Methods inherited from class org.argouml.uml.cognitive.critics.CrUML |
expand, predicate, setHeadline, setResource, toDoItem |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public CrConsiderSingleton()
Constructor for the critic.
Sets up the resource name, which will allow headline and description to be found for the current locale. Provides a design issue category (PATTERNS), sets a priority for any to-do items (LOW) and adds triggers for metaclasses "stereotype", "structuralFeature" and "associationEnd".
Method Detail |
public boolean predicate2(java.lang.Object dm, Designer dsgr)
The trigger for the critic.
First check we are already a Singleton.
Otherwise plausible candidates for the Singleton design pattern are classes with no instance variables (i.e. non-static attributes) and no outgoing associations.
predicate2
in class CrUML
dm
- the Object
to be checked against
the critic.dsgr
- the Designer
creating the model. Not used, this is for future
development of ArgoUML.
PROBLEM_FOUND
if the critic is
triggered, otherwise NO_PROBLEM
.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
ArgoUML © 1996-2004 (20040316) | ArgoUML Homepage | ArgoUML Developers' page | ArgoUML Cookbook |