1
2
3
4 package org.andromda.metafacades.uml14;
5
6 /***
7 * MetafacadeLogic for org.andromda.metafacades.uml.ValueObject
8 *
9 * @see org.andromda.metafacades.uml.ValueObject
10 */
11 public abstract class ValueObjectLogic
12 extends org.andromda.metafacades.uml14.ClassifierFacadeLogicImpl
13 implements org.andromda.metafacades.uml.ValueObject
14 {
15
16 protected Object metaObject;
17
18 public ValueObjectLogic(Object metaObject, String context)
19 {
20 super((org.omg.uml.foundation.core.Classifier)metaObject, getContext(context));
21 this.metaObject = metaObject;
22 }
23
24 /***
25 * Gets the context for this metafacade logic instance.
26 */
27 private static String getContext(String context)
28 {
29 if (context == null)
30 {
31 context = "org.andromda.metafacades.uml.ValueObject";
32 }
33 return context;
34 }
35
36 /***
37 * @see org.andromda.core.metafacade.MetafacadeBase
38 */
39 public void resetMetafacadeContext(String context)
40 {
41 if (!this.contextRoot)
42 {
43 context = getContext(context);
44 setMetafacadeContext (context);
45 }
46 }
47
48 /***
49 * @see org.andromda.metafacades.uml.ValueObject
50 */
51 public boolean isValueObjectMetaType()
52 {
53 return true;
54 }
55
56 /***
57 * @see org.andromda.core.metafacade.MetafacadeBase#validateInvariants(java.util.Collection)
58 */
59 public void validateInvariants(java.util.Collection validationMessages)
60 {
61 super.validateInvariants(validationMessages);
62 }
63
64 /***
65 * The property that stores the name of the metafacade.
66 */
67 private static final String NAME_PROPERTY = "name";
68
69 /***
70 * @see java.lang.Object#toString()
71 */
72 public String toString()
73 {
74 final StringBuffer toString = new StringBuffer(this.getClass().getName());
75 toString.append("[");
76 try
77 {
78 toString.append(org.andromda.core.common.Introspector.instance().getProperty(this, NAME_PROPERTY));
79 }
80 catch (final Throwable throwable)
81 {
82
83 }
84 toString.append("]");
85 return toString.toString();
86 }
87 }