1 // license-header java merge-point
2 //
3 // Attention: generated code (by MetafacadeLogic.vsl) - do not modify!
4 //
5 package org.andromda.cartridges.bpm4struts.metafacades;
6
7 import java.util.Collection;
8 import java.util.List;
9 import org.andromda.core.common.Introspector;
10 import org.andromda.core.metafacade.MetafacadeBase;
11 import org.andromda.core.metafacade.MetafacadeFactory;
12 import org.andromda.core.metafacade.ModelValidationMessage;
13 import org.andromda.metafacades.uml.ActorFacade;
14 import org.andromda.metafacades.uml.AssociationEndFacade;
15 import org.andromda.metafacades.uml.AttributeFacade;
16 import org.andromda.metafacades.uml.ClassifierFacade;
17 import org.andromda.metafacades.uml.ConstraintFacade;
18 import org.andromda.metafacades.uml.DependencyFacade;
19 import org.andromda.metafacades.uml.EntityAssociationEnd;
20 import org.andromda.metafacades.uml.EntityQueryOperation;
21 import org.andromda.metafacades.uml.GeneralizableElementFacade;
22 import org.andromda.metafacades.uml.GeneralizationFacade;
23 import org.andromda.metafacades.uml.ManageableEntity;
24 import org.andromda.metafacades.uml.ManageableEntityAssociationEnd;
25 import org.andromda.metafacades.uml.ManageableEntityAttribute;
26 import org.andromda.metafacades.uml.ModelElementFacade;
27 import org.andromda.metafacades.uml.ModelFacade;
28 import org.andromda.metafacades.uml.OperationFacade;
29 import org.andromda.metafacades.uml.PackageFacade;
30 import org.andromda.metafacades.uml.StateMachineFacade;
31 import org.andromda.metafacades.uml.StereotypeFacade;
32 import org.andromda.metafacades.uml.TaggedValueFacade;
33 import org.andromda.metafacades.uml.TemplateParameterFacade;
34 import org.andromda.metafacades.uml.TypeMappings;
35
36 /**
37 * TODO: Model Documentation for
38 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity
39 * MetafacadeLogic for StrutsManageableEntity
40 *
41 * @see StrutsManageableEntity
42 */
43 public abstract class StrutsManageableEntityLogic
44 extends MetafacadeBase
45 implements StrutsManageableEntity
46 {
47 /**
48 * The underlying UML object
49 * @see Object
50 */
51 protected Object metaObject;
52
53 /** Create Metafacade implementation instance using the MetafacadeFactory from the context
54 * @param metaObjectIn
55 * @param context
56 */
57 protected StrutsManageableEntityLogic(Object metaObjectIn, String context)
58 {
59 super(metaObjectIn, getContext(context));
60 this.superManageableEntity =
61 (ManageableEntity)
62 MetafacadeFactory.getInstance().createFacadeImpl(
63 "org.andromda.metafacades.uml.ManageableEntity",
64 metaObjectIn,
65 getContext(context));
66 this.metaObject = metaObjectIn;
67 }
68
69 /**
70 * Gets the context for this metafacade logic instance.
71 * @param context String. Set to StrutsManageableEntity if null
72 * @return context String
73 */
74 private static String getContext(String context)
75 {
76 if (context == null)
77 {
78 context = "org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity";
79 }
80 return context;
81 }
82
83 private ManageableEntity superManageableEntity;
84 private boolean superManageableEntityInitialized = false;
85
86 /**
87 * Gets the ManageableEntity parent instance.
88 * @return this.superManageableEntity ManageableEntity
89 */
90 private ManageableEntity getSuperManageableEntity()
91 {
92 if (!this.superManageableEntityInitialized)
93 {
94 ((MetafacadeBase)this.superManageableEntity).setMetafacadeContext(this.getMetafacadeContext());
95 this.superManageableEntityInitialized = true;
96 }
97 return this.superManageableEntity;
98 }
99
100 /** Reset context only for non-root metafacades
101 * @param context
102 * @see org.andromda.core.metafacade.MetafacadeBase#resetMetafacadeContext(String context)
103 */
104 @Override
105 public void resetMetafacadeContext(String context)
106 {
107 if (!this.contextRoot) // reset context only for non-root metafacades
108 {
109 context = getContext(context); // to have same value as in original constructor call
110 setMetafacadeContext (context);
111 if (this.superManageableEntityInitialized)
112 {
113 ((MetafacadeBase)this.superManageableEntity).resetMetafacadeContext(context);
114 }
115 }
116 }
117
118 /**
119 * @return boolean true always
120 * @see StrutsManageableEntity
121 */
122 public boolean isStrutsManageableEntityMetaType()
123 {
124 return true;
125 }
126
127 // --------------- attributes ---------------------
128
129 /**
130 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getPageName()
131 * @return String
132 */
133 protected abstract String handleGetPageName();
134
135 private String __pageName1a;
136 private boolean __pageName1aSet = false;
137
138 /**
139 * TODO: Model Documentation for
140 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.pageName
141 * @return (String)handleGetPageName()
142 */
143 public final String getPageName()
144 {
145 String pageName1a = this.__pageName1a;
146 if (!this.__pageName1aSet)
147 {
148 // pageName has no pre constraints
149 pageName1a = handleGetPageName();
150 // pageName has no post constraints
151 this.__pageName1a = pageName1a;
152 if (isMetafacadePropertyCachingEnabled())
153 {
154 this.__pageName1aSet = true;
155 }
156 }
157 return pageName1a;
158 }
159
160 /**
161 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getPageFullPath()
162 * @return String
163 */
164 protected abstract String handleGetPageFullPath();
165
166 private String __pageFullPath2a;
167 private boolean __pageFullPath2aSet = false;
168
169 /**
170 * TODO: Model Documentation for
171 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.pageFullPath
172 * @return (String)handleGetPageFullPath()
173 */
174 public final String getPageFullPath()
175 {
176 String pageFullPath2a = this.__pageFullPath2a;
177 if (!this.__pageFullPath2aSet)
178 {
179 // pageFullPath has no pre constraints
180 pageFullPath2a = handleGetPageFullPath();
181 // pageFullPath has no post constraints
182 this.__pageFullPath2a = pageFullPath2a;
183 if (isMetafacadePropertyCachingEnabled())
184 {
185 this.__pageFullPath2aSet = true;
186 }
187 }
188 return pageFullPath2a;
189 }
190
191 /**
192 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getPageTitleKey()
193 * @return String
194 */
195 protected abstract String handleGetPageTitleKey();
196
197 private String __pageTitleKey3a;
198 private boolean __pageTitleKey3aSet = false;
199
200 /**
201 * TODO: Model Documentation for
202 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.pageTitleKey
203 * @return (String)handleGetPageTitleKey()
204 */
205 public final String getPageTitleKey()
206 {
207 String pageTitleKey3a = this.__pageTitleKey3a;
208 if (!this.__pageTitleKey3aSet)
209 {
210 // pageTitleKey has no pre constraints
211 pageTitleKey3a = handleGetPageTitleKey();
212 // pageTitleKey has no post constraints
213 this.__pageTitleKey3a = pageTitleKey3a;
214 if (isMetafacadePropertyCachingEnabled())
215 {
216 this.__pageTitleKey3aSet = true;
217 }
218 }
219 return pageTitleKey3a;
220 }
221
222 /**
223 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getPageTitleValue()
224 * @return String
225 */
226 protected abstract String handleGetPageTitleValue();
227
228 private String __pageTitleValue4a;
229 private boolean __pageTitleValue4aSet = false;
230
231 /**
232 * TODO: Model Documentation for
233 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.pageTitleValue
234 * @return (String)handleGetPageTitleValue()
235 */
236 public final String getPageTitleValue()
237 {
238 String pageTitleValue4a = this.__pageTitleValue4a;
239 if (!this.__pageTitleValue4aSet)
240 {
241 // pageTitleValue has no pre constraints
242 pageTitleValue4a = handleGetPageTitleValue();
243 // pageTitleValue has no post constraints
244 this.__pageTitleValue4a = pageTitleValue4a;
245 if (isMetafacadePropertyCachingEnabled())
246 {
247 this.__pageTitleValue4aSet = true;
248 }
249 }
250 return pageTitleValue4a;
251 }
252
253 /**
254 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getListName()
255 * @return String
256 */
257 protected abstract String handleGetListName();
258
259 private String __listName5a;
260 private boolean __listName5aSet = false;
261
262 /**
263 * TODO: Model Documentation for
264 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.listName
265 * @return (String)handleGetListName()
266 */
267 public final String getListName()
268 {
269 String listName5a = this.__listName5a;
270 if (!this.__listName5aSet)
271 {
272 // listName has no pre constraints
273 listName5a = handleGetListName();
274 // listName has no post constraints
275 this.__listName5a = listName5a;
276 if (isMetafacadePropertyCachingEnabled())
277 {
278 this.__listName5aSet = true;
279 }
280 }
281 return listName5a;
282 }
283
284 /**
285 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getFormBeanType()
286 * @return String
287 */
288 protected abstract String handleGetFormBeanType();
289
290 private String __formBeanType6a;
291 private boolean __formBeanType6aSet = false;
292
293 /**
294 * TODO: Model Documentation for
295 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.formBeanType
296 * @return (String)handleGetFormBeanType()
297 */
298 public final String getFormBeanType()
299 {
300 String formBeanType6a = this.__formBeanType6a;
301 if (!this.__formBeanType6aSet)
302 {
303 // formBeanType has no pre constraints
304 formBeanType6a = handleGetFormBeanType();
305 // formBeanType has no post constraints
306 this.__formBeanType6a = formBeanType6a;
307 if (isMetafacadePropertyCachingEnabled())
308 {
309 this.__formBeanType6aSet = true;
310 }
311 }
312 return formBeanType6a;
313 }
314
315 /**
316 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getFormBeanName()
317 * @return String
318 */
319 protected abstract String handleGetFormBeanName();
320
321 private String __formBeanName7a;
322 private boolean __formBeanName7aSet = false;
323
324 /**
325 * TODO: Model Documentation for
326 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.formBeanName
327 * @return (String)handleGetFormBeanName()
328 */
329 public final String getFormBeanName()
330 {
331 String formBeanName7a = this.__formBeanName7a;
332 if (!this.__formBeanName7aSet)
333 {
334 // formBeanName has no pre constraints
335 formBeanName7a = handleGetFormBeanName();
336 // formBeanName has no post constraints
337 this.__formBeanName7a = formBeanName7a;
338 if (isMetafacadePropertyCachingEnabled())
339 {
340 this.__formBeanName7aSet = true;
341 }
342 }
343 return formBeanName7a;
344 }
345
346 /**
347 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getExceptionKey()
348 * @return String
349 */
350 protected abstract String handleGetExceptionKey();
351
352 private String __exceptionKey8a;
353 private boolean __exceptionKey8aSet = false;
354
355 /**
356 * TODO: Model Documentation for
357 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.exceptionKey
358 * @return (String)handleGetExceptionKey()
359 */
360 public final String getExceptionKey()
361 {
362 String exceptionKey8a = this.__exceptionKey8a;
363 if (!this.__exceptionKey8aSet)
364 {
365 // exceptionKey has no pre constraints
366 exceptionKey8a = handleGetExceptionKey();
367 // exceptionKey has no post constraints
368 this.__exceptionKey8a = exceptionKey8a;
369 if (isMetafacadePropertyCachingEnabled())
370 {
371 this.__exceptionKey8aSet = true;
372 }
373 }
374 return exceptionKey8a;
375 }
376
377 /**
378 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getActionType()
379 * @return String
380 */
381 protected abstract String handleGetActionType();
382
383 private String __actionType9a;
384 private boolean __actionType9aSet = false;
385
386 /**
387 * TODO: Model Documentation for
388 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.actionType
389 * @return (String)handleGetActionType()
390 */
391 public final String getActionType()
392 {
393 String actionType9a = this.__actionType9a;
394 if (!this.__actionType9aSet)
395 {
396 // actionType has no pre constraints
397 actionType9a = handleGetActionType();
398 // actionType has no post constraints
399 this.__actionType9a = actionType9a;
400 if (isMetafacadePropertyCachingEnabled())
401 {
402 this.__actionType9aSet = true;
403 }
404 }
405 return actionType9a;
406 }
407
408 /**
409 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getActionFullPath()
410 * @return String
411 */
412 protected abstract String handleGetActionFullPath();
413
414 private String __actionFullPath10a;
415 private boolean __actionFullPath10aSet = false;
416
417 /**
418 * TODO: Model Documentation for
419 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.actionFullPath
420 * @return (String)handleGetActionFullPath()
421 */
422 public final String getActionFullPath()
423 {
424 String actionFullPath10a = this.__actionFullPath10a;
425 if (!this.__actionFullPath10aSet)
426 {
427 // actionFullPath has no pre constraints
428 actionFullPath10a = handleGetActionFullPath();
429 // actionFullPath has no post constraints
430 this.__actionFullPath10a = actionFullPath10a;
431 if (isMetafacadePropertyCachingEnabled())
432 {
433 this.__actionFullPath10aSet = true;
434 }
435 }
436 return actionFullPath10a;
437 }
438
439 /**
440 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getActionPath()
441 * @return String
442 */
443 protected abstract String handleGetActionPath();
444
445 private String __actionPath11a;
446 private boolean __actionPath11aSet = false;
447
448 /**
449 * TODO: Model Documentation for
450 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.actionPath
451 * @return (String)handleGetActionPath()
452 */
453 public final String getActionPath()
454 {
455 String actionPath11a = this.__actionPath11a;
456 if (!this.__actionPath11aSet)
457 {
458 // actionPath has no pre constraints
459 actionPath11a = handleGetActionPath();
460 // actionPath has no post constraints
461 this.__actionPath11a = actionPath11a;
462 if (isMetafacadePropertyCachingEnabled())
463 {
464 this.__actionPath11aSet = true;
465 }
466 }
467 return actionPath11a;
468 }
469
470 /**
471 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getActionClassName()
472 * @return String
473 */
474 protected abstract String handleGetActionClassName();
475
476 private String __actionClassName12a;
477 private boolean __actionClassName12aSet = false;
478
479 /**
480 * TODO: Model Documentation for
481 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.actionClassName
482 * @return (String)handleGetActionClassName()
483 */
484 public final String getActionClassName()
485 {
486 String actionClassName12a = this.__actionClassName12a;
487 if (!this.__actionClassName12aSet)
488 {
489 // actionClassName has no pre constraints
490 actionClassName12a = handleGetActionClassName();
491 // actionClassName has no post constraints
492 this.__actionClassName12a = actionClassName12a;
493 if (isMetafacadePropertyCachingEnabled())
494 {
495 this.__actionClassName12aSet = true;
496 }
497 }
498 return actionClassName12a;
499 }
500
501 /**
502 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getExceptionPath()
503 * @return String
504 */
505 protected abstract String handleGetExceptionPath();
506
507 private String __exceptionPath13a;
508 private boolean __exceptionPath13aSet = false;
509
510 /**
511 * TODO: Model Documentation for
512 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.exceptionPath
513 * @return (String)handleGetExceptionPath()
514 */
515 public final String getExceptionPath()
516 {
517 String exceptionPath13a = this.__exceptionPath13a;
518 if (!this.__exceptionPath13aSet)
519 {
520 // exceptionPath has no pre constraints
521 exceptionPath13a = handleGetExceptionPath();
522 // exceptionPath has no post constraints
523 this.__exceptionPath13a = exceptionPath13a;
524 if (isMetafacadePropertyCachingEnabled())
525 {
526 this.__exceptionPath13aSet = true;
527 }
528 }
529 return exceptionPath13a;
530 }
531
532 /**
533 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#isPreload()
534 * @return boolean
535 */
536 protected abstract boolean handleIsPreload();
537
538 private boolean __preload14a;
539 private boolean __preload14aSet = false;
540
541 /**
542 * TODO: Model Documentation for
543 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.preload
544 * @return (boolean)handleIsPreload()
545 */
546 public final boolean isPreload()
547 {
548 boolean preload14a = this.__preload14a;
549 if (!this.__preload14aSet)
550 {
551 // preload has no pre constraints
552 preload14a = handleIsPreload();
553 // preload has no post constraints
554 this.__preload14a = preload14a;
555 if (isMetafacadePropertyCachingEnabled())
556 {
557 this.__preload14aSet = true;
558 }
559 }
560 return preload14a;
561 }
562
563 /**
564 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getFormBeanClassName()
565 * @return String
566 */
567 protected abstract String handleGetFormBeanClassName();
568
569 private String __formBeanClassName15a;
570 private boolean __formBeanClassName15aSet = false;
571
572 /**
573 * TODO: Model Documentation for
574 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.formBeanClassName
575 * @return (String)handleGetFormBeanClassName()
576 */
577 public final String getFormBeanClassName()
578 {
579 String formBeanClassName15a = this.__formBeanClassName15a;
580 if (!this.__formBeanClassName15aSet)
581 {
582 // formBeanClassName has no pre constraints
583 formBeanClassName15a = handleGetFormBeanClassName();
584 // formBeanClassName has no post constraints
585 this.__formBeanClassName15a = formBeanClassName15a;
586 if (isMetafacadePropertyCachingEnabled())
587 {
588 this.__formBeanClassName15aSet = true;
589 }
590 }
591 return formBeanClassName15a;
592 }
593
594 /**
595 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getFormBeanFullPath()
596 * @return String
597 */
598 protected abstract String handleGetFormBeanFullPath();
599
600 private String __formBeanFullPath16a;
601 private boolean __formBeanFullPath16aSet = false;
602
603 /**
604 * TODO: Model Documentation for
605 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.formBeanFullPath
606 * @return (String)handleGetFormBeanFullPath()
607 */
608 public final String getFormBeanFullPath()
609 {
610 String formBeanFullPath16a = this.__formBeanFullPath16a;
611 if (!this.__formBeanFullPath16aSet)
612 {
613 // formBeanFullPath has no pre constraints
614 formBeanFullPath16a = handleGetFormBeanFullPath();
615 // formBeanFullPath has no post constraints
616 this.__formBeanFullPath16a = formBeanFullPath16a;
617 if (isMetafacadePropertyCachingEnabled())
618 {
619 this.__formBeanFullPath16aSet = true;
620 }
621 }
622 return formBeanFullPath16a;
623 }
624
625 /**
626 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getListGetterName()
627 * @return String
628 */
629 protected abstract String handleGetListGetterName();
630
631 private String __listGetterName17a;
632 private boolean __listGetterName17aSet = false;
633
634 /**
635 * TODO: Model Documentation for
636 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.listGetterName
637 * @return (String)handleGetListGetterName()
638 */
639 public final String getListGetterName()
640 {
641 String listGetterName17a = this.__listGetterName17a;
642 if (!this.__listGetterName17aSet)
643 {
644 // listGetterName has no pre constraints
645 listGetterName17a = handleGetListGetterName();
646 // listGetterName has no post constraints
647 this.__listGetterName17a = listGetterName17a;
648 if (isMetafacadePropertyCachingEnabled())
649 {
650 this.__listGetterName17aSet = true;
651 }
652 }
653 return listGetterName17a;
654 }
655
656 /**
657 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getListSetterName()
658 * @return String
659 */
660 protected abstract String handleGetListSetterName();
661
662 private String __listSetterName18a;
663 private boolean __listSetterName18aSet = false;
664
665 /**
666 * TODO: Model Documentation for
667 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.listSetterName
668 * @return (String)handleGetListSetterName()
669 */
670 public final String getListSetterName()
671 {
672 String listSetterName18a = this.__listSetterName18a;
673 if (!this.__listSetterName18aSet)
674 {
675 // listSetterName has no pre constraints
676 listSetterName18a = handleGetListSetterName();
677 // listSetterName has no post constraints
678 this.__listSetterName18a = listSetterName18a;
679 if (isMetafacadePropertyCachingEnabled())
680 {
681 this.__listSetterName18aSet = true;
682 }
683 }
684 return listSetterName18a;
685 }
686
687 /**
688 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getMessageKey()
689 * @return String
690 */
691 protected abstract String handleGetMessageKey();
692
693 private String __messageKey19a;
694 private boolean __messageKey19aSet = false;
695
696 /**
697 * TODO: Model Documentation for
698 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.messageKey
699 * @return (String)handleGetMessageKey()
700 */
701 public final String getMessageKey()
702 {
703 String messageKey19a = this.__messageKey19a;
704 if (!this.__messageKey19aSet)
705 {
706 // messageKey has no pre constraints
707 messageKey19a = handleGetMessageKey();
708 // messageKey has no post constraints
709 this.__messageKey19a = messageKey19a;
710 if (isMetafacadePropertyCachingEnabled())
711 {
712 this.__messageKey19aSet = true;
713 }
714 }
715 return messageKey19a;
716 }
717
718 /**
719 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getMessageValue()
720 * @return String
721 */
722 protected abstract String handleGetMessageValue();
723
724 private String __messageValue20a;
725 private boolean __messageValue20aSet = false;
726
727 /**
728 * TODO: Model Documentation for
729 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.messageValue
730 * @return (String)handleGetMessageValue()
731 */
732 public final String getMessageValue()
733 {
734 String messageValue20a = this.__messageValue20a;
735 if (!this.__messageValue20aSet)
736 {
737 // messageValue has no pre constraints
738 messageValue20a = handleGetMessageValue();
739 // messageValue has no post constraints
740 this.__messageValue20a = messageValue20a;
741 if (isMetafacadePropertyCachingEnabled())
742 {
743 this.__messageValue20aSet = true;
744 }
745 }
746 return messageValue20a;
747 }
748
749 /**
750 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getActionParameter()
751 * @return String
752 */
753 protected abstract String handleGetActionParameter();
754
755 private String __actionParameter21a;
756 private boolean __actionParameter21aSet = false;
757
758 /**
759 * TODO: Model Documentation for
760 * org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity.actionParameter
761 * @return (String)handleGetActionParameter()
762 */
763 public final String getActionParameter()
764 {
765 String actionParameter21a = this.__actionParameter21a;
766 if (!this.__actionParameter21aSet)
767 {
768 // actionParameter has no pre constraints
769 actionParameter21a = handleGetActionParameter();
770 // actionParameter has no post constraints
771 this.__actionParameter21a = actionParameter21a;
772 if (isMetafacadePropertyCachingEnabled())
773 {
774 this.__actionParameter21aSet = true;
775 }
776 }
777 return actionParameter21a;
778 }
779
780 /**
781 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getOnlineHelpKey()
782 * @return String
783 */
784 protected abstract String handleGetOnlineHelpKey();
785
786 private String __onlineHelpKey22a;
787 private boolean __onlineHelpKey22aSet = false;
788
789 /**
790 * The key to lookup the online help documentation.
791 * @return (String)handleGetOnlineHelpKey()
792 */
793 public final String getOnlineHelpKey()
794 {
795 String onlineHelpKey22a = this.__onlineHelpKey22a;
796 if (!this.__onlineHelpKey22aSet)
797 {
798 // onlineHelpKey has no pre constraints
799 onlineHelpKey22a = handleGetOnlineHelpKey();
800 // onlineHelpKey has no post constraints
801 this.__onlineHelpKey22a = onlineHelpKey22a;
802 if (isMetafacadePropertyCachingEnabled())
803 {
804 this.__onlineHelpKey22aSet = true;
805 }
806 }
807 return onlineHelpKey22a;
808 }
809
810 /**
811 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getOnlineHelpValue()
812 * @return String
813 */
814 protected abstract String handleGetOnlineHelpValue();
815
816 private String __onlineHelpValue23a;
817 private boolean __onlineHelpValue23aSet = false;
818
819 /**
820 * The online help documentation. The format is HTML without any style.
821 * @return (String)handleGetOnlineHelpValue()
822 */
823 public final String getOnlineHelpValue()
824 {
825 String onlineHelpValue23a = this.__onlineHelpValue23a;
826 if (!this.__onlineHelpValue23aSet)
827 {
828 // onlineHelpValue has no pre constraints
829 onlineHelpValue23a = handleGetOnlineHelpValue();
830 // onlineHelpValue has no post constraints
831 this.__onlineHelpValue23a = onlineHelpValue23a;
832 if (isMetafacadePropertyCachingEnabled())
833 {
834 this.__onlineHelpValue23aSet = true;
835 }
836 }
837 return onlineHelpValue23a;
838 }
839
840 /**
841 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getOnlineHelpActionPath()
842 * @return String
843 */
844 protected abstract String handleGetOnlineHelpActionPath();
845
846 private String __onlineHelpActionPath24a;
847 private boolean __onlineHelpActionPath24aSet = false;
848
849 /**
850 * The full path to this entity's online help action. The returned String does not have a suffix
851 * such as '.do'.
852 * @return (String)handleGetOnlineHelpActionPath()
853 */
854 public final String getOnlineHelpActionPath()
855 {
856 String onlineHelpActionPath24a = this.__onlineHelpActionPath24a;
857 if (!this.__onlineHelpActionPath24aSet)
858 {
859 // onlineHelpActionPath has no pre constraints
860 onlineHelpActionPath24a = handleGetOnlineHelpActionPath();
861 // onlineHelpActionPath has no post constraints
862 this.__onlineHelpActionPath24a = onlineHelpActionPath24a;
863 if (isMetafacadePropertyCachingEnabled())
864 {
865 this.__onlineHelpActionPath24aSet = true;
866 }
867 }
868 return onlineHelpActionPath24a;
869 }
870
871 /**
872 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getOnlineHelpPagePath()
873 * @return String
874 */
875 protected abstract String handleGetOnlineHelpPagePath();
876
877 private String __onlineHelpPagePath25a;
878 private boolean __onlineHelpPagePath25aSet = false;
879
880 /**
881 * The full path to this entitiy's online help page. The returned String does not have a suffix
882 * such as '.jsp'.
883 * @return (String)handleGetOnlineHelpPagePath()
884 */
885 public final String getOnlineHelpPagePath()
886 {
887 String onlineHelpPagePath25a = this.__onlineHelpPagePath25a;
888 if (!this.__onlineHelpPagePath25aSet)
889 {
890 // onlineHelpPagePath has no pre constraints
891 onlineHelpPagePath25a = handleGetOnlineHelpPagePath();
892 // onlineHelpPagePath has no post constraints
893 this.__onlineHelpPagePath25a = onlineHelpPagePath25a;
894 if (isMetafacadePropertyCachingEnabled())
895 {
896 this.__onlineHelpPagePath25aSet = true;
897 }
898 }
899 return onlineHelpPagePath25a;
900 }
901
902 /**
903 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#isTableExportable()
904 * @return boolean
905 */
906 protected abstract boolean handleIsTableExportable();
907
908 private boolean __tableExportable26a;
909 private boolean __tableExportable26aSet = false;
910
911 /**
912 * True if it is possible to export the table data to XML, CSV, PDF or Excel format.
913 * @return (boolean)handleIsTableExportable()
914 */
915 public final boolean isTableExportable()
916 {
917 boolean tableExportable26a = this.__tableExportable26a;
918 if (!this.__tableExportable26aSet)
919 {
920 // tableExportable has no pre constraints
921 tableExportable26a = handleIsTableExportable();
922 // tableExportable has no post constraints
923 this.__tableExportable26a = tableExportable26a;
924 if (isMetafacadePropertyCachingEnabled())
925 {
926 this.__tableExportable26aSet = true;
927 }
928 }
929 return tableExportable26a;
930 }
931
932 /**
933 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getTableExportTypes()
934 * @return String
935 */
936 protected abstract String handleGetTableExportTypes();
937
938 private String __tableExportTypes27a;
939 private boolean __tableExportTypes27aSet = false;
940
941 /**
942 * Tthe available types of export in a single String instance.
943 * @return (String)handleGetTableExportTypes()
944 */
945 public final String getTableExportTypes()
946 {
947 String tableExportTypes27a = this.__tableExportTypes27a;
948 if (!this.__tableExportTypes27aSet)
949 {
950 // tableExportTypes has no pre constraints
951 tableExportTypes27a = handleGetTableExportTypes();
952 // tableExportTypes has no post constraints
953 this.__tableExportTypes27a = tableExportTypes27a;
954 if (isMetafacadePropertyCachingEnabled())
955 {
956 this.__tableExportTypes27aSet = true;
957 }
958 }
959 return tableExportTypes27a;
960 }
961
962 /**
963 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#getTableMaxRows()
964 * @return int
965 */
966 protected abstract int handleGetTableMaxRows();
967
968 private int __tableMaxRows28a;
969 private boolean __tableMaxRows28aSet = false;
970
971 /**
972 * The maximum number of rows to be displayed in the table at the same time. This is also known
973 * as the page size. A value of zero or less will display all data in the same table (therefore
974 * also on the same page).
975 * @return (int)handleGetTableMaxRows()
976 */
977 public final int getTableMaxRows()
978 {
979 int tableMaxRows28a = this.__tableMaxRows28a;
980 if (!this.__tableMaxRows28aSet)
981 {
982 // tableMaxRows has no pre constraints
983 tableMaxRows28a = handleGetTableMaxRows();
984 // tableMaxRows has no post constraints
985 this.__tableMaxRows28a = tableMaxRows28a;
986 if (isMetafacadePropertyCachingEnabled())
987 {
988 this.__tableMaxRows28aSet = true;
989 }
990 }
991 return tableMaxRows28a;
992 }
993
994 /**
995 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#isTableSortable()
996 * @return boolean
997 */
998 protected abstract boolean handleIsTableSortable();
999
1000 private boolean __tableSortable29a;
1001 private boolean __tableSortable29aSet = false;
1002
1003 /**
1004 * True if it is possible to sort the columns of the table.
1005 * @return (boolean)handleIsTableSortable()
1006 */
1007 public final boolean isTableSortable()
1008 {
1009 boolean tableSortable29a = this.__tableSortable29a;
1010 if (!this.__tableSortable29aSet)
1011 {
1012 // tableSortable has no pre constraints
1013 tableSortable29a = handleIsTableSortable();
1014 // tableSortable has no post constraints
1015 this.__tableSortable29a = tableSortable29a;
1016 if (isMetafacadePropertyCachingEnabled())
1017 {
1018 this.__tableSortable29aSet = true;
1019 }
1020 }
1021 return tableSortable29a;
1022 }
1023
1024 /**
1025 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsManageableEntity#isMultipartFormData()
1026 * @return boolean
1027 */
1028 protected abstract boolean handleIsMultipartFormData();
1029
1030 private boolean __multipartFormData30a;
1031 private boolean __multipartFormData30aSet = false;
1032
1033 /**
1034 * True is this action is supposed to be rendered as enctype="multipart/form-data" on the page
1035 * form.
1036 * @return (boolean)handleIsMultipartFormData()
1037 */
1038 public final boolean isMultipartFormData()
1039 {
1040 boolean multipartFormData30a = this.__multipartFormData30a;
1041 if (!this.__multipartFormData30aSet)
1042 {
1043 // multipartFormData has no pre constraints
1044 multipartFormData30a = handleIsMultipartFormData();
1045 // multipartFormData has no post constraints
1046 this.__multipartFormData30a = multipartFormData30a;
1047 if (isMetafacadePropertyCachingEnabled())
1048 {
1049 this.__multipartFormData30aSet = true;
1050 }
1051 }
1052 return multipartFormData30a;
1053 }
1054
1055 /**
1056 * @return true
1057 * @see ManageableEntity
1058 */
1059 public boolean isManageableEntityMetaType()
1060 {
1061 return true;
1062 }
1063
1064 /**
1065 * @return true
1066 * @see org.andromda.metafacades.uml.Entity
1067 */
1068 public boolean isEntityMetaType()
1069 {
1070 return true;
1071 }
1072
1073 /**
1074 * @return true
1075 * @see ClassifierFacade
1076 */
1077 public boolean isClassifierFacadeMetaType()
1078 {
1079 return true;
1080 }
1081
1082 /**
1083 * @return true
1084 * @see GeneralizableElementFacade
1085 */
1086 public boolean isGeneralizableElementFacadeMetaType()
1087 {
1088 return true;
1089 }
1090
1091 /**
1092 * @return true
1093 * @see ModelElementFacade
1094 */
1095 public boolean isModelElementFacadeMetaType()
1096 {
1097 return true;
1098 }
1099
1100 // ----------- delegates to ManageableEntity ------------
1101 /**
1102 * Return the attribute which name matches the parameter
1103 * @see ClassifierFacade#findAttribute(String name)
1104 */
1105 public AttributeFacade findAttribute(String name)
1106 {
1107 return this.getSuperManageableEntity().findAttribute(name);
1108 }
1109
1110 /**
1111 * Those abstraction dependencies for which this classifier is the client.
1112 * @see ClassifierFacade#getAbstractions()
1113 */
1114 public Collection<ClassifierFacade> getAbstractions()
1115 {
1116 return this.getSuperManageableEntity().getAbstractions();
1117 }
1118
1119 /**
1120 * Lists all classes associated to this one and any ancestor classes (through generalization).
1121 * There will be no duplicates. The order of the elements is predictable.
1122 * @see ClassifierFacade#getAllAssociatedClasses()
1123 */
1124 public Collection<ClassifierFacade> getAllAssociatedClasses()
1125 {
1126 return this.getSuperManageableEntity().getAllAssociatedClasses();
1127 }
1128
1129 /**
1130 * A collection containing all 'properties' of the classifier and its ancestors. Properties are
1131 * any attributes and navigable connecting association ends.
1132 * @see ClassifierFacade#getAllProperties()
1133 */
1134 public Collection<ModelElementFacade> getAllProperties()
1135 {
1136 return this.getSuperManageableEntity().getAllProperties();
1137 }
1138
1139 /**
1140 * A collection containing all required and/or read-only 'properties' of the classifier and its
1141 * ancestors. Properties are any attributes and navigable connecting association ends.
1142 * @see ClassifierFacade#getAllRequiredConstructorParameters()
1143 */
1144 public Collection<ModelElementFacade> getAllRequiredConstructorParameters()
1145 {
1146 return this.getSuperManageableEntity().getAllRequiredConstructorParameters();
1147 }
1148
1149 /**
1150 * Gets the array type for this classifier. If this classifier already represents an array, it
1151 * just returns itself.
1152 * @see ClassifierFacade#getArray()
1153 */
1154 public ClassifierFacade getArray()
1155 {
1156 return this.getSuperManageableEntity().getArray();
1157 }
1158
1159 /**
1160 * The name of the classifier as an array.
1161 * @see ClassifierFacade#getArrayName()
1162 */
1163 public String getArrayName()
1164 {
1165 return this.getSuperManageableEntity().getArrayName();
1166 }
1167
1168 /**
1169 * Lists the classes associated to this one, there is no repitition of classes. The order of the
1170 * elements is predictable.
1171 * @see ClassifierFacade#getAssociatedClasses()
1172 */
1173 public Collection<ClassifierFacade> getAssociatedClasses()
1174 {
1175 return this.getSuperManageableEntity().getAssociatedClasses();
1176 }
1177
1178 /**
1179 * Gets the association ends belonging to a classifier.
1180 * @see ClassifierFacade#getAssociationEnds()
1181 */
1182 public List<AssociationEndFacade> getAssociationEnds()
1183 {
1184 return this.getSuperManageableEntity().getAssociationEnds();
1185 }
1186
1187 /**
1188 * Gets the attributes that belong to the classifier.
1189 * @see ClassifierFacade#getAttributes()
1190 */
1191 public List<AttributeFacade> getAttributes()
1192 {
1193 return this.getSuperManageableEntity().getAttributes();
1194 }
1195
1196 /**
1197 * Gets all attributes for the classifier and if 'follow' is true goes up the inheritance
1198 * hierarchy and gets the attributes from the super classes as well.
1199 * @see ClassifierFacade#getAttributes(boolean follow)
1200 */
1201 public List<AttributeFacade> getAttributes(boolean follow)
1202 {
1203 return this.getSuperManageableEntity().getAttributes(follow);
1204 }
1205
1206 /**
1207 * The fully qualified name of the classifier as an array.
1208 * @see ClassifierFacade#getFullyQualifiedArrayName()
1209 */
1210 public String getFullyQualifiedArrayName()
1211 {
1212 return this.getSuperManageableEntity().getFullyQualifiedArrayName();
1213 }
1214
1215 /**
1216 * Returns all those operations that could be implemented at this classifier's level. This means
1217 * the operations owned by this classifier as well as any realized interface's operations
1218 * (recursively) in case this classifier itself is not already an interface, or generalized when
1219 * this classifier is an interface.
1220 * @see ClassifierFacade#getImplementationOperations()
1221 */
1222 public Collection<OperationFacade> getImplementationOperations()
1223 {
1224 return this.getSuperManageableEntity().getImplementationOperations();
1225 }
1226
1227 /**
1228 * A comma separated list of the fully qualified names of all implemented interfaces.
1229 * @see ClassifierFacade#getImplementedInterfaceList()
1230 */
1231 public String getImplementedInterfaceList()
1232 {
1233 return this.getSuperManageableEntity().getImplementedInterfaceList();
1234 }
1235
1236 /**
1237 * Those attributes that are scoped to an instance of this class.
1238 * @see ClassifierFacade#getInstanceAttributes()
1239 */
1240 public Collection<AttributeFacade> getInstanceAttributes()
1241 {
1242 return this.getSuperManageableEntity().getInstanceAttributes();
1243 }
1244
1245 /**
1246 * Those operations that are scoped to an instance of this class.
1247 * @see ClassifierFacade#getInstanceOperations()
1248 */
1249 public List<OperationFacade> getInstanceOperations()
1250 {
1251 return this.getSuperManageableEntity().getInstanceOperations();
1252 }
1253
1254 /**
1255 * Those interfaces that are abstractions of this classifier, this basically means this
1256 * classifier realizes them.
1257 * @see ClassifierFacade#getInterfaceAbstractions()
1258 */
1259 public Collection<ClassifierFacade> getInterfaceAbstractions()
1260 {
1261 return this.getSuperManageableEntity().getInterfaceAbstractions();
1262 }
1263
1264 /**
1265 * A String representing a new Constructor declaration for this classifier type to be used in a
1266 * Java environment.
1267 * @see ClassifierFacade#getJavaNewString()
1268 */
1269 public String getJavaNewString()
1270 {
1271 return this.getSuperManageableEntity().getJavaNewString();
1272 }
1273
1274 /**
1275 * A String representing the null-value for this classifier type to be used in a Java
1276 * environment.
1277 * @see ClassifierFacade#getJavaNullString()
1278 */
1279 public String getJavaNullString()
1280 {
1281 return this.getSuperManageableEntity().getJavaNullString();
1282 }
1283
1284 /**
1285 * The other ends of this classifier's association ends which are navigable.
1286 * @see ClassifierFacade#getNavigableConnectingEnds()
1287 */
1288 public Collection<AssociationEndFacade> getNavigableConnectingEnds()
1289 {
1290 return this.getSuperManageableEntity().getNavigableConnectingEnds();
1291 }
1292
1293 /**
1294 * Get the other ends of this classifier's association ends which are navigable and if 'follow'
1295 * is true goes up the inheritance hierarchy and gets the super association ends as well.
1296 * @see ClassifierFacade#getNavigableConnectingEnds(boolean follow)
1297 */
1298 public List<AssociationEndFacade> getNavigableConnectingEnds(boolean follow)
1299 {
1300 return this.getSuperManageableEntity().getNavigableConnectingEnds(follow);
1301 }
1302
1303 /**
1304 * Assuming that the classifier is an array, this will return the non array type of the
1305 * classifier from
1306 * the model. If the classifier is NOT an array, it will just return itself.
1307 * @see ClassifierFacade#getNonArray()
1308 */
1309 public ClassifierFacade getNonArray()
1310 {
1311 return this.getSuperManageableEntity().getNonArray();
1312 }
1313
1314 /**
1315 * The attributes from this classifier in the form of an operation call (this example would be
1316 * in Java): '(String attributeOne, String attributeTwo). If there were no attributes on the
1317 * classifier, the result would be an empty '()'.
1318 * @see ClassifierFacade#getOperationCallFromAttributes()
1319 */
1320 public String getOperationCallFromAttributes()
1321 {
1322 return this.getSuperManageableEntity().getOperationCallFromAttributes();
1323 }
1324
1325 /**
1326 * The operations owned by this classifier.
1327 * @see ClassifierFacade#getOperations()
1328 */
1329 public List<OperationFacade> getOperations()
1330 {
1331 return this.getSuperManageableEntity().getOperations();
1332 }
1333
1334 /**
1335 * A collection containing all 'properties' of the classifier. Properties are any attributes
1336 * and navigable connecting association ends.
1337 * @see ClassifierFacade#getProperties()
1338 */
1339 public List<ModelElementFacade> getProperties()
1340 {
1341 return this.getSuperManageableEntity().getProperties();
1342 }
1343
1344 /**
1345 * Gets all properties (attributes and navigable association ends) for the classifier and if
1346 * 'follow' is true goes up the inheritance hierarchy and gets the properties from the super
1347 * classes as well.
1348 * @see ClassifierFacade#getProperties(boolean follow)
1349 */
1350 public List getProperties(boolean follow)
1351 {
1352 return this.getSuperManageableEntity().getProperties(follow);
1353 }
1354
1355 /**
1356 * A collection containing all required and/or read-only 'properties' of the classifier.
1357 * Properties are any attributes and navigable connecting association ends.
1358 * @see ClassifierFacade#getRequiredConstructorParameters()
1359 */
1360 public Collection<ModelElementFacade> getRequiredConstructorParameters()
1361 {
1362 return this.getSuperManageableEntity().getRequiredConstructorParameters();
1363 }
1364
1365 /**
1366 * Returns the serial version UID of the underlying model element.
1367 * @see ClassifierFacade#getSerialVersionUID()
1368 */
1369 public long getSerialVersionUID()
1370 {
1371 return this.getSuperManageableEntity().getSerialVersionUID();
1372 }
1373
1374 /**
1375 * Those attributes that are scoped to the definition of this class.
1376 * @see ClassifierFacade#getStaticAttributes()
1377 */
1378 public Collection<AttributeFacade> getStaticAttributes()
1379 {
1380 return this.getSuperManageableEntity().getStaticAttributes();
1381 }
1382
1383 /**
1384 * Those operations that are scoped to the definition of this class.
1385 * @see ClassifierFacade#getStaticOperations()
1386 */
1387 public List<OperationFacade> getStaticOperations()
1388 {
1389 return this.getSuperManageableEntity().getStaticOperations();
1390 }
1391
1392 /**
1393 * This class' superclass, returns the generalization if it is a ClassifierFacade, null
1394 * otherwise.
1395 * @see ClassifierFacade#getSuperClass()
1396 */
1397 public ClassifierFacade getSuperClass()
1398 {
1399 return this.getSuperManageableEntity().getSuperClass();
1400 }
1401
1402 /**
1403 * The wrapper name for this classifier if a mapped type has a defined wrapper class (ie. 'long'
1404 * maps to 'Long'). If the classifier doesn't have a wrapper defined for it, this method will
1405 * return a null. Note that wrapper mappings must be defined for the namespace by defining the
1406 * 'wrapperMappingsUri', this property must point to the location of the mappings file which
1407 * maps the primitives to wrapper types.
1408 * @see ClassifierFacade#getWrapperName()
1409 */
1410 public String getWrapperName()
1411 {
1412 return this.getSuperManageableEntity().getWrapperName();
1413 }
1414
1415 /**
1416 * Indicates if this classifier is 'abstract'.
1417 * @see ClassifierFacade#isAbstract()
1418 */
1419 public boolean isAbstract()
1420 {
1421 return this.getSuperManageableEntity().isAbstract();
1422 }
1423
1424 /**
1425 * True if this classifier represents an array type. False otherwise.
1426 * @see ClassifierFacade#isArrayType()
1427 */
1428 public boolean isArrayType()
1429 {
1430 return this.getSuperManageableEntity().isArrayType();
1431 }
1432
1433 /**
1434 * True if the ClassifierFacade is an AssociationClass.
1435 * @see ClassifierFacade#isAssociationClass()
1436 */
1437 public boolean isAssociationClass()
1438 {
1439 return this.getSuperManageableEntity().isAssociationClass();
1440 }
1441
1442 /**
1443 * Returns true if this type represents a Blob type.
1444 * @see ClassifierFacade#isBlobType()
1445 */
1446 public boolean isBlobType()
1447 {
1448 return this.getSuperManageableEntity().isBlobType();
1449 }
1450
1451 /**
1452 * Indicates if this type represents a boolean type or not.
1453 * @see ClassifierFacade#isBooleanType()
1454 */
1455 public boolean isBooleanType()
1456 {
1457 return this.getSuperManageableEntity().isBooleanType();
1458 }
1459
1460 /**
1461 * Indicates if this type represents a char, Character, or java.lang.Character type or not.
1462 * @see ClassifierFacade#isCharacterType()
1463 */
1464 public boolean isCharacterType()
1465 {
1466 return this.getSuperManageableEntity().isCharacterType();
1467 }
1468
1469 /**
1470 * Returns true if this type represents a Clob type.
1471 * @see ClassifierFacade#isClobType()
1472 */
1473 public boolean isClobType()
1474 {
1475 return this.getSuperManageableEntity().isClobType();
1476 }
1477
1478 /**
1479 * True if this classifier represents a collection type. False otherwise.
1480 * @see ClassifierFacade#isCollectionType()
1481 */
1482 public boolean isCollectionType()
1483 {
1484 return this.getSuperManageableEntity().isCollectionType();
1485 }
1486
1487 /**
1488 * True/false depending on whether or not this classifier represents a datatype. A data type is
1489 * a type whose instances are identified only by their value. A data type may contain attributes
1490 * to support the modeling of structured data types.
1491 * @see ClassifierFacade#isDataType()
1492 */
1493 public boolean isDataType()
1494 {
1495 return this.getSuperManageableEntity().isDataType();
1496 }
1497
1498 /**
1499 * True when this classifier is a date type.
1500 * @see ClassifierFacade#isDateType()
1501 */
1502 public boolean isDateType()
1503 {
1504 return this.getSuperManageableEntity().isDateType();
1505 }
1506
1507 /**
1508 * Indicates if this type represents a Double type or not.
1509 * @see ClassifierFacade#isDoubleType()
1510 */
1511 public boolean isDoubleType()
1512 {
1513 return this.getSuperManageableEntity().isDoubleType();
1514 }
1515
1516 /**
1517 * Indicates whether or not this classifier represents an "EmbeddedValue'.
1518 * @see ClassifierFacade#isEmbeddedValue()
1519 */
1520 public boolean isEmbeddedValue()
1521 {
1522 return this.getSuperManageableEntity().isEmbeddedValue();
1523 }
1524
1525 /**
1526 * True if this classifier is in fact marked as an enumeration.
1527 * @see ClassifierFacade#isEnumeration()
1528 */
1529 public boolean isEnumeration()
1530 {
1531 return this.getSuperManageableEntity().isEnumeration();
1532 }
1533
1534 /**
1535 * Returns true if this type represents a 'file' type.
1536 * @see ClassifierFacade#isFileType()
1537 */
1538 public boolean isFileType()
1539 {
1540 return this.getSuperManageableEntity().isFileType();
1541 }
1542
1543 /**
1544 * Indicates if this type represents a Float type or not.
1545 * @see ClassifierFacade#isFloatType()
1546 */
1547 public boolean isFloatType()
1548 {
1549 return this.getSuperManageableEntity().isFloatType();
1550 }
1551
1552 /**
1553 * Indicates if this type represents an int or Integer or java.lang.Integer type or not.
1554 * @see ClassifierFacade#isIntegerType()
1555 */
1556 public boolean isIntegerType()
1557 {
1558 return this.getSuperManageableEntity().isIntegerType();
1559 }
1560
1561 /**
1562 * True/false depending on whether or not this Classifier represents an interface.
1563 * @see ClassifierFacade#isInterface()
1564 */
1565 public boolean isInterface()
1566 {
1567 return this.getSuperManageableEntity().isInterface();
1568 }
1569
1570 /**
1571 * True if this classifier cannot be extended and represent a leaf in the inheritance tree.
1572 * @see ClassifierFacade#isLeaf()
1573 */
1574 public boolean isLeaf()
1575 {
1576 return this.getSuperManageableEntity().isLeaf();
1577 }
1578
1579 /**
1580 * True if this classifier represents a list type. False otherwise.
1581 * @see ClassifierFacade#isListType()
1582 */
1583 public boolean isListType()
1584 {
1585 return this.getSuperManageableEntity().isListType();
1586 }
1587
1588 /**
1589 * Indicates if this type represents a Long type or not.
1590 * @see ClassifierFacade#isLongType()
1591 */
1592 public boolean isLongType()
1593 {
1594 return this.getSuperManageableEntity().isLongType();
1595 }
1596
1597 /**
1598 * Indicates whether or not this classifier represents a Map type.
1599 * @see ClassifierFacade#isMapType()
1600 */
1601 public boolean isMapType()
1602 {
1603 return this.getSuperManageableEntity().isMapType();
1604 }
1605
1606 /**
1607 * Indicates whether or not this classifier represents a primitive type.
1608 * @see ClassifierFacade#isPrimitive()
1609 */
1610 public boolean isPrimitive()
1611 {
1612 return this.getSuperManageableEntity().isPrimitive();
1613 }
1614
1615 /**
1616 * True if this classifier represents a set type. False otherwise.
1617 * @see ClassifierFacade#isSetType()
1618 */
1619 public boolean isSetType()
1620 {
1621 return this.getSuperManageableEntity().isSetType();
1622 }
1623
1624 /**
1625 * Indicates whether or not this classifier represents a string type.
1626 * @see ClassifierFacade#isStringType()
1627 */
1628 public boolean isStringType()
1629 {
1630 return this.getSuperManageableEntity().isStringType();
1631 }
1632
1633 /**
1634 * Indicates whether or not this classifier represents a time type.
1635 * @see ClassifierFacade#isTimeType()
1636 */
1637 public boolean isTimeType()
1638 {
1639 return this.getSuperManageableEntity().isTimeType();
1640 }
1641
1642 /**
1643 * Returns true if this type is a wrapped primitive type.
1644 * @see ClassifierFacade#isWrappedPrimitive()
1645 */
1646 public boolean isWrappedPrimitive()
1647 {
1648 return this.getSuperManageableEntity().isWrappedPrimitive();
1649 }
1650
1651 /**
1652 * Returns a collection of all entities this entity and its ancestors have a relation to.
1653 * @see org.andromda.metafacades.uml.Entity#getAllEntityReferences()
1654 */
1655 public Collection<DependencyFacade> getAllEntityReferences()
1656 {
1657 return this.getSuperManageableEntity().getAllEntityReferences();
1658 }
1659
1660 /**
1661 * Gets a comma separated list of attribute names. If 'follow' is true, will travel up the
1662 * inheritance hiearchy to include attributes in parent entities as well. If 'withIdentifiers'
1663 * is true, will include identifiers.
1664 * @see org.andromda.metafacades.uml.Entity#getAttributeNameList(boolean follow, boolean withIdentifiers)
1665 */
1666 public String getAttributeNameList(boolean follow, boolean withIdentifiers)
1667 {
1668 return this.getSuperManageableEntity().getAttributeNameList(follow, withIdentifiers);
1669 }
1670
1671 /**
1672 * Gets a comma separated list of attribute names. If 'follow' is true, will travel up the
1673 * inheritance hiearchy to include attributes in parent entities as well. If 'withIdentifiers'
1674 * is true, will include identifiers and if 'withDerived' is set to true, will include derived
1675 * attributes.
1676 * @see org.andromda.metafacades.uml.Entity#getAttributeNameList(boolean follow, boolean withIdentifiers, boolean withDerived)
1677 */
1678 public String getAttributeNameList(boolean follow, boolean withIdentifiers, boolean withDerived)
1679 {
1680 return this.getSuperManageableEntity().getAttributeNameList(follow, withIdentifiers, withDerived);
1681 }
1682
1683 /**
1684 * Gets a comma separated list of attribute types. If 'follow' is true, will travel up the
1685 * inheritance hierarchy to include attributes in parent entities as well. If 'withIdentifiers'
1686 * is true, will include identifiers.
1687 * @see org.andromda.metafacades.uml.Entity#getAttributeTypeList(boolean follow, boolean withIdentifiers)
1688 */
1689 public String getAttributeTypeList(boolean follow, boolean withIdentifiers)
1690 {
1691 return this.getSuperManageableEntity().getAttributeTypeList(follow, withIdentifiers);
1692 }
1693
1694 /**
1695 * Gets all attributes of the entity, and optionally retieves the super entities attributes as
1696 * well as excludes the entity's identifiers if 'withIdentifiers' is set to false.
1697 * @see org.andromda.metafacades.uml.Entity#getAttributes(boolean follow, boolean withIdentifiers)
1698 */
1699 public Collection<AttributeFacade> getAttributes(boolean follow, boolean withIdentifiers)
1700 {
1701 return this.getSuperManageableEntity().getAttributes(follow, withIdentifiers);
1702 }
1703
1704 /**
1705 * Gets all attributes of the entity, and optionally retieves the super entities attributes as
1706 * well as excludes the entity's identifiers if 'withIdentifiers' is set to false and exclude
1707 * derived attributes if 'withDerived' is set to false.
1708 * @see org.andromda.metafacades.uml.Entity#getAttributes(boolean follow, boolean withIdentifiers, boolean withDerived)
1709 */
1710 public Collection<AttributeFacade> getAttributes(boolean follow, boolean withIdentifiers, boolean withDerived)
1711 {
1712 return this.getSuperManageableEntity().getAttributes(follow, withIdentifiers, withDerived);
1713 }
1714
1715 /**
1716 * All business operations of the entity, these include any operations that aren't queries.
1717 * @see org.andromda.metafacades.uml.Entity#getBusinessOperations()
1718 */
1719 public Collection<OperationFacade> getBusinessOperations()
1720 {
1721 return this.getSuperManageableEntity().getBusinessOperations();
1722 }
1723
1724 /**
1725 * Gets any children association ends (i.e. entity association ends that are participants in an
1726 * association with this entity and this entity has composite aggregation defined for those
1727 * associations).
1728 * @see org.andromda.metafacades.uml.Entity#getChildEnds()
1729 */
1730 public Collection<EntityAssociationEnd> getChildEnds()
1731 {
1732 return this.getSuperManageableEntity().getChildEnds();
1733 }
1734
1735 /**
1736 * The embedded values belonging to this entity.
1737 * @see org.andromda.metafacades.uml.Entity#getEmbeddedValues()
1738 */
1739 public Collection<AttributeFacade> getEmbeddedValues()
1740 {
1741 return this.getSuperManageableEntity().getEmbeddedValues();
1742 }
1743
1744 /**
1745 * All entities referenced by this entity.
1746 * @see org.andromda.metafacades.uml.Entity#getEntityReferences()
1747 */
1748 public Collection<DependencyFacade> getEntityReferences()
1749 {
1750 return this.getSuperManageableEntity().getEntityReferences();
1751 }
1752
1753 /**
1754 * The full name of the type of the identifier. If composite identifier add the PK sufix to the
1755 * class name. If not, retorns the fully qualified name of the identifier.
1756 * @see org.andromda.metafacades.uml.Entity#getFullyQualifiedIdentifierTypeName()
1757 */
1758 public String getFullyQualifiedIdentifierTypeName()
1759 {
1760 return this.getSuperManageableEntity().getFullyQualifiedIdentifierTypeName();
1761 }
1762
1763 /**
1764 * Gets all the associationEnds of this entity marked with the identifiers stereotype.
1765 * @see org.andromda.metafacades.uml.Entity#getIdentifierAssociationEnds()
1766 */
1767 public Collection<AssociationEndFacade> getIdentifierAssociationEnds()
1768 {
1769 return this.getSuperManageableEntity().getIdentifierAssociationEnds();
1770 }
1771
1772 /**
1773 * The getter name of the identifier.
1774 * @see org.andromda.metafacades.uml.Entity#getIdentifierGetterName()
1775 */
1776 public String getIdentifierGetterName()
1777 {
1778 return this.getSuperManageableEntity().getIdentifierGetterName();
1779 }
1780
1781 /**
1782 * The name of the identifier. If composite identifier add the Pk suffix. If not composite
1783 * returns the attribute name of the identifier.
1784 * @see org.andromda.metafacades.uml.Entity#getIdentifierName()
1785 */
1786 public String getIdentifierName()
1787 {
1788 return this.getSuperManageableEntity().getIdentifierName();
1789 }
1790
1791 /**
1792 * The setter name of the identifier.
1793 * @see org.andromda.metafacades.uml.Entity#getIdentifierSetterName()
1794 */
1795 public String getIdentifierSetterName()
1796 {
1797 return this.getSuperManageableEntity().getIdentifierSetterName();
1798 }
1799
1800 /**
1801 * The name of the type of the identifier. If composite identifier add the PK suffix to the
1802 * class name. If not, returns the name of the identifier.
1803 * @see org.andromda.metafacades.uml.Entity#getIdentifierTypeName()
1804 */
1805 public String getIdentifierTypeName()
1806 {
1807 return this.getSuperManageableEntity().getIdentifierTypeName();
1808 }
1809
1810 /**
1811 * All the attributes of the entity which make up its identifier (primary key). Will search any
1812 * super classes as well. If no identifiers exist, a default identifier will be created if the
1813 * allowDefaultIdentifiers property is set to true.
1814 * @see org.andromda.metafacades.uml.Entity#getIdentifiers()
1815 */
1816 public Collection<ModelElementFacade> getIdentifiers()
1817 {
1818 return this.getSuperManageableEntity().getIdentifiers();
1819 }
1820
1821 /**
1822 * Gets all identifiers for an entity. If 'follow' is true, and if no identifiers can be found
1823 * on the entity, a search up the inheritance chain will be performed, and the identifiers from
1824 * the first super class having them will be used. If no identifiers exist, a default
1825 * identifier will be created if the allowDefaultIdentifiers property is set to true.
1826 * Identifiers can be on attributes or associations (composite primary key).
1827 * @see org.andromda.metafacades.uml.Entity#getIdentifiers(boolean follow)
1828 */
1829 public Collection<ModelElementFacade> getIdentifiers(boolean follow)
1830 {
1831 return this.getSuperManageableEntity().getIdentifiers(follow);
1832 }
1833
1834 /**
1835 * The maximum length a SQL name may be.
1836 * @see org.andromda.metafacades.uml.Entity#getMaxSqlNameLength()
1837 */
1838 public short getMaxSqlNameLength()
1839 {
1840 return this.getSuperManageableEntity().getMaxSqlNameLength();
1841 }
1842
1843 /**
1844 * Gets the attributes as a list within an operation call, optionally including the type names
1845 * and the identifier attributes.
1846 * @see org.andromda.metafacades.uml.Entity#getOperationCallFromAttributes(boolean withIdentifiers)
1847 */
1848 public String getOperationCallFromAttributes(boolean withIdentifiers)
1849 {
1850 return this.getSuperManageableEntity().getOperationCallFromAttributes(withIdentifiers);
1851 }
1852
1853 /**
1854 * Gets the attributes as a list within an operation call. If 'withTypeNames' is true, it will
1855 * include the type names, if 'withIdentifiers' is true it will include the identifiers. If
1856 * 'follow' is true it will follow the inheritance hierarchy and get the attributes of the super
1857 * class as well.
1858 * @see org.andromda.metafacades.uml.Entity#getOperationCallFromAttributes(boolean withIdentifiers, boolean follow)
1859 */
1860 public String getOperationCallFromAttributes(boolean withIdentifiers, boolean follow)
1861 {
1862 return this.getSuperManageableEntity().getOperationCallFromAttributes(withIdentifiers, follow);
1863 }
1864
1865 /**
1866 * Returns the parent association end of this entity if its a child entity. The parent is the
1867 * entity that is the participant the association that has composite aggregation defined. Will
1868 * return null if the entity has no parent.
1869 * @see org.andromda.metafacades.uml.Entity#getParentEnd()
1870 */
1871 public EntityAssociationEnd getParentEnd()
1872 {
1873 return this.getSuperManageableEntity().getParentEnd();
1874 }
1875
1876 /**
1877 * Gets all properties of this entity, this includes the attributes and navigable association
1878 * ends of the entity. The 'follow' flag indcates whether or not the inheritance hierarchy
1879 * should be followed when getting all the properties. The 'withIdentifiers' flag indicates
1880 * whether or not identifiers should be included in the collection of properties.
1881 * @see org.andromda.metafacades.uml.Entity#getProperties(boolean follow, boolean withIdentifiers)
1882 */
1883 public Collection<ModelElementFacade> getProperties(boolean follow, boolean withIdentifiers)
1884 {
1885 return this.getSuperManageableEntity().getProperties(follow, withIdentifiers);
1886 }
1887
1888 /**
1889 * Returns all the operations that can perform queries on the entity.
1890 * @see org.andromda.metafacades.uml.Entity#getQueryOperations()
1891 */
1892 public Collection<EntityQueryOperation> getQueryOperations()
1893 {
1894 return this.getSuperManageableEntity().getQueryOperations();
1895 }
1896
1897 /**
1898 * Gets all query operations for an entity. If 'follow' is true, and if no query operations can
1899 * be found on the entity, a search up the inheritance chain will be performed, and the
1900 * identifiers from the first super class having them will be used. If no identifiers exist, a
1901 * default identifier will be created if the allowDefaultIdentifiers property is set to true.
1902 * @see org.andromda.metafacades.uml.Entity#getQueryOperations(boolean follow)
1903 */
1904 public Collection<OperationFacade> getQueryOperations(boolean follow)
1905 {
1906 return this.getSuperManageableEntity().getQueryOperations(follow);
1907 }
1908
1909 /**
1910 * Gets a comma separated list of required attribute names. If 'follow' is true, will travel up
1911 * the inheritance hierarchy to include attributes in parent entities as well. If
1912 * 'withIdentifiers' is true, will include identifiers.
1913 * @see org.andromda.metafacades.uml.Entity#getRequiredAttributeNameList(boolean follow, boolean withIdentifiers)
1914 */
1915 public String getRequiredAttributeNameList(boolean follow, boolean withIdentifiers)
1916 {
1917 return this.getSuperManageableEntity().getRequiredAttributeNameList(follow, withIdentifiers);
1918 }
1919
1920 /**
1921 * Gets a comma separated list of attribute types with are required. If 'follow' is true, will
1922 * travel up the inheritance hierarchy to include attributes in parent entities as well. If
1923 * 'withIdentifiers' is true, will include identifiers.
1924 * @see org.andromda.metafacades.uml.Entity#getRequiredAttributeTypeList(boolean follow, boolean withIdentifiers)
1925 */
1926 public String getRequiredAttributeTypeList(boolean follow, boolean withIdentifiers)
1927 {
1928 return this.getSuperManageableEntity().getRequiredAttributeTypeList(follow, withIdentifiers);
1929 }
1930
1931 /**
1932 * Returns all attributes that are specified as 'required' in the model. If 'follow' is true,
1933 * then required attributes in super classes will also be returned, if false, just the ones
1934 * directly on the entity will be returned. If 'withIdentifiers' is true, the identifiers will
1935 * be include, if false, no identifiers will be included.
1936 * @see org.andromda.metafacades.uml.Entity#getRequiredAttributes(boolean follow, boolean withIdentifiers)
1937 */
1938 public Collection<AttributeFacade> getRequiredAttributes(boolean follow, boolean withIdentifiers)
1939 {
1940 return this.getSuperManageableEntity().getRequiredAttributes(follow, withIdentifiers);
1941 }
1942
1943 /**
1944 * Gets all required properties for this entity. These consist of any required attributes as
1945 * well as navigable associations that are marked as 'required'. If 'follow' is true, then the
1946 * inheritance hierchy will be followed and all required properties from super classes will be
1947 * included as well.
1948 * If 'withIdentifiers' is true, the identifiers will be include, if false, no identifiers will
1949 * be included.
1950 * @see org.andromda.metafacades.uml.Entity#getRequiredProperties(boolean follow, boolean withIdentifiers)
1951 */
1952 public Collection<ModelElementFacade> getRequiredProperties(boolean follow, boolean withIdentifiers)
1953 {
1954 return this.getSuperManageableEntity().getRequiredProperties(follow, withIdentifiers);
1955 }
1956
1957 /**
1958 * Creates a comma separated list of the required property names.
1959 * @see org.andromda.metafacades.uml.Entity#getRequiredPropertyNameList(boolean follow, boolean withIdentifiers)
1960 */
1961 public String getRequiredPropertyNameList(boolean follow, boolean withIdentifiers)
1962 {
1963 return this.getSuperManageableEntity().getRequiredPropertyNameList(follow, withIdentifiers);
1964 }
1965
1966 /**
1967 * A comma separated list of the required property types.
1968 * @see org.andromda.metafacades.uml.Entity#getRequiredPropertyTypeList(boolean follow, boolean withIdentifiers)
1969 */
1970 public String getRequiredPropertyTypeList(boolean follow, boolean withIdentifiers)
1971 {
1972 return this.getSuperManageableEntity().getRequiredPropertyTypeList(follow, withIdentifiers);
1973 }
1974
1975 /**
1976 * The name of the schema that contains the database table
1977 * @see org.andromda.metafacades.uml.Entity#getSchema()
1978 */
1979 public String getSchema()
1980 {
1981 return this.getSuperManageableEntity().getSchema();
1982 }
1983
1984 /**
1985 * The name of the database table to which this entity is persisted.
1986 * @see org.andromda.metafacades.uml.Entity#getTableName()
1987 */
1988 public String getTableName()
1989 {
1990 return this.getSuperManageableEntity().getTableName();
1991 }
1992
1993 /**
1994 * Returns true/false depending on whether or not this entity represetns a child in an
1995 * association (this occurs when this entity is on the opposite end of an assocation end defined
1996 * as composite).
1997 * @see org.andromda.metafacades.uml.Entity#isChild()
1998 */
1999 public boolean isChild()
2000 {
2001 return this.getSuperManageableEntity().isChild();
2002 }
2003
2004 /**
2005 * True if this entity identifier is a composite (consists of multiple key columns, typically
2006 * abstracted into an external composite identifier class)
2007 * @see org.andromda.metafacades.uml.Entity#isCompositeIdentifier()
2008 */
2009 public boolean isCompositeIdentifier()
2010 {
2011 return this.getSuperManageableEntity().isCompositeIdentifier();
2012 }
2013
2014 /**
2015 * True if the entity has its identifiers dynamically added, false otherwise.
2016 * @see org.andromda.metafacades.uml.Entity#isDynamicIdentifiersPresent()
2017 */
2018 public boolean isDynamicIdentifiersPresent()
2019 {
2020 return this.getSuperManageableEntity().isDynamicIdentifiersPresent();
2021 }
2022
2023 /**
2024 * True if the entity has any identifiers defined, false otherwise.
2025 * @see org.andromda.metafacades.uml.Entity#isIdentifiersPresent()
2026 */
2027 public boolean isIdentifiersPresent()
2028 {
2029 return this.getSuperManageableEntity().isIdentifiersPresent();
2030 }
2031
2032 /**
2033 * Indiciates if this entity is using an assigned identifier or not.
2034 * @see org.andromda.metafacades.uml.Entity#isUsingAssignedIdentifier()
2035 */
2036 public boolean isUsingAssignedIdentifier()
2037 {
2038 return this.getSuperManageableEntity().isUsingAssignedIdentifier();
2039 }
2040
2041 /**
2042 * Indicates whether or not this entity is using a foreign identifier as its identifiers. That
2043 * is: the foreignIdentifier flag was set on an incoming association end and the entity is
2044 * therefore using the related foreign parent entity's identifier.
2045 * @see org.andromda.metafacades.uml.Entity#isUsingForeignIdentifier()
2046 */
2047 public boolean isUsingForeignIdentifier()
2048 {
2049 return this.getSuperManageableEntity().isUsingForeignIdentifier();
2050 }
2051
2052 /**
2053 * Finds the tagged value optional searching the entire inheritance hierarchy if 'follow' is set
2054 * to true.
2055 * @see GeneralizableElementFacade#findTaggedValue(String tagName, boolean follow)
2056 */
2057 public Object findTaggedValue(String tagName, boolean follow)
2058 {
2059 return this.getSuperManageableEntity().findTaggedValue(tagName, follow);
2060 }
2061
2062 /**
2063 * All generalizations for this generalizable element, goes up the inheritance tree.
2064 * @see GeneralizableElementFacade#getAllGeneralizations()
2065 */
2066 public Collection<GeneralizableElementFacade> getAllGeneralizations()
2067 {
2068 return this.getSuperManageableEntity().getAllGeneralizations();
2069 }
2070
2071 /**
2072 * All specializations (travels down the inheritance hierarchy).
2073 * @see GeneralizableElementFacade#getAllSpecializations()
2074 */
2075 public Collection<GeneralizableElementFacade> getAllSpecializations()
2076 {
2077 return this.getSuperManageableEntity().getAllSpecializations();
2078 }
2079
2080 /**
2081 * Gets the direct generalization for this generalizable element.
2082 * @see GeneralizableElementFacade#getGeneralization()
2083 */
2084 public GeneralizableElementFacade getGeneralization()
2085 {
2086 return this.getSuperManageableEntity().getGeneralization();
2087 }
2088
2089 /**
2090 * Gets the actual links that this generalization element is part of (it plays either the
2091 * specialization or generalization).
2092 * @see GeneralizableElementFacade#getGeneralizationLinks()
2093 */
2094 public Collection<GeneralizationFacade> getGeneralizationLinks()
2095 {
2096 return this.getSuperManageableEntity().getGeneralizationLinks();
2097 }
2098
2099 /**
2100 * A comma separated list of the fully qualified names of all generalizations.
2101 * @see GeneralizableElementFacade#getGeneralizationList()
2102 */
2103 public String getGeneralizationList()
2104 {
2105 return this.getSuperManageableEntity().getGeneralizationList();
2106 }
2107
2108 /**
2109 * The element found when you recursively follow the generalization path up to the root. If an
2110 * element has no generalization itself will be considered the root.
2111 * @see GeneralizableElementFacade#getGeneralizationRoot()
2112 */
2113 public GeneralizableElementFacade getGeneralizationRoot()
2114 {
2115 return this.getSuperManageableEntity().getGeneralizationRoot();
2116 }
2117
2118 /**
2119 * Return all generalizations (ancestors) from this generalizable element.
2120 * @see GeneralizableElementFacade#getGeneralizations()
2121 */
2122 public Collection<GeneralizableElementFacade> getGeneralizations()
2123 {
2124 return this.getSuperManageableEntity().getGeneralizations();
2125 }
2126
2127 /**
2128 * Gets the direct specializations (i.e. sub elements) for this generalizatble element.
2129 * @see GeneralizableElementFacade#getSpecializations()
2130 */
2131 public Collection<GeneralizableElementFacade> getSpecializations()
2132 {
2133 return this.getSuperManageableEntity().getSpecializations();
2134 }
2135
2136 /**
2137 * All entities to which can be browsed from this entity. Currently this property will simple
2138 * hold all entities, so the value is the same for any arbitrary entity. Hiding entities can be
2139 * done in the presentation tier, for example depending on runtime security information.
2140 * @see ManageableEntity#getAllManageables()
2141 */
2142 public List<ManageableEntity> getAllManageables()
2143 {
2144 return this.getSuperManageableEntity().getAllManageables();
2145 }
2146
2147 /**
2148 * The attribute used as a key link to display values for this entity.
2149 * @see ManageableEntity#getDisplayAttribute()
2150 */
2151 public ManageableEntityAttribute getDisplayAttribute()
2152 {
2153 return this.getSuperManageableEntity().getDisplayAttribute();
2154 }
2155
2156 /**
2157 * The fully qualified service name of the entity.
2158 * @see ManageableEntity#getFullyQualifiedManageableServiceName()
2159 */
2160 public String getFullyQualifiedManageableServiceName()
2161 {
2162 return this.getSuperManageableEntity().getFullyQualifiedManageableServiceName();
2163 }
2164
2165 /**
2166 * The associations to other entities from this entity.
2167 * @see ManageableEntity#getManageableAssociationEnds()
2168 */
2169 public List<ManageableEntityAssociationEnd> getManageableAssociationEnds()
2170 {
2171 return this.getSuperManageableEntity().getManageableAssociationEnds();
2172 }
2173
2174 /**
2175 * Lists the attributes that can be managed for this entity. This feature is particularly
2176 * important when resolving inherited attributes and ids.
2177 * @see ManageableEntity#getManageableAttributes()
2178 */
2179 public List<ManageableEntityAttribute> getManageableAttributes()
2180 {
2181 return this.getSuperManageableEntity().getManageableAttributes();
2182 }
2183
2184 /**
2185 * The identifier used when managing this entity.
2186 * @see ManageableEntity#getManageableIdentifier()
2187 */
2188 public ManageableEntityAttribute getManageableIdentifier()
2189 {
2190 return this.getSuperManageableEntity().getManageableIdentifier();
2191 }
2192
2193 /**
2194 * ManageableAttributes and ManageableAssociationEnds
2195 * @see ManageableEntity#getManageableMembers()
2196 */
2197 public List<ModelElementFacade> getManageableMembers()
2198 {
2199 return this.getSuperManageableEntity().getManageableMembers();
2200 }
2201
2202 /**
2203 * The entity package name.
2204 * @see ManageableEntity#getManageablePackageName()
2205 */
2206 public String getManageablePackageName()
2207 {
2208 return this.getSuperManageableEntity().getManageablePackageName();
2209 }
2210
2211 /**
2212 * The Package path of the Entity
2213 * @see ManageableEntity#getManageablePackagePath()
2214 */
2215 public String getManageablePackagePath()
2216 {
2217 return this.getSuperManageableEntity().getManageablePackagePath();
2218 }
2219
2220 /**
2221 * The entity accessor (getter) call.
2222 * @see ManageableEntity#getManageableServiceAccessorCall()
2223 */
2224 public String getManageableServiceAccessorCall()
2225 {
2226 return this.getSuperManageableEntity().getManageableServiceAccessorCall();
2227 }
2228
2229 /**
2230 * The service full path of the entity.
2231 * @see ManageableEntity#getManageableServiceFullPath()
2232 */
2233 public String getManageableServiceFullPath()
2234 {
2235 return this.getSuperManageableEntity().getManageableServiceFullPath();
2236 }
2237
2238 /**
2239 * The service name of the entity.
2240 * @see ManageableEntity#getManageableServiceName()
2241 */
2242 public String getManageableServiceName()
2243 {
2244 return this.getSuperManageableEntity().getManageableServiceName();
2245 }
2246
2247 /**
2248 * The maximum number of rows to load from the database.
2249 * @see ManageableEntity#getMaximumListSize()
2250 */
2251 public int getMaximumListSize()
2252 {
2253 return this.getSuperManageableEntity().getMaximumListSize();
2254 }
2255
2256 /**
2257 * The maximum number of rows to load from the database.
2258 * @see ManageableEntity#getPageSize()
2259 */
2260 public int getPageSize()
2261 {
2262 return this.getSuperManageableEntity().getPageSize();
2263 }
2264
2265 /**
2266 * Other Manageable Entities which reference this entity.
2267 * @see ManageableEntity#getReferencingManageables()
2268 */
2269 public List<ManageableEntity> getReferencingManageables()
2270 {
2271 return this.getSuperManageableEntity().getReferencingManageables();
2272 }
2273
2274 /**
2275 * The Actors (Roles) which can manage the Entity.
2276 * @see ManageableEntity#getUsers()
2277 */
2278 public List<ActorFacade> getUsers()
2279 {
2280 return this.getSuperManageableEntity().getUsers();
2281 }
2282
2283 /**
2284 * Create a create operation on the entity manager?
2285 * @see ManageableEntity#isCreate()
2286 */
2287 public boolean isCreate()
2288 {
2289 return this.getSuperManageableEntity().isCreate();
2290 }
2291
2292 /**
2293 * Create a delete operation on the entity manager?
2294 * @see ManageableEntity#isDelete()
2295 */
2296 public boolean isDelete()
2297 {
2298 return this.getSuperManageableEntity().isDelete();
2299 }
2300
2301 /**
2302 * True: Entity is manageable.
2303 * @see ManageableEntity#isManageable()
2304 */
2305 public boolean isManageable()
2306 {
2307 return this.getSuperManageableEntity().isManageable();
2308 }
2309
2310 /**
2311 * Create a read operation on the entity manager?
2312 * @see ManageableEntity#isRead()
2313 */
2314 public boolean isRead()
2315 {
2316 return this.getSuperManageableEntity().isRead();
2317 }
2318
2319 /**
2320 * The maximum number of rows to load from the database.
2321 * @see ManageableEntity#isResolveable()
2322 */
2323 public boolean isResolveable()
2324 {
2325 return this.getSuperManageableEntity().isResolveable();
2326 }
2327
2328 /**
2329 * Create an update operation on the entity manager?
2330 * @see ManageableEntity#isUpdate()
2331 */
2332 public boolean isUpdate()
2333 {
2334 return this.getSuperManageableEntity().isUpdate();
2335 }
2336
2337 /**
2338 * Returns a string with the attributes without wrapper types.
2339 * @see ManageableEntity#listManageableMembers(boolean withTypes)
2340 */
2341 public String listManageableMembers(boolean withTypes)
2342 {
2343 return this.getSuperManageableEntity().listManageableMembers(withTypes);
2344 }
2345
2346 /**
2347 * Returns a string with the attributes and wrapper types.
2348 * @see ManageableEntity#listManageableMembersWithWrapperTypes()
2349 */
2350 public String listManageableMembersWithWrapperTypes()
2351 {
2352 return this.getSuperManageableEntity().listManageableMembersWithWrapperTypes();
2353 }
2354
2355 /**
2356 * Copies all tagged values from the given ModelElementFacade to this model element facade.
2357 * @see ModelElementFacade#copyTaggedValues(ModelElementFacade element)
2358 */
2359 public void copyTaggedValues(ModelElementFacade element)
2360 {
2361 this.getSuperManageableEntity().copyTaggedValues(element);
2362 }
2363
2364 /**
2365 * Finds the tagged value with the specified 'tagName'. In case there are more values the first
2366 * one found will be returned.
2367 * @see ModelElementFacade#findTaggedValue(String tagName)
2368 */
2369 public Object findTaggedValue(String tagName)
2370 {
2371 return this.getSuperManageableEntity().findTaggedValue(tagName);
2372 }
2373
2374 /**
2375 * Returns all the values for the tagged value with the specified name. The returned collection
2376 * will contains only String instances, or will be empty. Never null.
2377 * @see ModelElementFacade#findTaggedValues(String tagName)
2378 */
2379 public Collection<Object> findTaggedValues(String tagName)
2380 {
2381 return this.getSuperManageableEntity().findTaggedValues(tagName);
2382 }
2383
2384 /**
2385 * Returns the fully qualified name of the model element. The fully qualified name includes
2386 * complete package qualified name of the underlying model element. The templates parameter will
2387 * be replaced by the correct one given the binding relation of the parameter to this element.
2388 * @see ModelElementFacade#getBindedFullyQualifiedName(ModelElementFacade bindedElement)
2389 */
2390 public String getBindedFullyQualifiedName(ModelElementFacade bindedElement)
2391 {
2392 return this.getSuperManageableEntity().getBindedFullyQualifiedName(bindedElement);
2393 }
2394
2395 /**
2396 * Gets all constraints belonging to the model element.
2397 * @see ModelElementFacade#getConstraints()
2398 */
2399 public Collection<ConstraintFacade> getConstraints()
2400 {
2401 return this.getSuperManageableEntity().getConstraints();
2402 }
2403
2404 /**
2405 * Returns the constraints of the argument kind that have been placed onto this model. Typical
2406 * kinds are "inv", "pre" and "post". Other kinds are possible.
2407 * @see ModelElementFacade#getConstraints(String kind)
2408 */
2409 public Collection<ConstraintFacade> getConstraints(String kind)
2410 {
2411 return this.getSuperManageableEntity().getConstraints(kind);
2412 }
2413
2414 /**
2415 * Gets the documentation for the model element, The indent argument is prefixed to each line.
2416 * By default this method wraps lines after 64 characters.
2417 * This method is equivalent to <code>getDocumentation(indent, 64)</code>.
2418 * @see ModelElementFacade#getDocumentation(String indent)
2419 */
2420 public String getDocumentation(String indent)
2421 {
2422 return this.getSuperManageableEntity().getDocumentation(indent);
2423 }
2424
2425 /**
2426 * This method returns the documentation for this model element, with the lines wrapped after
2427 * the specified number of characters, values of less than 1 will indicate no line wrapping is
2428 * required. By default paragraphs are returned as HTML.
2429 * This method is equivalent to <code>getDocumentation(indent, lineLength, true)</code>.
2430 * @see ModelElementFacade#getDocumentation(String indent, int lineLength)
2431 */
2432 public String getDocumentation(String indent, int lineLength)
2433 {
2434 return this.getSuperManageableEntity().getDocumentation(indent, lineLength);
2435 }
2436
2437 /**
2438 * This method returns the documentation for this model element, with the lines wrapped after
2439 * the specified number of characters, values of less than 1 will indicate no line wrapping is
2440 * required. HTML style determines if HTML Escaping is applied.
2441 * @see ModelElementFacade#getDocumentation(String indent, int lineLength, boolean htmlStyle)
2442 */
2443 public String getDocumentation(String indent, int lineLength, boolean htmlStyle)
2444 {
2445 return this.getSuperManageableEntity().getDocumentation(indent, lineLength, htmlStyle);
2446 }
2447
2448 /**
2449 * The fully qualified name of this model element.
2450 * @see ModelElementFacade#getFullyQualifiedName()
2451 */
2452 public String getFullyQualifiedName()
2453 {
2454 return this.getSuperManageableEntity().getFullyQualifiedName();
2455 }
2456
2457 /**
2458 * Returns the fully qualified name of the model element. The fully qualified name includes
2459 * complete package qualified name of the underlying model element. If modelName is true, then
2460 * the original name of the model element (the name contained within the model) will be the name
2461 * returned, otherwise a name from a language mapping will be returned.
2462 * @see ModelElementFacade#getFullyQualifiedName(boolean modelName)
2463 */
2464 public String getFullyQualifiedName(boolean modelName)
2465 {
2466 return this.getSuperManageableEntity().getFullyQualifiedName(modelName);
2467 }
2468
2469 /**
2470 * Returns the fully qualified name as a path, the returned value always starts with out a slash
2471 * '/'.
2472 * @see ModelElementFacade#getFullyQualifiedNamePath()
2473 */
2474 public String getFullyQualifiedNamePath()
2475 {
2476 return this.getSuperManageableEntity().getFullyQualifiedNamePath();
2477 }
2478
2479 /**
2480 * Gets the unique identifier of the underlying model element.
2481 * @see ModelElementFacade#getId()
2482 */
2483 public String getId()
2484 {
2485 return this.getSuperManageableEntity().getId();
2486 }
2487
2488 /**
2489 * UML2: Retrieves the keywords for this element. Used to modify implementation properties which
2490 * are not represented by other properties, i.e. native, transient, volatile, synchronized,
2491 * (added annotations) override, deprecated. Can also be used to suppress compiler warnings:
2492 * (added annotations) unchecked, fallthrough, path, serial, finally, all. Annotations require
2493 * JDK5 compiler level.
2494 * @see ModelElementFacade#getKeywords()
2495 */
2496 public Collection<String> getKeywords()
2497 {
2498 return this.getSuperManageableEntity().getKeywords();
2499 }
2500
2501 /**
2502 * UML2: Retrieves a localized label for this named element.
2503 * @see ModelElementFacade#getLabel()
2504 */
2505 public String getLabel()
2506 {
2507 return this.getSuperManageableEntity().getLabel();
2508 }
2509
2510 /**
2511 * The language mappings that have been set for this model element.
2512 * @see ModelElementFacade#getLanguageMappings()
2513 */
2514 public TypeMappings getLanguageMappings()
2515 {
2516 return this.getSuperManageableEntity().getLanguageMappings();
2517 }
2518
2519 /**
2520 * Return the model containing this model element (multiple models may be loaded and processed
2521 * at the same time).
2522 * @see ModelElementFacade#getModel()
2523 */
2524 public ModelFacade getModel()
2525 {
2526 return this.getSuperManageableEntity().getModel();
2527 }
2528
2529 /**
2530 * The name of the model element.
2531 * @see ModelElementFacade#getName()
2532 */
2533 public String getName()
2534 {
2535 return this.getSuperManageableEntity().getName();
2536 }
2537
2538 /**
2539 * Gets the package to which this model element belongs.
2540 * @see ModelElementFacade#getPackage()
2541 */
2542 public ModelElementFacade getPackage()
2543 {
2544 return this.getSuperManageableEntity().getPackage();
2545 }
2546
2547 /**
2548 * The name of this model element's package.
2549 * @see ModelElementFacade#getPackageName()
2550 */
2551 public String getPackageName()
2552 {
2553 return this.getSuperManageableEntity().getPackageName();
2554 }
2555
2556 /**
2557 * Gets the package name (optionally providing the ability to retrieve the model name and not
2558 * the mapped name).
2559 * @see ModelElementFacade#getPackageName(boolean modelName)
2560 */
2561 public String getPackageName(boolean modelName)
2562 {
2563 return this.getSuperManageableEntity().getPackageName(modelName);
2564 }
2565
2566 /**
2567 * Returns the package as a path, the returned value always starts with out a slash '/'.
2568 * @see ModelElementFacade#getPackagePath()
2569 */
2570 public String getPackagePath()
2571 {
2572 return this.getSuperManageableEntity().getPackagePath();
2573 }
2574
2575 /**
2576 * UML2: Returns the value of the 'Qualified Name' attribute. A name which allows the
2577 * NamedElement to be identified within a hierarchy of nested Namespaces. It is constructed from
2578 * the names of the containing namespaces starting at the root of the hierarchy and ending with
2579 * the name of the NamedElement itself.
2580 * @see ModelElementFacade#getQualifiedName()
2581 */
2582 public String getQualifiedName()
2583 {
2584 return this.getSuperManageableEntity().getQualifiedName();
2585 }
2586
2587 /**
2588 * Gets the root package for the model element.
2589 * @see ModelElementFacade#getRootPackage()
2590 */
2591 public PackageFacade getRootPackage()
2592 {
2593 return this.getSuperManageableEntity().getRootPackage();
2594 }
2595
2596 /**
2597 * Gets the dependencies for which this model element is the source.
2598 * @see ModelElementFacade#getSourceDependencies()
2599 */
2600 public Collection<DependencyFacade> getSourceDependencies()
2601 {
2602 return this.getSuperManageableEntity().getSourceDependencies();
2603 }
2604
2605 /**
2606 * If this model element is the context of an activity graph, this represents that activity
2607 * graph.
2608 * @see ModelElementFacade#getStateMachineContext()
2609 */
2610 public StateMachineFacade getStateMachineContext()
2611 {
2612 return this.getSuperManageableEntity().getStateMachineContext();
2613 }
2614
2615 /**
2616 * The collection of ALL stereotype names for this model element.
2617 * @see ModelElementFacade#getStereotypeNames()
2618 */
2619 public Collection<String> getStereotypeNames()
2620 {
2621 return this.getSuperManageableEntity().getStereotypeNames();
2622 }
2623
2624 /**
2625 * Gets all stereotypes for this model element.
2626 * @see ModelElementFacade#getStereotypes()
2627 */
2628 public Collection<StereotypeFacade> getStereotypes()
2629 {
2630 return this.getSuperManageableEntity().getStereotypes();
2631 }
2632
2633 /**
2634 * Return the TaggedValues associated with this model element, under all stereotypes.
2635 * @see ModelElementFacade#getTaggedValues()
2636 */
2637 public Collection<TaggedValueFacade> getTaggedValues()
2638 {
2639 return this.getSuperManageableEntity().getTaggedValues();
2640 }
2641
2642 /**
2643 * Gets the dependencies for which this model element is the target.
2644 * @see ModelElementFacade#getTargetDependencies()
2645 */
2646 public Collection<DependencyFacade> getTargetDependencies()
2647 {
2648 return this.getSuperManageableEntity().getTargetDependencies();
2649 }
2650
2651 /**
2652 * Get the template parameter for this model element having the parameterName
2653 * @see ModelElementFacade#getTemplateParameter(String parameterName)
2654 */
2655 public Object getTemplateParameter(String parameterName)
2656 {
2657 return this.getSuperManageableEntity().getTemplateParameter(parameterName);
2658 }
2659
2660 /**
2661 * Get the template parameters for this model element
2662 * @see ModelElementFacade#getTemplateParameters()
2663 */
2664 public Collection<TemplateParameterFacade> getTemplateParameters()
2665 {
2666 return this.getSuperManageableEntity().getTemplateParameters();
2667 }
2668
2669 /**
2670 * The visibility (i.e. public, private, protected or package) of the model element, will
2671 * attempt a lookup for these values in the language mappings (if any).
2672 * @see ModelElementFacade#getVisibility()
2673 */
2674 public String getVisibility()
2675 {
2676 return this.getSuperManageableEntity().getVisibility();
2677 }
2678
2679 /**
2680 * Returns true if the model element has the exact stereotype (meaning no stereotype inheritance
2681 * is taken into account when searching for the stereotype), false otherwise.
2682 * @see ModelElementFacade#hasExactStereotype(String stereotypeName)
2683 */
2684 public boolean hasExactStereotype(String stereotypeName)
2685 {
2686 return this.getSuperManageableEntity().hasExactStereotype(stereotypeName);
2687 }
2688
2689 /**
2690 * Does the UML Element contain the named Keyword? Keywords can be separated by space, comma,
2691 * pipe, semicolon, or << >>
2692 * @see ModelElementFacade#hasKeyword(String keywordName)
2693 */
2694 public boolean hasKeyword(String keywordName)
2695 {
2696 return this.getSuperManageableEntity().hasKeyword(keywordName);
2697 }
2698
2699 /**
2700 * Returns true if the model element has the specified stereotype. If the stereotype itself
2701 * does not match, then a search will be made up the stereotype inheritance hierarchy, and if
2702 * one of the stereotype's ancestors has a matching name this method will return true, false
2703 * otherwise.
2704 * For example, if we have a certain stereotype called <<exception>> and a model element has a
2705 * stereotype called <<applicationException>> which extends <<exception>>, when calling this
2706 * method with 'stereotypeName' defined as 'exception' the method would return true since
2707 * <<applicationException>> inherits from <<exception>>. If you want to check if the model
2708 * element has the exact stereotype, then use the method 'hasExactStereotype' instead.
2709 * @see ModelElementFacade#hasStereotype(String stereotypeName)
2710 */
2711 public boolean hasStereotype(String stereotypeName)
2712 {
2713 return this.getSuperManageableEntity().hasStereotype(stereotypeName);
2714 }
2715
2716 /**
2717 * True if there are target dependencies from this element that are instances of BindingFacade.
2718 * Deprecated in UML2: Use TemplateBinding parameters instead of dependencies.
2719 * @see ModelElementFacade#isBindingDependenciesPresent()
2720 */
2721 public boolean isBindingDependenciesPresent()
2722 {
2723 return this.getSuperManageableEntity().isBindingDependenciesPresent();
2724 }
2725
2726 /**
2727 * Indicates if any constraints are present on this model element.
2728 * @see ModelElementFacade#isConstraintsPresent()
2729 */
2730 public boolean isConstraintsPresent()
2731 {
2732 return this.getSuperManageableEntity().isConstraintsPresent();
2733 }
2734
2735 /**
2736 * Indicates if any documentation is present on this model element.
2737 * @see ModelElementFacade#isDocumentationPresent()
2738 */
2739 public boolean isDocumentationPresent()
2740 {
2741 return this.getSuperManageableEntity().isDocumentationPresent();
2742 }
2743
2744 /**
2745 * True if this element name is a reserved word in Java, C#, ANSI or ISO C, C++, JavaScript.
2746 * @see ModelElementFacade#isReservedWord()
2747 */
2748 public boolean isReservedWord()
2749 {
2750 return this.getSuperManageableEntity().isReservedWord();
2751 }
2752
2753 /**
2754 * True is there are template parameters on this model element. For UML2, applies to Class,
2755 * Operation, Property, and Parameter.
2756 * @see ModelElementFacade#isTemplateParametersPresent()
2757 */
2758 public boolean isTemplateParametersPresent()
2759 {
2760 return this.getSuperManageableEntity().isTemplateParametersPresent();
2761 }
2762
2763 /**
2764 * True if this element name is a valid identifier name in Java, C#, ANSI or ISO C, C++,
2765 * JavaScript. Contains no spaces, special characters etc. Constraint always applied on
2766 * Enumerations and Interfaces, optionally applies on other model elements.
2767 * @see ModelElementFacade#isValidIdentifierName()
2768 */
2769 public boolean isValidIdentifierName()
2770 {
2771 return this.getSuperManageableEntity().isValidIdentifierName();
2772 }
2773
2774 /**
2775 * Searches for the constraint with the specified 'name' on this model element, and if found
2776 * translates it using the specified 'translation' from a translation library discovered by the
2777 * framework.
2778 * @see ModelElementFacade#translateConstraint(String name, String translation)
2779 */
2780 public String translateConstraint(String name, String translation)
2781 {
2782 return this.getSuperManageableEntity().translateConstraint(name, translation);
2783 }
2784
2785 /**
2786 * Translates all constraints belonging to this model element with the given 'translation'.
2787 * @see ModelElementFacade#translateConstraints(String translation)
2788 */
2789 public String[] translateConstraints(String translation)
2790 {
2791 return this.getSuperManageableEntity().translateConstraints(translation);
2792 }
2793
2794 /**
2795 * Translates the constraints of the specified 'kind' belonging to this model element.
2796 * @see ModelElementFacade#translateConstraints(String kind, String translation)
2797 */
2798 public String[] translateConstraints(String kind, String translation)
2799 {
2800 return this.getSuperManageableEntity().translateConstraints(kind, translation);
2801 }
2802
2803 /**
2804 * @see org.andromda.core.metafacade.MetafacadeBase#initialize()
2805 */
2806 @Override
2807 public void initialize()
2808 {
2809 this.getSuperManageableEntity().initialize();
2810 }
2811
2812 /**
2813 * @return Object getSuperManageableEntity().getValidationOwner()
2814 * @see org.andromda.core.metafacade.MetafacadeBase#getValidationOwner()
2815 */
2816 @Override
2817 public Object getValidationOwner()
2818 {
2819 Object owner = this.getSuperManageableEntity().getValidationOwner();
2820 return owner;
2821 }
2822
2823 /**
2824 * @return String getSuperManageableEntity().getValidationName()
2825 * @see org.andromda.core.metafacade.MetafacadeBase#getValidationName()
2826 */
2827 @Override
2828 public String getValidationName()
2829 {
2830 String name = this.getSuperManageableEntity().getValidationName();
2831 return name;
2832 }
2833
2834 /**
2835 * @param validationMessages Collection<ModelValidationMessage>
2836 * @see org.andromda.core.metafacade.MetafacadeBase#validateInvariants(Collection validationMessages)
2837 */
2838 @Override
2839 public void validateInvariants(Collection<ModelValidationMessage> validationMessages)
2840 {
2841 this.getSuperManageableEntity().validateInvariants(validationMessages);
2842 }
2843
2844 /**
2845 * The property that stores the name of the metafacade.
2846 */
2847 private static final String NAME_PROPERTY = "name";
2848 private static final String FQNAME_PROPERTY = "fullyQualifiedName";
2849
2850 /**
2851 * @see Object#toString()
2852 */
2853 @Override
2854 public String toString()
2855 {
2856 final StringBuilder toString = new StringBuilder(this.getClass().getName());
2857 toString.append("[");
2858 try
2859 {
2860 toString.append(Introspector.instance().getProperty(this, FQNAME_PROPERTY));
2861 }
2862 catch (final Throwable tryAgain)
2863 {
2864 try
2865 {
2866 toString.append(Introspector.instance().getProperty(this, NAME_PROPERTY));
2867 }
2868 catch (final Throwable ignore)
2869 {
2870 // - just ignore when the metafacade doesn't have a name or fullyQualifiedName property
2871 }
2872 }
2873 toString.append("]");
2874 return toString.toString();
2875 }
2876 }