1 // license-header java merge-point
2 //
3 // Attention: generated code (by MetafacadeLogic.vsl) - do not modify!
4 //
5 package org.andromda.cartridges.jsf2.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.Role;
31 import org.andromda.metafacades.uml.StateMachineFacade;
32 import org.andromda.metafacades.uml.StereotypeFacade;
33 import org.andromda.metafacades.uml.TaggedValueFacade;
34 import org.andromda.metafacades.uml.TemplateParameterFacade;
35 import org.andromda.metafacades.uml.TypeMappings;
36 import org.apache.log4j.Logger;
37
38 /**
39 * TODO: Model Documentation for org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity
40 * MetafacadeLogic for JSFManageableEntity
41 *
42 * @see JSFManageableEntity
43 */
44 public abstract class JSFManageableEntityLogic
45 extends MetafacadeBase
46 implements JSFManageableEntity
47 {
48 /**
49 * The underlying UML object
50 * @see Object
51 */
52 protected Object metaObject;
53
54 /** Create Metafacade implementation instance using the MetafacadeFactory from the context
55 * @param metaObjectIn
56 * @param context
57 */
58 protected JSFManageableEntityLogic(Object metaObjectIn, String context)
59 {
60 super(metaObjectIn, getContext(context));
61 this.superManageableEntity =
62 (ManageableEntity)
63 MetafacadeFactory.getInstance().createFacadeImpl(
64 "org.andromda.metafacades.uml.ManageableEntity",
65 metaObjectIn,
66 getContext(context));
67 this.metaObject = metaObjectIn;
68 }
69
70 /**
71 * The logger instance.
72 */
73 private static final Logger logger = Logger.getLogger(JSFManageableEntityLogic.class);
74
75 /**
76 * Gets the context for this metafacade logic instance.
77 * @param context String. Set to JSFManageableEntity if null
78 * @return context String
79 */
80 private static String getContext(String context)
81 {
82 if (context == null)
83 {
84 context = "org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity";
85 }
86 return context;
87 }
88
89 private ManageableEntity superManageableEntity;
90 private boolean superManageableEntityInitialized = false;
91
92 /**
93 * Gets the ManageableEntity parent instance.
94 * @return this.superManageableEntity ManageableEntity
95 */
96 private ManageableEntity getSuperManageableEntity()
97 {
98 if (!this.superManageableEntityInitialized)
99 {
100 ((MetafacadeBase)this.superManageableEntity).setMetafacadeContext(this.getMetafacadeContext());
101 this.superManageableEntityInitialized = true;
102 }
103 return this.superManageableEntity;
104 }
105
106 /** Reset context only for non-root metafacades
107 * @param context
108 * @see org.andromda.core.metafacade.MetafacadeBase#resetMetafacadeContext(String context)
109 */
110 @Override
111 public void resetMetafacadeContext(String context)
112 {
113 if (!this.contextRoot) // reset context only for non-root metafacades
114 {
115 context = getContext(context); // to have same value as in original constructor call
116 setMetafacadeContext (context);
117 if (this.superManageableEntityInitialized)
118 {
119 ((MetafacadeBase)this.superManageableEntity).resetMetafacadeContext(context);
120 }
121 }
122 }
123
124 /**
125 * @return boolean true always
126 * @see JSFManageableEntity
127 */
128 public boolean isJSFManageableEntityMetaType()
129 {
130 return true;
131 }
132
133 // --------------- attributes ---------------------
134
135 /**
136 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getViewName()
137 * @return String
138 */
139 protected abstract String handleGetViewName();
140
141 private String __viewName1a;
142 private boolean __viewName1aSet = false;
143
144 /**
145 * TODO: Model Documentation for
146 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.viewName
147 * @return (String)handleGetViewName()
148 */
149 public final String getViewName()
150 {
151 String viewName1a = this.__viewName1a;
152 if (!this.__viewName1aSet)
153 {
154 // viewName has no pre constraints
155 viewName1a = handleGetViewName();
156 // viewName has no post constraints
157 this.__viewName1a = viewName1a;
158 if (isMetafacadePropertyCachingEnabled())
159 {
160 this.__viewName1aSet = true;
161 }
162 }
163 return viewName1a;
164 }
165
166 /**
167 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getViewTitleKey()
168 * @return String
169 */
170 protected abstract String handleGetViewTitleKey();
171
172 private String __viewTitleKey2a;
173 private boolean __viewTitleKey2aSet = false;
174
175 /**
176 * TODO: Model Documentation for
177 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.viewTitleKey
178 * @return (String)handleGetViewTitleKey()
179 */
180 public final String getViewTitleKey()
181 {
182 String viewTitleKey2a = this.__viewTitleKey2a;
183 if (!this.__viewTitleKey2aSet)
184 {
185 // viewTitleKey has no pre constraints
186 viewTitleKey2a = handleGetViewTitleKey();
187 // viewTitleKey has no post constraints
188 this.__viewTitleKey2a = viewTitleKey2a;
189 if (isMetafacadePropertyCachingEnabled())
190 {
191 this.__viewTitleKey2aSet = true;
192 }
193 }
194 return viewTitleKey2a;
195 }
196
197 /**
198 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getViewTitleValue()
199 * @return String
200 */
201 protected abstract String handleGetViewTitleValue();
202
203 private String __viewTitleValue3a;
204 private boolean __viewTitleValue3aSet = false;
205
206 /**
207 * TODO: Model Documentation for
208 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.viewTitleValue
209 * @return (String)handleGetViewTitleValue()
210 */
211 public final String getViewTitleValue()
212 {
213 String viewTitleValue3a = this.__viewTitleValue3a;
214 if (!this.__viewTitleValue3aSet)
215 {
216 // viewTitleValue has no pre constraints
217 viewTitleValue3a = handleGetViewTitleValue();
218 // viewTitleValue has no post constraints
219 this.__viewTitleValue3a = viewTitleValue3a;
220 if (isMetafacadePropertyCachingEnabled())
221 {
222 this.__viewTitleValue3aSet = true;
223 }
224 }
225 return viewTitleValue3a;
226 }
227
228 /**
229 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getListName()
230 * @return String
231 */
232 protected abstract String handleGetListName();
233
234 private String __listName4a;
235 private boolean __listName4aSet = false;
236
237 /**
238 * TODO: Model Documentation for
239 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.listName
240 * @return (String)handleGetListName()
241 */
242 public final String getListName()
243 {
244 String listName4a = this.__listName4a;
245 if (!this.__listName4aSet)
246 {
247 // listName has no pre constraints
248 listName4a = handleGetListName();
249 // listName has no post constraints
250 this.__listName4a = listName4a;
251 if (isMetafacadePropertyCachingEnabled())
252 {
253 this.__listName4aSet = true;
254 }
255 }
256 return listName4a;
257 }
258
259 /**
260 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getFormBeanType()
261 * @return String
262 */
263 protected abstract String handleGetFormBeanType();
264
265 private String __formBeanType5a;
266 private boolean __formBeanType5aSet = false;
267
268 /**
269 * TODO: Model Documentation for
270 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.formBeanType
271 * @return (String)handleGetFormBeanType()
272 */
273 public final String getFormBeanType()
274 {
275 String formBeanType5a = this.__formBeanType5a;
276 if (!this.__formBeanType5aSet)
277 {
278 // formBeanType has no pre constraints
279 formBeanType5a = handleGetFormBeanType();
280 // formBeanType has no post constraints
281 this.__formBeanType5a = formBeanType5a;
282 if (isMetafacadePropertyCachingEnabled())
283 {
284 this.__formBeanType5aSet = true;
285 }
286 }
287 return formBeanType5a;
288 }
289
290 /**
291 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getFormBeanName()
292 * @return String
293 */
294 protected abstract String handleGetFormBeanName();
295
296 private String __formBeanName6a;
297 private boolean __formBeanName6aSet = false;
298
299 /**
300 * TODO: Model Documentation for
301 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.formBeanName
302 * @return (String)handleGetFormBeanName()
303 */
304 public final String getFormBeanName()
305 {
306 String formBeanName6a = this.__formBeanName6a;
307 if (!this.__formBeanName6aSet)
308 {
309 // formBeanName has no pre constraints
310 formBeanName6a = handleGetFormBeanName();
311 // formBeanName has no post constraints
312 this.__formBeanName6a = formBeanName6a;
313 if (isMetafacadePropertyCachingEnabled())
314 {
315 this.__formBeanName6aSet = true;
316 }
317 }
318 return formBeanName6a;
319 }
320
321 /**
322 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getExceptionKey()
323 * @return String
324 */
325 protected abstract String handleGetExceptionKey();
326
327 private String __exceptionKey7a;
328 private boolean __exceptionKey7aSet = false;
329
330 /**
331 * TODO: Model Documentation for
332 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.exceptionKey
333 * @return (String)handleGetExceptionKey()
334 */
335 public final String getExceptionKey()
336 {
337 String exceptionKey7a = this.__exceptionKey7a;
338 if (!this.__exceptionKey7aSet)
339 {
340 // exceptionKey has no pre constraints
341 exceptionKey7a = handleGetExceptionKey();
342 // exceptionKey has no post constraints
343 this.__exceptionKey7a = exceptionKey7a;
344 if (isMetafacadePropertyCachingEnabled())
345 {
346 this.__exceptionKey7aSet = true;
347 }
348 }
349 return exceptionKey7a;
350 }
351
352 /**
353 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getActionType()
354 * @return String
355 */
356 protected abstract String handleGetActionType();
357
358 private String __actionType8a;
359 private boolean __actionType8aSet = false;
360
361 /**
362 * The fully qualified name of the action class that execute the manageable actions.
363 * @return (String)handleGetActionType()
364 */
365 public final String getActionType()
366 {
367 String actionType8a = this.__actionType8a;
368 if (!this.__actionType8aSet)
369 {
370 // actionType has no pre constraints
371 actionType8a = handleGetActionType();
372 // actionType has no post constraints
373 this.__actionType8a = actionType8a;
374 if (isMetafacadePropertyCachingEnabled())
375 {
376 this.__actionType8aSet = true;
377 }
378 }
379 return actionType8a;
380 }
381
382 /**
383 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getActionFullPath()
384 * @return String
385 */
386 protected abstract String handleGetActionFullPath();
387
388 private String __actionFullPath9a;
389 private boolean __actionFullPath9aSet = false;
390
391 /**
392 * The fully qualified path to the action class that execute the manageable actions.
393 * @return (String)handleGetActionFullPath()
394 */
395 public final String getActionFullPath()
396 {
397 String actionFullPath9a = this.__actionFullPath9a;
398 if (!this.__actionFullPath9aSet)
399 {
400 // actionFullPath has no pre constraints
401 actionFullPath9a = handleGetActionFullPath();
402 // actionFullPath has no post constraints
403 this.__actionFullPath9a = actionFullPath9a;
404 if (isMetafacadePropertyCachingEnabled())
405 {
406 this.__actionFullPath9aSet = true;
407 }
408 }
409 return actionFullPath9a;
410 }
411
412 /**
413 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getActionPath()
414 * @return String
415 */
416 protected abstract String handleGetActionPath();
417
418 private String __actionPath10a;
419 private boolean __actionPath10aSet = false;
420
421 /**
422 * The path to the action class that execute the manageable actions.
423 * @return (String)handleGetActionPath()
424 */
425 public final String getActionPath()
426 {
427 String actionPath10a = this.__actionPath10a;
428 if (!this.__actionPath10aSet)
429 {
430 // actionPath has no pre constraints
431 actionPath10a = handleGetActionPath();
432 // actionPath has no post constraints
433 this.__actionPath10a = actionPath10a;
434 if (isMetafacadePropertyCachingEnabled())
435 {
436 this.__actionPath10aSet = true;
437 }
438 }
439 return actionPath10a;
440 }
441
442 /**
443 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getActionClassName()
444 * @return String
445 */
446 protected abstract String handleGetActionClassName();
447
448 private String __actionClassName11a;
449 private boolean __actionClassName11aSet = false;
450
451 /**
452 * The name of the action class that executes the manageable actions.
453 * @return (String)handleGetActionClassName()
454 */
455 public final String getActionClassName()
456 {
457 String actionClassName11a = this.__actionClassName11a;
458 if (!this.__actionClassName11aSet)
459 {
460 // actionClassName has no pre constraints
461 actionClassName11a = handleGetActionClassName();
462 // actionClassName has no post constraints
463 this.__actionClassName11a = actionClassName11a;
464 if (isMetafacadePropertyCachingEnabled())
465 {
466 this.__actionClassName11aSet = true;
467 }
468 }
469 return actionClassName11a;
470 }
471
472 /**
473 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getExceptionPath()
474 * @return String
475 */
476 protected abstract String handleGetExceptionPath();
477
478 private String __exceptionPath12a;
479 private boolean __exceptionPath12aSet = false;
480
481 /**
482 * TODO: Model Documentation for
483 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.exceptionPath
484 * @return (String)handleGetExceptionPath()
485 */
486 public final String getExceptionPath()
487 {
488 String exceptionPath12a = this.__exceptionPath12a;
489 if (!this.__exceptionPath12aSet)
490 {
491 // exceptionPath has no pre constraints
492 exceptionPath12a = handleGetExceptionPath();
493 // exceptionPath has no post constraints
494 this.__exceptionPath12a = exceptionPath12a;
495 if (isMetafacadePropertyCachingEnabled())
496 {
497 this.__exceptionPath12aSet = true;
498 }
499 }
500 return exceptionPath12a;
501 }
502
503 /**
504 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#isPreload()
505 * @return boolean
506 */
507 protected abstract boolean handleIsPreload();
508
509 private boolean __preload13a;
510 private boolean __preload13aSet = false;
511
512 /**
513 * TODO: Model Documentation for
514 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.preload
515 * @return (boolean)handleIsPreload()
516 */
517 public final boolean isPreload()
518 {
519 boolean preload13a = this.__preload13a;
520 if (!this.__preload13aSet)
521 {
522 // preload has no pre constraints
523 preload13a = handleIsPreload();
524 // preload has no post constraints
525 this.__preload13a = preload13a;
526 if (isMetafacadePropertyCachingEnabled())
527 {
528 this.__preload13aSet = true;
529 }
530 }
531 return preload13a;
532 }
533
534 /**
535 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getFormBeanClassName()
536 * @return String
537 */
538 protected abstract String handleGetFormBeanClassName();
539
540 private String __formBeanClassName14a;
541 private boolean __formBeanClassName14aSet = false;
542
543 /**
544 * TODO: Model Documentation for
545 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.formBeanClassName
546 * @return (String)handleGetFormBeanClassName()
547 */
548 public final String getFormBeanClassName()
549 {
550 String formBeanClassName14a = this.__formBeanClassName14a;
551 if (!this.__formBeanClassName14aSet)
552 {
553 // formBeanClassName has no pre constraints
554 formBeanClassName14a = handleGetFormBeanClassName();
555 // formBeanClassName has no post constraints
556 this.__formBeanClassName14a = formBeanClassName14a;
557 if (isMetafacadePropertyCachingEnabled())
558 {
559 this.__formBeanClassName14aSet = true;
560 }
561 }
562 return formBeanClassName14a;
563 }
564
565 /**
566 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getFormBeanFullPath()
567 * @return String
568 */
569 protected abstract String handleGetFormBeanFullPath();
570
571 private String __formBeanFullPath15a;
572 private boolean __formBeanFullPath15aSet = false;
573
574 /**
575 * TODO: Model Documentation for
576 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.formBeanFullPath
577 * @return (String)handleGetFormBeanFullPath()
578 */
579 public final String getFormBeanFullPath()
580 {
581 String formBeanFullPath15a = this.__formBeanFullPath15a;
582 if (!this.__formBeanFullPath15aSet)
583 {
584 // formBeanFullPath has no pre constraints
585 formBeanFullPath15a = handleGetFormBeanFullPath();
586 // formBeanFullPath has no post constraints
587 this.__formBeanFullPath15a = formBeanFullPath15a;
588 if (isMetafacadePropertyCachingEnabled())
589 {
590 this.__formBeanFullPath15aSet = true;
591 }
592 }
593 return formBeanFullPath15a;
594 }
595
596 /**
597 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getListGetterName()
598 * @return String
599 */
600 protected abstract String handleGetListGetterName();
601
602 private String __listGetterName16a;
603 private boolean __listGetterName16aSet = false;
604
605 /**
606 * TODO: Model Documentation for
607 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.listGetterName
608 * @return (String)handleGetListGetterName()
609 */
610 public final String getListGetterName()
611 {
612 String listGetterName16a = this.__listGetterName16a;
613 if (!this.__listGetterName16aSet)
614 {
615 // listGetterName has no pre constraints
616 listGetterName16a = handleGetListGetterName();
617 // listGetterName has no post constraints
618 this.__listGetterName16a = listGetterName16a;
619 if (isMetafacadePropertyCachingEnabled())
620 {
621 this.__listGetterName16aSet = true;
622 }
623 }
624 return listGetterName16a;
625 }
626
627 /**
628 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getListSetterName()
629 * @return String
630 */
631 protected abstract String handleGetListSetterName();
632
633 private String __listSetterName17a;
634 private boolean __listSetterName17aSet = false;
635
636 /**
637 * TODO: Model Documentation for
638 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.listSetterName
639 * @return (String)handleGetListSetterName()
640 */
641 public final String getListSetterName()
642 {
643 String listSetterName17a = this.__listSetterName17a;
644 if (!this.__listSetterName17aSet)
645 {
646 // listSetterName has no pre constraints
647 listSetterName17a = handleGetListSetterName();
648 // listSetterName has no post constraints
649 this.__listSetterName17a = listSetterName17a;
650 if (isMetafacadePropertyCachingEnabled())
651 {
652 this.__listSetterName17aSet = true;
653 }
654 }
655 return listSetterName17a;
656 }
657
658 /**
659 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getMessageKey()
660 * @return String
661 */
662 protected abstract String handleGetMessageKey();
663
664 private String __messageKey18a;
665 private boolean __messageKey18aSet = false;
666
667 /**
668 * TODO: Model Documentation for
669 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.messageKey
670 * @return (String)handleGetMessageKey()
671 */
672 public final String getMessageKey()
673 {
674 String messageKey18a = this.__messageKey18a;
675 if (!this.__messageKey18aSet)
676 {
677 // messageKey has no pre constraints
678 messageKey18a = handleGetMessageKey();
679 // messageKey has no post constraints
680 this.__messageKey18a = messageKey18a;
681 if (isMetafacadePropertyCachingEnabled())
682 {
683 this.__messageKey18aSet = true;
684 }
685 }
686 return messageKey18a;
687 }
688
689 /**
690 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getMessageValue()
691 * @return String
692 */
693 protected abstract String handleGetMessageValue();
694
695 private String __messageValue19a;
696 private boolean __messageValue19aSet = false;
697
698 /**
699 * TODO: Model Documentation for
700 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.messageValue
701 * @return (String)handleGetMessageValue()
702 */
703 public final String getMessageValue()
704 {
705 String messageValue19a = this.__messageValue19a;
706 if (!this.__messageValue19aSet)
707 {
708 // messageValue has no pre constraints
709 messageValue19a = handleGetMessageValue();
710 // messageValue has no post constraints
711 this.__messageValue19a = messageValue19a;
712 if (isMetafacadePropertyCachingEnabled())
713 {
714 this.__messageValue19aSet = true;
715 }
716 }
717 return messageValue19a;
718 }
719
720 /**
721 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getOnlineHelpKey()
722 * @return String
723 */
724 protected abstract String handleGetOnlineHelpKey();
725
726 private String __onlineHelpKey20a;
727 private boolean __onlineHelpKey20aSet = false;
728
729 /**
730 * The key to lookup the online help documentation.
731 * @return (String)handleGetOnlineHelpKey()
732 */
733 public final String getOnlineHelpKey()
734 {
735 String onlineHelpKey20a = this.__onlineHelpKey20a;
736 if (!this.__onlineHelpKey20aSet)
737 {
738 // onlineHelpKey has no pre constraints
739 onlineHelpKey20a = handleGetOnlineHelpKey();
740 // onlineHelpKey has no post constraints
741 this.__onlineHelpKey20a = onlineHelpKey20a;
742 if (isMetafacadePropertyCachingEnabled())
743 {
744 this.__onlineHelpKey20aSet = true;
745 }
746 }
747 return onlineHelpKey20a;
748 }
749
750 /**
751 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getOnlineHelpValue()
752 * @return String
753 */
754 protected abstract String handleGetOnlineHelpValue();
755
756 private String __onlineHelpValue21a;
757 private boolean __onlineHelpValue21aSet = false;
758
759 /**
760 * The online help documentation. The format is HTML without any style.
761 * @return (String)handleGetOnlineHelpValue()
762 */
763 public final String getOnlineHelpValue()
764 {
765 String onlineHelpValue21a = this.__onlineHelpValue21a;
766 if (!this.__onlineHelpValue21aSet)
767 {
768 // onlineHelpValue has no pre constraints
769 onlineHelpValue21a = handleGetOnlineHelpValue();
770 // onlineHelpValue has no post constraints
771 this.__onlineHelpValue21a = onlineHelpValue21a;
772 if (isMetafacadePropertyCachingEnabled())
773 {
774 this.__onlineHelpValue21aSet = true;
775 }
776 }
777 return onlineHelpValue21a;
778 }
779
780 /**
781 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getOnlineHelpActionPath()
782 * @return String
783 */
784 protected abstract String handleGetOnlineHelpActionPath();
785
786 private String __onlineHelpActionPath22a;
787 private boolean __onlineHelpActionPath22aSet = false;
788
789 /**
790 * The full path to this entity's online help action. The returned String does not have a suffix
791 * such as '.do'.
792 * @return (String)handleGetOnlineHelpActionPath()
793 */
794 public final String getOnlineHelpActionPath()
795 {
796 String onlineHelpActionPath22a = this.__onlineHelpActionPath22a;
797 if (!this.__onlineHelpActionPath22aSet)
798 {
799 // onlineHelpActionPath has no pre constraints
800 onlineHelpActionPath22a = handleGetOnlineHelpActionPath();
801 // onlineHelpActionPath has no post constraints
802 this.__onlineHelpActionPath22a = onlineHelpActionPath22a;
803 if (isMetafacadePropertyCachingEnabled())
804 {
805 this.__onlineHelpActionPath22aSet = true;
806 }
807 }
808 return onlineHelpActionPath22a;
809 }
810
811 /**
812 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getOnlineHelpPagePath()
813 * @return String
814 */
815 protected abstract String handleGetOnlineHelpPagePath();
816
817 private String __onlineHelpPagePath23a;
818 private boolean __onlineHelpPagePath23aSet = false;
819
820 /**
821 * The full path to this entitiy's online help page. The returned String does not have a suffix
822 * such as '.jsp'.
823 * @return (String)handleGetOnlineHelpPagePath()
824 */
825 public final String getOnlineHelpPagePath()
826 {
827 String onlineHelpPagePath23a = this.__onlineHelpPagePath23a;
828 if (!this.__onlineHelpPagePath23aSet)
829 {
830 // onlineHelpPagePath has no pre constraints
831 onlineHelpPagePath23a = handleGetOnlineHelpPagePath();
832 // onlineHelpPagePath has no post constraints
833 this.__onlineHelpPagePath23a = onlineHelpPagePath23a;
834 if (isMetafacadePropertyCachingEnabled())
835 {
836 this.__onlineHelpPagePath23aSet = true;
837 }
838 }
839 return onlineHelpPagePath23a;
840 }
841
842 /**
843 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#isTableExportable()
844 * @return boolean
845 */
846 protected abstract boolean handleIsTableExportable();
847
848 private boolean __tableExportable24a;
849 private boolean __tableExportable24aSet = false;
850
851 /**
852 * True if it is possible to export the table data to XML, CSV, PDF or Excel format.
853 * @return (boolean)handleIsTableExportable()
854 */
855 public final boolean isTableExportable()
856 {
857 boolean tableExportable24a = this.__tableExportable24a;
858 if (!this.__tableExportable24aSet)
859 {
860 // tableExportable has no pre constraints
861 tableExportable24a = handleIsTableExportable();
862 // tableExportable has no post constraints
863 this.__tableExportable24a = tableExportable24a;
864 if (isMetafacadePropertyCachingEnabled())
865 {
866 this.__tableExportable24aSet = true;
867 }
868 }
869 return tableExportable24a;
870 }
871
872 /**
873 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getTableExportTypes()
874 * @return String
875 */
876 protected abstract String handleGetTableExportTypes();
877
878 private String __tableExportTypes25a;
879 private boolean __tableExportTypes25aSet = false;
880
881 /**
882 * Tthe available types of export in a single String instance.
883 * @return (String)handleGetTableExportTypes()
884 */
885 public final String getTableExportTypes()
886 {
887 String tableExportTypes25a = this.__tableExportTypes25a;
888 if (!this.__tableExportTypes25aSet)
889 {
890 // tableExportTypes has no pre constraints
891 tableExportTypes25a = handleGetTableExportTypes();
892 // tableExportTypes has no post constraints
893 this.__tableExportTypes25a = tableExportTypes25a;
894 if (isMetafacadePropertyCachingEnabled())
895 {
896 this.__tableExportTypes25aSet = true;
897 }
898 }
899 return tableExportTypes25a;
900 }
901
902 /**
903 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getTableMaxRows()
904 * @return int
905 */
906 protected abstract int handleGetTableMaxRows();
907
908 private int __tableMaxRows26a;
909 private boolean __tableMaxRows26aSet = false;
910
911 /**
912 * The maximum number of rows to be displayed in the table at the same time. This is also known
913 * as the page size. A value of zero or less will display all data in the same table (therefore
914 * also on the same page).
915 * @return (int)handleGetTableMaxRows()
916 */
917 public final int getTableMaxRows()
918 {
919 int tableMaxRows26a = this.__tableMaxRows26a;
920 if (!this.__tableMaxRows26aSet)
921 {
922 // tableMaxRows has no pre constraints
923 tableMaxRows26a = handleGetTableMaxRows();
924 // tableMaxRows has no post constraints
925 this.__tableMaxRows26a = tableMaxRows26a;
926 if (isMetafacadePropertyCachingEnabled())
927 {
928 this.__tableMaxRows26aSet = true;
929 }
930 }
931 return tableMaxRows26a;
932 }
933
934 /**
935 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#isTableSortable()
936 * @return boolean
937 */
938 protected abstract boolean handleIsTableSortable();
939
940 private boolean __tableSortable27a;
941 private boolean __tableSortable27aSet = false;
942
943 /**
944 * True if it is possible to sort the columns of the table.
945 * @return (boolean)handleIsTableSortable()
946 */
947 public final boolean isTableSortable()
948 {
949 boolean tableSortable27a = this.__tableSortable27a;
950 if (!this.__tableSortable27aSet)
951 {
952 // tableSortable has no pre constraints
953 tableSortable27a = handleIsTableSortable();
954 // tableSortable has no post constraints
955 this.__tableSortable27a = tableSortable27a;
956 if (isMetafacadePropertyCachingEnabled())
957 {
958 this.__tableSortable27aSet = true;
959 }
960 }
961 return tableSortable27a;
962 }
963
964 /**
965 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getControllerType()
966 * @return String
967 */
968 protected abstract String handleGetControllerType();
969
970 private String __controllerType28a;
971 private boolean __controllerType28aSet = false;
972
973 /**
974 * Fully qualified name of this manageable controller.
975 * @return (String)handleGetControllerType()
976 */
977 public final String getControllerType()
978 {
979 String controllerType28a = this.__controllerType28a;
980 if (!this.__controllerType28aSet)
981 {
982 // controllerType has no pre constraints
983 controllerType28a = handleGetControllerType();
984 // controllerType has no post constraints
985 this.__controllerType28a = controllerType28a;
986 if (isMetafacadePropertyCachingEnabled())
987 {
988 this.__controllerType28aSet = true;
989 }
990 }
991 return controllerType28a;
992 }
993
994 /**
995 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getControllerBeanName()
996 * @return String
997 */
998 protected abstract String handleGetControllerBeanName();
999
1000 private String __controllerBeanName29a;
1001 private boolean __controllerBeanName29aSet = false;
1002
1003 /**
1004 * The bean name of this manageable controller (this is what is stored in the JSF configuration
1005 * file).
1006 * @return (String)handleGetControllerBeanName()
1007 */
1008 public final String getControllerBeanName()
1009 {
1010 String controllerBeanName29a = this.__controllerBeanName29a;
1011 if (!this.__controllerBeanName29aSet)
1012 {
1013 // controllerBeanName has no pre constraints
1014 controllerBeanName29a = handleGetControllerBeanName();
1015 // controllerBeanName has no post constraints
1016 this.__controllerBeanName29a = controllerBeanName29a;
1017 if (isMetafacadePropertyCachingEnabled())
1018 {
1019 this.__controllerBeanName29aSet = true;
1020 }
1021 }
1022 return controllerBeanName29a;
1023 }
1024
1025 /**
1026 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getControllerFullPath()
1027 * @return String
1028 */
1029 protected abstract String handleGetControllerFullPath();
1030
1031 private String __controllerFullPath30a;
1032 private boolean __controllerFullPath30aSet = false;
1033
1034 /**
1035 * Full path of this manageable controller.
1036 * @return (String)handleGetControllerFullPath()
1037 */
1038 public final String getControllerFullPath()
1039 {
1040 String controllerFullPath30a = this.__controllerFullPath30a;
1041 if (!this.__controllerFullPath30aSet)
1042 {
1043 // controllerFullPath has no pre constraints
1044 controllerFullPath30a = handleGetControllerFullPath();
1045 // controllerFullPath has no post constraints
1046 this.__controllerFullPath30a = controllerFullPath30a;
1047 if (isMetafacadePropertyCachingEnabled())
1048 {
1049 this.__controllerFullPath30aSet = true;
1050 }
1051 }
1052 return controllerFullPath30a;
1053 }
1054
1055 /**
1056 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getControllerName()
1057 * @return String
1058 */
1059 protected abstract String handleGetControllerName();
1060
1061 private String __controllerName31a;
1062 private boolean __controllerName31aSet = false;
1063
1064 /**
1065 * Manageable controller class name.
1066 * @return (String)handleGetControllerName()
1067 */
1068 public final String getControllerName()
1069 {
1070 String controllerName31a = this.__controllerName31a;
1071 if (!this.__controllerName31aSet)
1072 {
1073 // controllerName has no pre constraints
1074 controllerName31a = handleGetControllerName();
1075 // controllerName has no post constraints
1076 this.__controllerName31a = controllerName31a;
1077 if (isMetafacadePropertyCachingEnabled())
1078 {
1079 this.__controllerName31aSet = true;
1080 }
1081 }
1082 return controllerName31a;
1083 }
1084
1085 /**
1086 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getValueObjectClassName()
1087 * @return String
1088 */
1089 protected abstract String handleGetValueObjectClassName();
1090
1091 private String __valueObjectClassName32a;
1092 private boolean __valueObjectClassName32aSet = false;
1093
1094 /**
1095 * TODO: Model Documentation for
1096 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.valueObjectClassName
1097 * @return (String)handleGetValueObjectClassName()
1098 */
1099 public final String getValueObjectClassName()
1100 {
1101 String valueObjectClassName32a = this.__valueObjectClassName32a;
1102 if (!this.__valueObjectClassName32aSet)
1103 {
1104 // valueObjectClassName has no pre constraints
1105 valueObjectClassName32a = handleGetValueObjectClassName();
1106 // valueObjectClassName has no post constraints
1107 this.__valueObjectClassName32a = valueObjectClassName32a;
1108 if (isMetafacadePropertyCachingEnabled())
1109 {
1110 this.__valueObjectClassName32aSet = true;
1111 }
1112 }
1113 return valueObjectClassName32a;
1114 }
1115
1116 /**
1117 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getFormSerialVersionUID()
1118 * @return String
1119 */
1120 protected abstract String handleGetFormSerialVersionUID();
1121
1122 private String __formSerialVersionUID33a;
1123 private boolean __formSerialVersionUID33aSet = false;
1124
1125 /**
1126 * The calcuated serial version UID for this action's form.
1127 * @return (String)handleGetFormSerialVersionUID()
1128 */
1129 public final String getFormSerialVersionUID()
1130 {
1131 String formSerialVersionUID33a = this.__formSerialVersionUID33a;
1132 if (!this.__formSerialVersionUID33aSet)
1133 {
1134 // formSerialVersionUID has no pre constraints
1135 formSerialVersionUID33a = handleGetFormSerialVersionUID();
1136 // formSerialVersionUID has no post constraints
1137 this.__formSerialVersionUID33a = formSerialVersionUID33a;
1138 if (isMetafacadePropertyCachingEnabled())
1139 {
1140 this.__formSerialVersionUID33aSet = true;
1141 }
1142 }
1143 return formSerialVersionUID33a;
1144 }
1145
1146 /**
1147 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getActionSerialVersionUID()
1148 * @return String
1149 */
1150 protected abstract String handleGetActionSerialVersionUID();
1151
1152 private String __actionSerialVersionUID34a;
1153 private boolean __actionSerialVersionUID34aSet = false;
1154
1155 /**
1156 * The calcuated serial version UID for this manageable actions.
1157 * @return (String)handleGetActionSerialVersionUID()
1158 */
1159 public final String getActionSerialVersionUID()
1160 {
1161 String actionSerialVersionUID34a = this.__actionSerialVersionUID34a;
1162 if (!this.__actionSerialVersionUID34aSet)
1163 {
1164 // actionSerialVersionUID has no pre constraints
1165 actionSerialVersionUID34a = handleGetActionSerialVersionUID();
1166 // actionSerialVersionUID has no post constraints
1167 this.__actionSerialVersionUID34a = actionSerialVersionUID34a;
1168 if (isMetafacadePropertyCachingEnabled())
1169 {
1170 this.__actionSerialVersionUID34aSet = true;
1171 }
1172 }
1173 return actionSerialVersionUID34a;
1174 }
1175
1176 /**
1177 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getPopulatorName()
1178 * @return String
1179 */
1180 protected abstract String handleGetPopulatorName();
1181
1182 private String __populatorName35a;
1183 private boolean __populatorName35aSet = false;
1184
1185 /**
1186 * TODO: Model Documentation for
1187 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.populatorName
1188 * @return (String)handleGetPopulatorName()
1189 */
1190 public final String getPopulatorName()
1191 {
1192 String populatorName35a = this.__populatorName35a;
1193 if (!this.__populatorName35aSet)
1194 {
1195 // populatorName has no pre constraints
1196 populatorName35a = handleGetPopulatorName();
1197 // populatorName has no post constraints
1198 this.__populatorName35a = populatorName35a;
1199 if (isMetafacadePropertyCachingEnabled())
1200 {
1201 this.__populatorName35aSet = true;
1202 }
1203 }
1204 return populatorName35a;
1205 }
1206
1207 /**
1208 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getPopulatorFullPath()
1209 * @return String
1210 */
1211 protected abstract String handleGetPopulatorFullPath();
1212
1213 private String __populatorFullPath36a;
1214 private boolean __populatorFullPath36aSet = false;
1215
1216 /**
1217 * TODO: Model Documentation for
1218 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.populatorFullPath
1219 * @return (String)handleGetPopulatorFullPath()
1220 */
1221 public final String getPopulatorFullPath()
1222 {
1223 String populatorFullPath36a = this.__populatorFullPath36a;
1224 if (!this.__populatorFullPath36aSet)
1225 {
1226 // populatorFullPath has no pre constraints
1227 populatorFullPath36a = handleGetPopulatorFullPath();
1228 // populatorFullPath has no post constraints
1229 this.__populatorFullPath36a = populatorFullPath36a;
1230 if (isMetafacadePropertyCachingEnabled())
1231 {
1232 this.__populatorFullPath36aSet = true;
1233 }
1234 }
1235 return populatorFullPath36a;
1236 }
1237
1238 /**
1239 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getPopulatorType()
1240 * @return String
1241 */
1242 protected abstract String handleGetPopulatorType();
1243
1244 private String __populatorType37a;
1245 private boolean __populatorType37aSet = false;
1246
1247 /**
1248 * TODO: Model Documentation for
1249 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.populatorType
1250 * @return (String)handleGetPopulatorType()
1251 */
1252 public final String getPopulatorType()
1253 {
1254 String populatorType37a = this.__populatorType37a;
1255 if (!this.__populatorType37aSet)
1256 {
1257 // populatorType has no pre constraints
1258 populatorType37a = handleGetPopulatorType();
1259 // populatorType has no post constraints
1260 this.__populatorType37a = populatorType37a;
1261 if (isMetafacadePropertyCachingEnabled())
1262 {
1263 this.__populatorType37aSet = true;
1264 }
1265 }
1266 return populatorType37a;
1267 }
1268
1269 /**
1270 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getViewFullPath()
1271 * @return String
1272 */
1273 protected abstract String handleGetViewFullPath();
1274
1275 private String __viewFullPath38a;
1276 private boolean __viewFullPath38aSet = false;
1277
1278 /**
1279 * TODO: Model Documentation for
1280 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.viewFullPath
1281 * @return (String)handleGetViewFullPath()
1282 */
1283 public final String getViewFullPath()
1284 {
1285 String viewFullPath38a = this.__viewFullPath38a;
1286 if (!this.__viewFullPath38aSet)
1287 {
1288 // viewFullPath has no pre constraints
1289 viewFullPath38a = handleGetViewFullPath();
1290 // viewFullPath has no post constraints
1291 this.__viewFullPath38a = viewFullPath38a;
1292 if (isMetafacadePropertyCachingEnabled())
1293 {
1294 this.__viewFullPath38aSet = true;
1295 }
1296 }
1297 return viewFullPath38a;
1298 }
1299
1300 /**
1301 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#isValidationRequired()
1302 * @return boolean
1303 */
1304 protected abstract boolean handleIsValidationRequired();
1305
1306 private boolean __validationRequired39a;
1307 private boolean __validationRequired39aSet = false;
1308
1309 /**
1310 * TODO: Model Documentation for
1311 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.validationRequired
1312 * @return (boolean)handleIsValidationRequired()
1313 */
1314 public final boolean isValidationRequired()
1315 {
1316 boolean validationRequired39a = this.__validationRequired39a;
1317 if (!this.__validationRequired39aSet)
1318 {
1319 // validationRequired has no pre constraints
1320 validationRequired39a = handleIsValidationRequired();
1321 // validationRequired has no post constraints
1322 this.__validationRequired39a = validationRequired39a;
1323 if (isMetafacadePropertyCachingEnabled())
1324 {
1325 this.__validationRequired39aSet = true;
1326 }
1327 }
1328 return validationRequired39a;
1329 }
1330
1331 /**
1332 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getSearchFormBeanName()
1333 * @return String
1334 */
1335 protected abstract String handleGetSearchFormBeanName();
1336
1337 private String __searchFormBeanName40a;
1338 private boolean __searchFormBeanName40aSet = false;
1339
1340 /**
1341 * TODO: Model Documentation for
1342 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.searchFormBeanName
1343 * @return (String)handleGetSearchFormBeanName()
1344 */
1345 public final String getSearchFormBeanName()
1346 {
1347 String searchFormBeanName40a = this.__searchFormBeanName40a;
1348 if (!this.__searchFormBeanName40aSet)
1349 {
1350 // searchFormBeanName has no pre constraints
1351 searchFormBeanName40a = handleGetSearchFormBeanName();
1352 // searchFormBeanName has no post constraints
1353 this.__searchFormBeanName40a = searchFormBeanName40a;
1354 if (isMetafacadePropertyCachingEnabled())
1355 {
1356 this.__searchFormBeanName40aSet = true;
1357 }
1358 }
1359 return searchFormBeanName40a;
1360 }
1361
1362 /**
1363 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getSearchFormBeanType()
1364 * @return String
1365 */
1366 protected abstract String handleGetSearchFormBeanType();
1367
1368 private String __searchFormBeanType41a;
1369 private boolean __searchFormBeanType41aSet = false;
1370
1371 /**
1372 * TODO: Model Documentation for
1373 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.searchFormBeanType
1374 * @return (String)handleGetSearchFormBeanType()
1375 */
1376 public final String getSearchFormBeanType()
1377 {
1378 String searchFormBeanType41a = this.__searchFormBeanType41a;
1379 if (!this.__searchFormBeanType41aSet)
1380 {
1381 // searchFormBeanType has no pre constraints
1382 searchFormBeanType41a = handleGetSearchFormBeanType();
1383 // searchFormBeanType has no post constraints
1384 this.__searchFormBeanType41a = searchFormBeanType41a;
1385 if (isMetafacadePropertyCachingEnabled())
1386 {
1387 this.__searchFormBeanType41aSet = true;
1388 }
1389 }
1390 return searchFormBeanType41a;
1391 }
1392
1393 /**
1394 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getSearchFormBeanFullPath()
1395 * @return String
1396 */
1397 protected abstract String handleGetSearchFormBeanFullPath();
1398
1399 private String __searchFormBeanFullPath42a;
1400 private boolean __searchFormBeanFullPath42aSet = false;
1401
1402 /**
1403 * TODO: Model Documentation for
1404 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.searchFormBeanFullPath
1405 * @return (String)handleGetSearchFormBeanFullPath()
1406 */
1407 public final String getSearchFormBeanFullPath()
1408 {
1409 String searchFormBeanFullPath42a = this.__searchFormBeanFullPath42a;
1410 if (!this.__searchFormBeanFullPath42aSet)
1411 {
1412 // searchFormBeanFullPath has no pre constraints
1413 searchFormBeanFullPath42a = handleGetSearchFormBeanFullPath();
1414 // searchFormBeanFullPath has no post constraints
1415 this.__searchFormBeanFullPath42a = searchFormBeanFullPath42a;
1416 if (isMetafacadePropertyCachingEnabled())
1417 {
1418 this.__searchFormBeanFullPath42aSet = true;
1419 }
1420 }
1421 return searchFormBeanFullPath42a;
1422 }
1423
1424 /**
1425 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getSearchFormBeanClassName()
1426 * @return String
1427 */
1428 protected abstract String handleGetSearchFormBeanClassName();
1429
1430 private String __searchFormBeanClassName43a;
1431 private boolean __searchFormBeanClassName43aSet = false;
1432
1433 /**
1434 * TODO: Model Documentation for
1435 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.searchFormBeanClassName
1436 * @return (String)handleGetSearchFormBeanClassName()
1437 */
1438 public final String getSearchFormBeanClassName()
1439 {
1440 String searchFormBeanClassName43a = this.__searchFormBeanClassName43a;
1441 if (!this.__searchFormBeanClassName43aSet)
1442 {
1443 // searchFormBeanClassName has no pre constraints
1444 searchFormBeanClassName43a = handleGetSearchFormBeanClassName();
1445 // searchFormBeanClassName has no post constraints
1446 this.__searchFormBeanClassName43a = searchFormBeanClassName43a;
1447 if (isMetafacadePropertyCachingEnabled())
1448 {
1449 this.__searchFormBeanClassName43aSet = true;
1450 }
1451 }
1452 return searchFormBeanClassName43a;
1453 }
1454
1455 /**
1456 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getManageableSearchAttributes()
1457 * @return Collection
1458 */
1459 protected abstract Collection handleGetManageableSearchAttributes();
1460
1461 private Collection __manageableSearchAttributes44a;
1462 private boolean __manageableSearchAttributes44aSet = false;
1463
1464 /**
1465 * TODO: Model Documentation for
1466 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.manageableSearchAttributes
1467 * @return (Collection)handleGetManageableSearchAttributes()
1468 */
1469 public final Collection getManageableSearchAttributes()
1470 {
1471 Collection manageableSearchAttributes44a = this.__manageableSearchAttributes44a;
1472 if (!this.__manageableSearchAttributes44aSet)
1473 {
1474 // manageableSearchAttributes has no pre constraints
1475 manageableSearchAttributes44a = handleGetManageableSearchAttributes();
1476 // manageableSearchAttributes has no post constraints
1477 this.__manageableSearchAttributes44a = manageableSearchAttributes44a;
1478 if (isMetafacadePropertyCachingEnabled())
1479 {
1480 this.__manageableSearchAttributes44aSet = true;
1481 }
1482 }
1483 return manageableSearchAttributes44a;
1484 }
1485
1486 /**
1487 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getManageableSearchAssociationEnds()
1488 * @return Collection
1489 */
1490 protected abstract Collection handleGetManageableSearchAssociationEnds();
1491
1492 private Collection __manageableSearchAssociationEnds45a;
1493 private boolean __manageableSearchAssociationEnds45aSet = false;
1494
1495 /**
1496 * TODO: Model Documentation for
1497 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.manageableSearchAssociationEnds
1498 * @return (Collection)handleGetManageableSearchAssociationEnds()
1499 */
1500 public final Collection getManageableSearchAssociationEnds()
1501 {
1502 Collection manageableSearchAssociationEnds45a = this.__manageableSearchAssociationEnds45a;
1503 if (!this.__manageableSearchAssociationEnds45aSet)
1504 {
1505 // manageableSearchAssociationEnds has no pre constraints
1506 manageableSearchAssociationEnds45a = handleGetManageableSearchAssociationEnds();
1507 // manageableSearchAssociationEnds has no post constraints
1508 this.__manageableSearchAssociationEnds45a = manageableSearchAssociationEnds45a;
1509 if (isMetafacadePropertyCachingEnabled())
1510 {
1511 this.__manageableSearchAssociationEnds45aSet = true;
1512 }
1513 }
1514 return manageableSearchAssociationEnds45a;
1515 }
1516
1517 /**
1518 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#isNeedsFileUpload()
1519 * @return boolean
1520 */
1521 protected abstract boolean handleIsNeedsFileUpload();
1522
1523 private boolean __needsFileUpload46a;
1524 private boolean __needsFileUpload46aSet = false;
1525
1526 /**
1527 * TODO: Model Documentation for
1528 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.needsFileUpload
1529 * @return (boolean)handleIsNeedsFileUpload()
1530 */
1531 public final boolean isNeedsFileUpload()
1532 {
1533 boolean needsFileUpload46a = this.__needsFileUpload46a;
1534 if (!this.__needsFileUpload46aSet)
1535 {
1536 // needsFileUpload has no pre constraints
1537 needsFileUpload46a = handleIsNeedsFileUpload();
1538 // needsFileUpload has no post constraints
1539 this.__needsFileUpload46a = needsFileUpload46a;
1540 if (isMetafacadePropertyCachingEnabled())
1541 {
1542 this.__needsFileUpload46aSet = true;
1543 }
1544 }
1545 return needsFileUpload46a;
1546 }
1547
1548 /**
1549 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getConverterFullPath()
1550 * @return String
1551 */
1552 protected abstract String handleGetConverterFullPath();
1553
1554 private String __converterFullPath47a;
1555 private boolean __converterFullPath47aSet = false;
1556
1557 /**
1558 * TODO: Model Documentation for
1559 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.converterFullPath
1560 * @return (String)handleGetConverterFullPath()
1561 */
1562 public final String getConverterFullPath()
1563 {
1564 String converterFullPath47a = this.__converterFullPath47a;
1565 if (!this.__converterFullPath47aSet)
1566 {
1567 // converterFullPath has no pre constraints
1568 converterFullPath47a = handleGetConverterFullPath();
1569 // converterFullPath has no post constraints
1570 this.__converterFullPath47a = converterFullPath47a;
1571 if (isMetafacadePropertyCachingEnabled())
1572 {
1573 this.__converterFullPath47aSet = true;
1574 }
1575 }
1576 return converterFullPath47a;
1577 }
1578
1579 /**
1580 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getConverterType()
1581 * @return String
1582 */
1583 protected abstract String handleGetConverterType();
1584
1585 private String __converterType48a;
1586 private boolean __converterType48aSet = false;
1587
1588 /**
1589 * TODO: Model Documentation for
1590 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.converterType
1591 * @return (String)handleGetConverterType()
1592 */
1593 public final String getConverterType()
1594 {
1595 String converterType48a = this.__converterType48a;
1596 if (!this.__converterType48aSet)
1597 {
1598 // converterType has no pre constraints
1599 converterType48a = handleGetConverterType();
1600 // converterType has no post constraints
1601 this.__converterType48a = converterType48a;
1602 if (isMetafacadePropertyCachingEnabled())
1603 {
1604 this.__converterType48aSet = true;
1605 }
1606 }
1607 return converterType48a;
1608 }
1609
1610 /**
1611 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getConverterClassName()
1612 * @return String
1613 */
1614 protected abstract String handleGetConverterClassName();
1615
1616 private String __converterClassName49a;
1617 private boolean __converterClassName49aSet = false;
1618
1619 /**
1620 * TODO: Model Documentation for
1621 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.converterClassName
1622 * @return (String)handleGetConverterClassName()
1623 */
1624 public final String getConverterClassName()
1625 {
1626 String converterClassName49a = this.__converterClassName49a;
1627 if (!this.__converterClassName49aSet)
1628 {
1629 // converterClassName has no pre constraints
1630 converterClassName49a = handleGetConverterClassName();
1631 // converterClassName has no post constraints
1632 this.__converterClassName49a = converterClassName49a;
1633 if (isMetafacadePropertyCachingEnabled())
1634 {
1635 this.__converterClassName49aSet = true;
1636 }
1637 }
1638 return converterClassName49a;
1639 }
1640
1641 /**
1642 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getOdsExportFullPath()
1643 * @return String
1644 */
1645 protected abstract String handleGetOdsExportFullPath();
1646
1647 private String __odsExportFullPath50a;
1648 private boolean __odsExportFullPath50aSet = false;
1649
1650 /**
1651 * TODO: Model Documentation for
1652 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.odsExportFullPath
1653 * @return (String)handleGetOdsExportFullPath()
1654 */
1655 public final String getOdsExportFullPath()
1656 {
1657 String odsExportFullPath50a = this.__odsExportFullPath50a;
1658 if (!this.__odsExportFullPath50aSet)
1659 {
1660 // odsExportFullPath has no pre constraints
1661 odsExportFullPath50a = handleGetOdsExportFullPath();
1662 // odsExportFullPath has no post constraints
1663 this.__odsExportFullPath50a = odsExportFullPath50a;
1664 if (isMetafacadePropertyCachingEnabled())
1665 {
1666 this.__odsExportFullPath50aSet = true;
1667 }
1668 }
1669 return odsExportFullPath50a;
1670 }
1671
1672 /**
1673 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#isNeedsUserInterface()
1674 * @return boolean
1675 */
1676 protected abstract boolean handleIsNeedsUserInterface();
1677
1678 private boolean __needsUserInterface51a;
1679 private boolean __needsUserInterface51aSet = false;
1680
1681 /**
1682 * TODO: Model Documentation for
1683 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.needsUserInterface
1684 * @return (boolean)handleIsNeedsUserInterface()
1685 */
1686 public final boolean isNeedsUserInterface()
1687 {
1688 boolean needsUserInterface51a = this.__needsUserInterface51a;
1689 if (!this.__needsUserInterface51aSet)
1690 {
1691 // needsUserInterface has no pre constraints
1692 needsUserInterface51a = handleIsNeedsUserInterface();
1693 // needsUserInterface has no post constraints
1694 this.__needsUserInterface51a = needsUserInterface51a;
1695 if (isMetafacadePropertyCachingEnabled())
1696 {
1697 this.__needsUserInterface51aSet = true;
1698 }
1699 }
1700 return needsUserInterface51a;
1701 }
1702
1703 /**
1704 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#isNeedsImplementation()
1705 * @return boolean
1706 */
1707 protected abstract boolean handleIsNeedsImplementation();
1708
1709 private boolean __needsImplementation52a;
1710 private boolean __needsImplementation52aSet = false;
1711
1712 /**
1713 * Returns true if the user needs to modify the standard behavior and a Impl.java file will be
1714 * created in web/src/main/java.
1715 * @return (boolean)handleIsNeedsImplementation()
1716 */
1717 public final boolean isNeedsImplementation()
1718 {
1719 boolean needsImplementation52a = this.__needsImplementation52a;
1720 if (!this.__needsImplementation52aSet)
1721 {
1722 // needsImplementation has no pre constraints
1723 needsImplementation52a = handleIsNeedsImplementation();
1724 // needsImplementation has no post constraints
1725 this.__needsImplementation52a = needsImplementation52a;
1726 if (isMetafacadePropertyCachingEnabled())
1727 {
1728 this.__needsImplementation52aSet = true;
1729 }
1730 }
1731 return needsImplementation52a;
1732 }
1733
1734 /**
1735 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getSearchFilterFullPath()
1736 * @return String
1737 */
1738 protected abstract String handleGetSearchFilterFullPath();
1739
1740 private String __searchFilterFullPath53a;
1741 private boolean __searchFilterFullPath53aSet = false;
1742
1743 /**
1744 * Full path of this manageable search filter.
1745 * @return (String)handleGetSearchFilterFullPath()
1746 */
1747 public final String getSearchFilterFullPath()
1748 {
1749 String searchFilterFullPath53a = this.__searchFilterFullPath53a;
1750 if (!this.__searchFilterFullPath53aSet)
1751 {
1752 // searchFilterFullPath has no pre constraints
1753 searchFilterFullPath53a = handleGetSearchFilterFullPath();
1754 // searchFilterFullPath has no post constraints
1755 this.__searchFilterFullPath53a = searchFilterFullPath53a;
1756 if (isMetafacadePropertyCachingEnabled())
1757 {
1758 this.__searchFilterFullPath53aSet = true;
1759 }
1760 }
1761 return searchFilterFullPath53a;
1762 }
1763
1764 /**
1765 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getSearchFilterName()
1766 * @return String
1767 */
1768 protected abstract String handleGetSearchFilterName();
1769
1770 private String __searchFilterName54a;
1771 private boolean __searchFilterName54aSet = false;
1772
1773 /**
1774 * Search filter class name.
1775 * @return (String)handleGetSearchFilterName()
1776 */
1777 public final String getSearchFilterName()
1778 {
1779 String searchFilterName54a = this.__searchFilterName54a;
1780 if (!this.__searchFilterName54aSet)
1781 {
1782 // searchFilterName has no pre constraints
1783 searchFilterName54a = handleGetSearchFilterName();
1784 // searchFilterName has no post constraints
1785 this.__searchFilterName54a = searchFilterName54a;
1786 if (isMetafacadePropertyCachingEnabled())
1787 {
1788 this.__searchFilterName54aSet = true;
1789 }
1790 }
1791 return searchFilterName54a;
1792 }
1793
1794 /**
1795 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getSearchFilterSerialVersionUID()
1796 * @return String
1797 */
1798 protected abstract String handleGetSearchFilterSerialVersionUID();
1799
1800 private String __searchFilterSerialVersionUID55a;
1801 private boolean __searchFilterSerialVersionUID55aSet = false;
1802
1803 /**
1804 * The calculated serial version UID for this controller.
1805 * @return (String)handleGetSearchFilterSerialVersionUID()
1806 */
1807 public final String getSearchFilterSerialVersionUID()
1808 {
1809 String searchFilterSerialVersionUID55a = this.__searchFilterSerialVersionUID55a;
1810 if (!this.__searchFilterSerialVersionUID55aSet)
1811 {
1812 // searchFilterSerialVersionUID has no pre constraints
1813 searchFilterSerialVersionUID55a = handleGetSearchFilterSerialVersionUID();
1814 // searchFilterSerialVersionUID has no post constraints
1815 this.__searchFilterSerialVersionUID55a = searchFilterSerialVersionUID55a;
1816 if (isMetafacadePropertyCachingEnabled())
1817 {
1818 this.__searchFilterSerialVersionUID55aSet = true;
1819 }
1820 }
1821 return searchFilterSerialVersionUID55a;
1822 }
1823
1824 /**
1825 * @see org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity#getManageableEditAttributes()
1826 * @return Collection
1827 */
1828 protected abstract Collection handleGetManageableEditAttributes();
1829
1830 private Collection __manageableEditAttributes56a;
1831 private boolean __manageableEditAttributes56aSet = false;
1832
1833 /**
1834 * returns all editable attributes
1835 * @return (Collection)handleGetManageableEditAttributes()
1836 */
1837 public final Collection getManageableEditAttributes()
1838 {
1839 Collection manageableEditAttributes56a = this.__manageableEditAttributes56a;
1840 if (!this.__manageableEditAttributes56aSet)
1841 {
1842 // manageableEditAttributes has no pre constraints
1843 manageableEditAttributes56a = handleGetManageableEditAttributes();
1844 // manageableEditAttributes has no post constraints
1845 this.__manageableEditAttributes56a = manageableEditAttributes56a;
1846 if (isMetafacadePropertyCachingEnabled())
1847 {
1848 this.__manageableEditAttributes56aSet = true;
1849 }
1850 }
1851 return manageableEditAttributes56a;
1852 }
1853
1854 // ---------------- business methods ----------------------
1855
1856 /**
1857 * Method to be implemented in descendants
1858 * TODO: Model Documentation for
1859 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.isSearchable
1860 * @param element
1861 * @return boolean
1862 */
1863 protected abstract boolean handleIsSearchable(Object element);
1864
1865 /**
1866 * TODO: Model Documentation for
1867 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.isSearchable
1868 * @param element Object
1869 * TODO: Model Documentation for
1870 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.isSearchable(element)
1871 * @return handleIsSearchable(element)
1872 */
1873 public boolean isSearchable(Object element)
1874 {
1875 // isSearchable has no pre constraints
1876 boolean returnValue = handleIsSearchable(element);
1877 // isSearchable has no post constraints
1878 return returnValue;
1879 }
1880
1881 /**
1882 * Method to be implemented in descendants
1883 * TODO: Model Documentation for
1884 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.getActionRoles
1885 * @return String
1886 */
1887 protected abstract String handleGetActionRoles();
1888
1889 /**
1890 * TODO: Model Documentation for
1891 * org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity.getActionRoles
1892 * @return handleGetActionRoles()
1893 */
1894 public String getActionRoles()
1895 {
1896 // getActionRoles has no pre constraints
1897 String returnValue = handleGetActionRoles();
1898 // getActionRoles has no post constraints
1899 return returnValue;
1900 }
1901
1902 // ------------- associations ------------------
1903
1904 /**
1905 * TODO: Model Documentation for org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity
1906 * @return (Collection<Role>)handleGetRoles()
1907 */
1908 public final Collection<Role> getRoles()
1909 {
1910 Collection<Role> getRoles1r = null;
1911 // jSFManageableEntity has no pre constraints
1912 Collection result = handleGetRoles();
1913 List shieldedResult = this.shieldedElements(result);
1914 try
1915 {
1916 getRoles1r = (Collection<Role>)shieldedResult;
1917 }
1918 catch (ClassCastException ex)
1919 {
1920 // Bad things happen if the metafacade type mapping in metafacades.xml is wrong - Warn
1921 JSFManageableEntityLogic.logger.warn("incorrect metafacade cast for JSFManageableEntityLogic.getRoles Collection<Role> " + result + ": " + shieldedResult);
1922 }
1923 // jSFManageableEntity has no post constraints
1924 return getRoles1r;
1925 }
1926
1927 /**
1928 * UML Specific type is returned in Collection, transformed by shieldedElements to AndroMDA Metafacade type
1929 * @return Collection
1930 */
1931 protected abstract Collection handleGetRoles();
1932
1933 /**
1934 * @return true
1935 * @see ManageableEntity
1936 */
1937 public boolean isManageableEntityMetaType()
1938 {
1939 return true;
1940 }
1941
1942 /**
1943 * @return true
1944 * @see org.andromda.metafacades.uml.Entity
1945 */
1946 public boolean isEntityMetaType()
1947 {
1948 return true;
1949 }
1950
1951 /**
1952 * @return true
1953 * @see ClassifierFacade
1954 */
1955 public boolean isClassifierFacadeMetaType()
1956 {
1957 return true;
1958 }
1959
1960 /**
1961 * @return true
1962 * @see GeneralizableElementFacade
1963 */
1964 public boolean isGeneralizableElementFacadeMetaType()
1965 {
1966 return true;
1967 }
1968
1969 /**
1970 * @return true
1971 * @see ModelElementFacade
1972 */
1973 public boolean isModelElementFacadeMetaType()
1974 {
1975 return true;
1976 }
1977
1978 // ----------- delegates to ManageableEntity ------------
1979 /**
1980 * Return the attribute which name matches the parameter
1981 * @see ClassifierFacade#findAttribute(String name)
1982 */
1983 public AttributeFacade findAttribute(String name)
1984 {
1985 return this.getSuperManageableEntity().findAttribute(name);
1986 }
1987
1988 /**
1989 * Those abstraction dependencies for which this classifier is the client.
1990 * @see ClassifierFacade#getAbstractions()
1991 */
1992 public Collection<ClassifierFacade> getAbstractions()
1993 {
1994 return this.getSuperManageableEntity().getAbstractions();
1995 }
1996
1997 /**
1998 * Lists all classes associated to this one and any ancestor classes (through generalization).
1999 * There will be no duplicates. The order of the elements is predictable.
2000 * @see ClassifierFacade#getAllAssociatedClasses()
2001 */
2002 public Collection<ClassifierFacade> getAllAssociatedClasses()
2003 {
2004 return this.getSuperManageableEntity().getAllAssociatedClasses();
2005 }
2006
2007 /**
2008 * A collection containing all 'properties' of the classifier and its ancestors. Properties are
2009 * any attributes and navigable connecting association ends.
2010 * @see ClassifierFacade#getAllProperties()
2011 */
2012 public Collection<ModelElementFacade> getAllProperties()
2013 {
2014 return this.getSuperManageableEntity().getAllProperties();
2015 }
2016
2017 /**
2018 * A collection containing all required and/or read-only 'properties' of the classifier and its
2019 * ancestors. Properties are any attributes and navigable connecting association ends.
2020 * @see ClassifierFacade#getAllRequiredConstructorParameters()
2021 */
2022 public Collection<ModelElementFacade> getAllRequiredConstructorParameters()
2023 {
2024 return this.getSuperManageableEntity().getAllRequiredConstructorParameters();
2025 }
2026
2027 /**
2028 * Gets the array type for this classifier. If this classifier already represents an array, it
2029 * just returns itself.
2030 * @see ClassifierFacade#getArray()
2031 */
2032 public ClassifierFacade getArray()
2033 {
2034 return this.getSuperManageableEntity().getArray();
2035 }
2036
2037 /**
2038 * The name of the classifier as an array.
2039 * @see ClassifierFacade#getArrayName()
2040 */
2041 public String getArrayName()
2042 {
2043 return this.getSuperManageableEntity().getArrayName();
2044 }
2045
2046 /**
2047 * Lists the classes associated to this one, there is no repitition of classes. The order of the
2048 * elements is predictable.
2049 * @see ClassifierFacade#getAssociatedClasses()
2050 */
2051 public Collection<ClassifierFacade> getAssociatedClasses()
2052 {
2053 return this.getSuperManageableEntity().getAssociatedClasses();
2054 }
2055
2056 /**
2057 * Gets the association ends belonging to a classifier.
2058 * @see ClassifierFacade#getAssociationEnds()
2059 */
2060 public List<AssociationEndFacade> getAssociationEnds()
2061 {
2062 return this.getSuperManageableEntity().getAssociationEnds();
2063 }
2064
2065 /**
2066 * Gets the attributes that belong to the classifier.
2067 * @see ClassifierFacade#getAttributes()
2068 */
2069 public List<AttributeFacade> getAttributes()
2070 {
2071 return this.getSuperManageableEntity().getAttributes();
2072 }
2073
2074 /**
2075 * Gets all attributes for the classifier and if 'follow' is true goes up the inheritance
2076 * hierarchy and gets the attributes from the super classes as well.
2077 * @see ClassifierFacade#getAttributes(boolean follow)
2078 */
2079 public List<AttributeFacade> getAttributes(boolean follow)
2080 {
2081 return this.getSuperManageableEntity().getAttributes(follow);
2082 }
2083
2084 /**
2085 * The fully qualified name of the classifier as an array.
2086 * @see ClassifierFacade#getFullyQualifiedArrayName()
2087 */
2088 public String getFullyQualifiedArrayName()
2089 {
2090 return this.getSuperManageableEntity().getFullyQualifiedArrayName();
2091 }
2092
2093 /**
2094 * Returns all those operations that could be implemented at this classifier's level. This means
2095 * the operations owned by this classifier as well as any realized interface's operations
2096 * (recursively) in case this classifier itself is not already an interface, or generalized when
2097 * this classifier is an interface.
2098 * @see ClassifierFacade#getImplementationOperations()
2099 */
2100 public Collection<OperationFacade> getImplementationOperations()
2101 {
2102 return this.getSuperManageableEntity().getImplementationOperations();
2103 }
2104
2105 /**
2106 * A comma separated list of the fully qualified names of all implemented interfaces.
2107 * @see ClassifierFacade#getImplementedInterfaceList()
2108 */
2109 public String getImplementedInterfaceList()
2110 {
2111 return this.getSuperManageableEntity().getImplementedInterfaceList();
2112 }
2113
2114 /**
2115 * Those attributes that are scoped to an instance of this class.
2116 * @see ClassifierFacade#getInstanceAttributes()
2117 */
2118 public Collection<AttributeFacade> getInstanceAttributes()
2119 {
2120 return this.getSuperManageableEntity().getInstanceAttributes();
2121 }
2122
2123 /**
2124 * Those operations that are scoped to an instance of this class.
2125 * @see ClassifierFacade#getInstanceOperations()
2126 */
2127 public List<OperationFacade> getInstanceOperations()
2128 {
2129 return this.getSuperManageableEntity().getInstanceOperations();
2130 }
2131
2132 /**
2133 * Those interfaces that are abstractions of this classifier, this basically means this
2134 * classifier realizes them.
2135 * @see ClassifierFacade#getInterfaceAbstractions()
2136 */
2137 public Collection<ClassifierFacade> getInterfaceAbstractions()
2138 {
2139 return this.getSuperManageableEntity().getInterfaceAbstractions();
2140 }
2141
2142 /**
2143 * A String representing a new Constructor declaration for this classifier type to be used in a
2144 * Java environment.
2145 * @see ClassifierFacade#getJavaNewString()
2146 */
2147 public String getJavaNewString()
2148 {
2149 return this.getSuperManageableEntity().getJavaNewString();
2150 }
2151
2152 /**
2153 * A String representing the null-value for this classifier type to be used in a Java
2154 * environment.
2155 * @see ClassifierFacade#getJavaNullString()
2156 */
2157 public String getJavaNullString()
2158 {
2159 return this.getSuperManageableEntity().getJavaNullString();
2160 }
2161
2162 /**
2163 * The other ends of this classifier's association ends which are navigable.
2164 * @see ClassifierFacade#getNavigableConnectingEnds()
2165 */
2166 public Collection<AssociationEndFacade> getNavigableConnectingEnds()
2167 {
2168 return this.getSuperManageableEntity().getNavigableConnectingEnds();
2169 }
2170
2171 /**
2172 * Get the other ends of this classifier's association ends which are navigable and if 'follow'
2173 * is true goes up the inheritance hierarchy and gets the super association ends as well.
2174 * @see ClassifierFacade#getNavigableConnectingEnds(boolean follow)
2175 */
2176 public List<AssociationEndFacade> getNavigableConnectingEnds(boolean follow)
2177 {
2178 return this.getSuperManageableEntity().getNavigableConnectingEnds(follow);
2179 }
2180
2181 /**
2182 * Assuming that the classifier is an array, this will return the non array type of the
2183 * classifier from
2184 * the model. If the classifier is NOT an array, it will just return itself.
2185 * @see ClassifierFacade#getNonArray()
2186 */
2187 public ClassifierFacade getNonArray()
2188 {
2189 return this.getSuperManageableEntity().getNonArray();
2190 }
2191
2192 /**
2193 * The attributes from this classifier in the form of an operation call (this example would be
2194 * in Java): '(String attributeOne, String attributeTwo). If there were no attributes on the
2195 * classifier, the result would be an empty '()'.
2196 * @see ClassifierFacade#getOperationCallFromAttributes()
2197 */
2198 public String getOperationCallFromAttributes()
2199 {
2200 return this.getSuperManageableEntity().getOperationCallFromAttributes();
2201 }
2202
2203 /**
2204 * The operations owned by this classifier.
2205 * @see ClassifierFacade#getOperations()
2206 */
2207 public List<OperationFacade> getOperations()
2208 {
2209 return this.getSuperManageableEntity().getOperations();
2210 }
2211
2212 /**
2213 * A collection containing all 'properties' of the classifier. Properties are any attributes
2214 * and navigable connecting association ends.
2215 * @see ClassifierFacade#getProperties()
2216 */
2217 public List<ModelElementFacade> getProperties()
2218 {
2219 return this.getSuperManageableEntity().getProperties();
2220 }
2221
2222 /**
2223 * Gets all properties (attributes and navigable association ends) for the classifier and if
2224 * 'follow' is true goes up the inheritance hierarchy and gets the properties from the super
2225 * classes as well.
2226 * @see ClassifierFacade#getProperties(boolean follow)
2227 */
2228 public List getProperties(boolean follow)
2229 {
2230 return this.getSuperManageableEntity().getProperties(follow);
2231 }
2232
2233 /**
2234 * A collection containing all required and/or read-only 'properties' of the classifier.
2235 * Properties are any attributes and navigable connecting association ends.
2236 * @see ClassifierFacade#getRequiredConstructorParameters()
2237 */
2238 public Collection<ModelElementFacade> getRequiredConstructorParameters()
2239 {
2240 return this.getSuperManageableEntity().getRequiredConstructorParameters();
2241 }
2242
2243 /**
2244 * Returns the serial version UID of the underlying model element.
2245 * @see ClassifierFacade#getSerialVersionUID()
2246 */
2247 public long getSerialVersionUID()
2248 {
2249 return this.getSuperManageableEntity().getSerialVersionUID();
2250 }
2251
2252 /**
2253 * Those attributes that are scoped to the definition of this class.
2254 * @see ClassifierFacade#getStaticAttributes()
2255 */
2256 public Collection<AttributeFacade> getStaticAttributes()
2257 {
2258 return this.getSuperManageableEntity().getStaticAttributes();
2259 }
2260
2261 /**
2262 * Those operations that are scoped to the definition of this class.
2263 * @see ClassifierFacade#getStaticOperations()
2264 */
2265 public List<OperationFacade> getStaticOperations()
2266 {
2267 return this.getSuperManageableEntity().getStaticOperations();
2268 }
2269
2270 /**
2271 * This class' superclass, returns the generalization if it is a ClassifierFacade, null
2272 * otherwise.
2273 * @see ClassifierFacade#getSuperClass()
2274 */
2275 public ClassifierFacade getSuperClass()
2276 {
2277 return this.getSuperManageableEntity().getSuperClass();
2278 }
2279
2280 /**
2281 * The wrapper name for this classifier if a mapped type has a defined wrapper class (ie. 'long'
2282 * maps to 'Long'). If the classifier doesn't have a wrapper defined for it, this method will
2283 * return a null. Note that wrapper mappings must be defined for the namespace by defining the
2284 * 'wrapperMappingsUri', this property must point to the location of the mappings file which
2285 * maps the primitives to wrapper types.
2286 * @see ClassifierFacade#getWrapperName()
2287 */
2288 public String getWrapperName()
2289 {
2290 return this.getSuperManageableEntity().getWrapperName();
2291 }
2292
2293 /**
2294 * Indicates if this classifier is 'abstract'.
2295 * @see ClassifierFacade#isAbstract()
2296 */
2297 public boolean isAbstract()
2298 {
2299 return this.getSuperManageableEntity().isAbstract();
2300 }
2301
2302 /**
2303 * True if this classifier represents an array type. False otherwise.
2304 * @see ClassifierFacade#isArrayType()
2305 */
2306 public boolean isArrayType()
2307 {
2308 return this.getSuperManageableEntity().isArrayType();
2309 }
2310
2311 /**
2312 * True if the ClassifierFacade is an AssociationClass.
2313 * @see ClassifierFacade#isAssociationClass()
2314 */
2315 public boolean isAssociationClass()
2316 {
2317 return this.getSuperManageableEntity().isAssociationClass();
2318 }
2319
2320 /**
2321 * Returns true if this type represents a Blob type.
2322 * @see ClassifierFacade#isBlobType()
2323 */
2324 public boolean isBlobType()
2325 {
2326 return this.getSuperManageableEntity().isBlobType();
2327 }
2328
2329 /**
2330 * Indicates if this type represents a boolean type or not.
2331 * @see ClassifierFacade#isBooleanType()
2332 */
2333 public boolean isBooleanType()
2334 {
2335 return this.getSuperManageableEntity().isBooleanType();
2336 }
2337
2338 /**
2339 * Indicates if this type represents a char, Character, or java.lang.Character type or not.
2340 * @see ClassifierFacade#isCharacterType()
2341 */
2342 public boolean isCharacterType()
2343 {
2344 return this.getSuperManageableEntity().isCharacterType();
2345 }
2346
2347 /**
2348 * Returns true if this type represents a Clob type.
2349 * @see ClassifierFacade#isClobType()
2350 */
2351 public boolean isClobType()
2352 {
2353 return this.getSuperManageableEntity().isClobType();
2354 }
2355
2356 /**
2357 * True if this classifier represents a collection type. False otherwise.
2358 * @see ClassifierFacade#isCollectionType()
2359 */
2360 public boolean isCollectionType()
2361 {
2362 return this.getSuperManageableEntity().isCollectionType();
2363 }
2364
2365 /**
2366 * True/false depending on whether or not this classifier represents a datatype. A data type is
2367 * a type whose instances are identified only by their value. A data type may contain attributes
2368 * to support the modeling of structured data types.
2369 * @see ClassifierFacade#isDataType()
2370 */
2371 public boolean isDataType()
2372 {
2373 return this.getSuperManageableEntity().isDataType();
2374 }
2375
2376 /**
2377 * True when this classifier is a date type.
2378 * @see ClassifierFacade#isDateType()
2379 */
2380 public boolean isDateType()
2381 {
2382 return this.getSuperManageableEntity().isDateType();
2383 }
2384
2385 /**
2386 * Indicates if this type represents a Double type or not.
2387 * @see ClassifierFacade#isDoubleType()
2388 */
2389 public boolean isDoubleType()
2390 {
2391 return this.getSuperManageableEntity().isDoubleType();
2392 }
2393
2394 /**
2395 * Indicates whether or not this classifier represents an "EmbeddedValue'.
2396 * @see ClassifierFacade#isEmbeddedValue()
2397 */
2398 public boolean isEmbeddedValue()
2399 {
2400 return this.getSuperManageableEntity().isEmbeddedValue();
2401 }
2402
2403 /**
2404 * True if this classifier is in fact marked as an enumeration.
2405 * @see ClassifierFacade#isEnumeration()
2406 */
2407 public boolean isEnumeration()
2408 {
2409 return this.getSuperManageableEntity().isEnumeration();
2410 }
2411
2412 /**
2413 * Returns true if this type represents a 'file' type.
2414 * @see ClassifierFacade#isFileType()
2415 */
2416 public boolean isFileType()
2417 {
2418 return this.getSuperManageableEntity().isFileType();
2419 }
2420
2421 /**
2422 * Indicates if this type represents a Float type or not.
2423 * @see ClassifierFacade#isFloatType()
2424 */
2425 public boolean isFloatType()
2426 {
2427 return this.getSuperManageableEntity().isFloatType();
2428 }
2429
2430 /**
2431 * Indicates if this type represents an int or Integer or java.lang.Integer type or not.
2432 * @see ClassifierFacade#isIntegerType()
2433 */
2434 public boolean isIntegerType()
2435 {
2436 return this.getSuperManageableEntity().isIntegerType();
2437 }
2438
2439 /**
2440 * True/false depending on whether or not this Classifier represents an interface.
2441 * @see ClassifierFacade#isInterface()
2442 */
2443 public boolean isInterface()
2444 {
2445 return this.getSuperManageableEntity().isInterface();
2446 }
2447
2448 /**
2449 * True if this classifier cannot be extended and represent a leaf in the inheritance tree.
2450 * @see ClassifierFacade#isLeaf()
2451 */
2452 public boolean isLeaf()
2453 {
2454 return this.getSuperManageableEntity().isLeaf();
2455 }
2456
2457 /**
2458 * True if this classifier represents a list type. False otherwise.
2459 * @see ClassifierFacade#isListType()
2460 */
2461 public boolean isListType()
2462 {
2463 return this.getSuperManageableEntity().isListType();
2464 }
2465
2466 /**
2467 * Indicates if this type represents a Long type or not.
2468 * @see ClassifierFacade#isLongType()
2469 */
2470 public boolean isLongType()
2471 {
2472 return this.getSuperManageableEntity().isLongType();
2473 }
2474
2475 /**
2476 * Indicates whether or not this classifier represents a Map type.
2477 * @see ClassifierFacade#isMapType()
2478 */
2479 public boolean isMapType()
2480 {
2481 return this.getSuperManageableEntity().isMapType();
2482 }
2483
2484 /**
2485 * Indicates whether or not this classifier represents a primitive type.
2486 * @see ClassifierFacade#isPrimitive()
2487 */
2488 public boolean isPrimitive()
2489 {
2490 return this.getSuperManageableEntity().isPrimitive();
2491 }
2492
2493 /**
2494 * True if this classifier represents a set type. False otherwise.
2495 * @see ClassifierFacade#isSetType()
2496 */
2497 public boolean isSetType()
2498 {
2499 return this.getSuperManageableEntity().isSetType();
2500 }
2501
2502 /**
2503 * Indicates whether or not this classifier represents a string type.
2504 * @see ClassifierFacade#isStringType()
2505 */
2506 public boolean isStringType()
2507 {
2508 return this.getSuperManageableEntity().isStringType();
2509 }
2510
2511 /**
2512 * Indicates whether or not this classifier represents a time type.
2513 * @see ClassifierFacade#isTimeType()
2514 */
2515 public boolean isTimeType()
2516 {
2517 return this.getSuperManageableEntity().isTimeType();
2518 }
2519
2520 /**
2521 * Returns true if this type is a wrapped primitive type.
2522 * @see ClassifierFacade#isWrappedPrimitive()
2523 */
2524 public boolean isWrappedPrimitive()
2525 {
2526 return this.getSuperManageableEntity().isWrappedPrimitive();
2527 }
2528
2529 /**
2530 * Returns a collection of all entities this entity and its ancestors have a relation to.
2531 * @see org.andromda.metafacades.uml.Entity#getAllEntityReferences()
2532 */
2533 public Collection<DependencyFacade> getAllEntityReferences()
2534 {
2535 return this.getSuperManageableEntity().getAllEntityReferences();
2536 }
2537
2538 /**
2539 * Gets a comma separated list of attribute names. If 'follow' is true, will travel up the
2540 * inheritance hiearchy to include attributes in parent entities as well. If 'withIdentifiers'
2541 * is true, will include identifiers.
2542 * @see org.andromda.metafacades.uml.Entity#getAttributeNameList(boolean follow, boolean withIdentifiers)
2543 */
2544 public String getAttributeNameList(boolean follow, boolean withIdentifiers)
2545 {
2546 return this.getSuperManageableEntity().getAttributeNameList(follow, withIdentifiers);
2547 }
2548
2549 /**
2550 * Gets a comma separated list of attribute names. If 'follow' is true, will travel up the
2551 * inheritance hiearchy to include attributes in parent entities as well. If 'withIdentifiers'
2552 * is true, will include identifiers and if 'withDerived' is set to true, will include derived
2553 * attributes.
2554 * @see org.andromda.metafacades.uml.Entity#getAttributeNameList(boolean follow, boolean withIdentifiers, boolean withDerived)
2555 */
2556 public String getAttributeNameList(boolean follow, boolean withIdentifiers, boolean withDerived)
2557 {
2558 return this.getSuperManageableEntity().getAttributeNameList(follow, withIdentifiers, withDerived);
2559 }
2560
2561 /**
2562 * Gets a comma separated list of attribute types. If 'follow' is true, will travel up the
2563 * inheritance hierarchy to include attributes in parent entities as well. If 'withIdentifiers'
2564 * is true, will include identifiers.
2565 * @see org.andromda.metafacades.uml.Entity#getAttributeTypeList(boolean follow, boolean withIdentifiers)
2566 */
2567 public String getAttributeTypeList(boolean follow, boolean withIdentifiers)
2568 {
2569 return this.getSuperManageableEntity().getAttributeTypeList(follow, withIdentifiers);
2570 }
2571
2572 /**
2573 * Gets all attributes of the entity, and optionally retieves the super entities attributes as
2574 * well as excludes the entity's identifiers if 'withIdentifiers' is set to false.
2575 * @see org.andromda.metafacades.uml.Entity#getAttributes(boolean follow, boolean withIdentifiers)
2576 */
2577 public Collection<AttributeFacade> getAttributes(boolean follow, boolean withIdentifiers)
2578 {
2579 return this.getSuperManageableEntity().getAttributes(follow, withIdentifiers);
2580 }
2581
2582 /**
2583 * Gets all attributes of the entity, and optionally retieves the super entities attributes as
2584 * well as excludes the entity's identifiers if 'withIdentifiers' is set to false and exclude
2585 * derived attributes if 'withDerived' is set to false.
2586 * @see org.andromda.metafacades.uml.Entity#getAttributes(boolean follow, boolean withIdentifiers, boolean withDerived)
2587 */
2588 public Collection<AttributeFacade> getAttributes(boolean follow, boolean withIdentifiers, boolean withDerived)
2589 {
2590 return this.getSuperManageableEntity().getAttributes(follow, withIdentifiers, withDerived);
2591 }
2592
2593 /**
2594 * All business operations of the entity, these include any operations that aren't queries.
2595 * @see org.andromda.metafacades.uml.Entity#getBusinessOperations()
2596 */
2597 public Collection<OperationFacade> getBusinessOperations()
2598 {
2599 return this.getSuperManageableEntity().getBusinessOperations();
2600 }
2601
2602 /**
2603 * Gets any children association ends (i.e. entity association ends that are participants in an
2604 * association with this entity and this entity has composite aggregation defined for those
2605 * associations).
2606 * @see org.andromda.metafacades.uml.Entity#getChildEnds()
2607 */
2608 public Collection<EntityAssociationEnd> getChildEnds()
2609 {
2610 return this.getSuperManageableEntity().getChildEnds();
2611 }
2612
2613 /**
2614 * The embedded values belonging to this entity.
2615 * @see org.andromda.metafacades.uml.Entity#getEmbeddedValues()
2616 */
2617 public Collection<AttributeFacade> getEmbeddedValues()
2618 {
2619 return this.getSuperManageableEntity().getEmbeddedValues();
2620 }
2621
2622 /**
2623 * All entities referenced by this entity.
2624 * @see org.andromda.metafacades.uml.Entity#getEntityReferences()
2625 */
2626 public Collection<DependencyFacade> getEntityReferences()
2627 {
2628 return this.getSuperManageableEntity().getEntityReferences();
2629 }
2630
2631 /**
2632 * The full name of the type of the identifier. If composite identifier add the PK sufix to the
2633 * class name. If not, retorns the fully qualified name of the identifier.
2634 * @see org.andromda.metafacades.uml.Entity#getFullyQualifiedIdentifierTypeName()
2635 */
2636 public String getFullyQualifiedIdentifierTypeName()
2637 {
2638 return this.getSuperManageableEntity().getFullyQualifiedIdentifierTypeName();
2639 }
2640
2641 /**
2642 * Gets all the associationEnds of this entity marked with the identifiers stereotype.
2643 * @see org.andromda.metafacades.uml.Entity#getIdentifierAssociationEnds()
2644 */
2645 public Collection<AssociationEndFacade> getIdentifierAssociationEnds()
2646 {
2647 return this.getSuperManageableEntity().getIdentifierAssociationEnds();
2648 }
2649
2650 /**
2651 * The getter name of the identifier.
2652 * @see org.andromda.metafacades.uml.Entity#getIdentifierGetterName()
2653 */
2654 public String getIdentifierGetterName()
2655 {
2656 return this.getSuperManageableEntity().getIdentifierGetterName();
2657 }
2658
2659 /**
2660 * The name of the identifier. If composite identifier add the Pk suffix. If not composite
2661 * returns the attribute name of the identifier.
2662 * @see org.andromda.metafacades.uml.Entity#getIdentifierName()
2663 */
2664 public String getIdentifierName()
2665 {
2666 return this.getSuperManageableEntity().getIdentifierName();
2667 }
2668
2669 /**
2670 * The setter name of the identifier.
2671 * @see org.andromda.metafacades.uml.Entity#getIdentifierSetterName()
2672 */
2673 public String getIdentifierSetterName()
2674 {
2675 return this.getSuperManageableEntity().getIdentifierSetterName();
2676 }
2677
2678 /**
2679 * The name of the type of the identifier. If composite identifier add the PK suffix to the
2680 * class name. If not, returns the name of the identifier.
2681 * @see org.andromda.metafacades.uml.Entity#getIdentifierTypeName()
2682 */
2683 public String getIdentifierTypeName()
2684 {
2685 return this.getSuperManageableEntity().getIdentifierTypeName();
2686 }
2687
2688 /**
2689 * All the attributes of the entity which make up its identifier (primary key). Will search any
2690 * super classes as well. If no identifiers exist, a default identifier will be created if the
2691 * allowDefaultIdentifiers property is set to true.
2692 * @see org.andromda.metafacades.uml.Entity#getIdentifiers()
2693 */
2694 public Collection<ModelElementFacade> getIdentifiers()
2695 {
2696 return this.getSuperManageableEntity().getIdentifiers();
2697 }
2698
2699 /**
2700 * Gets all identifiers for an entity. If 'follow' is true, and if no identifiers can be found
2701 * on the entity, a search up the inheritance chain will be performed, and the identifiers from
2702 * the first super class having them will be used. If no identifiers exist, a default
2703 * identifier will be created if the allowDefaultIdentifiers property is set to true.
2704 * Identifiers can be on attributes or associations (composite primary key).
2705 * @see org.andromda.metafacades.uml.Entity#getIdentifiers(boolean follow)
2706 */
2707 public Collection<ModelElementFacade> getIdentifiers(boolean follow)
2708 {
2709 return this.getSuperManageableEntity().getIdentifiers(follow);
2710 }
2711
2712 /**
2713 * The maximum length a SQL name may be.
2714 * @see org.andromda.metafacades.uml.Entity#getMaxSqlNameLength()
2715 */
2716 public short getMaxSqlNameLength()
2717 {
2718 return this.getSuperManageableEntity().getMaxSqlNameLength();
2719 }
2720
2721 /**
2722 * Gets the attributes as a list within an operation call, optionally including the type names
2723 * and the identifier attributes.
2724 * @see org.andromda.metafacades.uml.Entity#getOperationCallFromAttributes(boolean withIdentifiers)
2725 */
2726 public String getOperationCallFromAttributes(boolean withIdentifiers)
2727 {
2728 return this.getSuperManageableEntity().getOperationCallFromAttributes(withIdentifiers);
2729 }
2730
2731 /**
2732 * Gets the attributes as a list within an operation call. If 'withTypeNames' is true, it will
2733 * include the type names, if 'withIdentifiers' is true it will include the identifiers. If
2734 * 'follow' is true it will follow the inheritance hierarchy and get the attributes of the super
2735 * class as well.
2736 * @see org.andromda.metafacades.uml.Entity#getOperationCallFromAttributes(boolean withIdentifiers, boolean follow)
2737 */
2738 public String getOperationCallFromAttributes(boolean withIdentifiers, boolean follow)
2739 {
2740 return this.getSuperManageableEntity().getOperationCallFromAttributes(withIdentifiers, follow);
2741 }
2742
2743 /**
2744 * Returns the parent association end of this entity if its a child entity. The parent is the
2745 * entity that is the participant the association that has composite aggregation defined. Will
2746 * return null if the entity has no parent.
2747 * @see org.andromda.metafacades.uml.Entity#getParentEnd()
2748 */
2749 public EntityAssociationEnd getParentEnd()
2750 {
2751 return this.getSuperManageableEntity().getParentEnd();
2752 }
2753
2754 /**
2755 * Gets all properties of this entity, this includes the attributes and navigable association
2756 * ends of the entity. The 'follow' flag indcates whether or not the inheritance hierarchy
2757 * should be followed when getting all the properties. The 'withIdentifiers' flag indicates
2758 * whether or not identifiers should be included in the collection of properties.
2759 * @see org.andromda.metafacades.uml.Entity#getProperties(boolean follow, boolean withIdentifiers)
2760 */
2761 public Collection<ModelElementFacade> getProperties(boolean follow, boolean withIdentifiers)
2762 {
2763 return this.getSuperManageableEntity().getProperties(follow, withIdentifiers);
2764 }
2765
2766 /**
2767 * Returns all the operations that can perform queries on the entity.
2768 * @see org.andromda.metafacades.uml.Entity#getQueryOperations()
2769 */
2770 public Collection<EntityQueryOperation> getQueryOperations()
2771 {
2772 return this.getSuperManageableEntity().getQueryOperations();
2773 }
2774
2775 /**
2776 * Gets all query operations for an entity. If 'follow' is true, and if no query operations can
2777 * be found on the entity, a search up the inheritance chain will be performed, and the
2778 * identifiers from the first super class having them will be used. If no identifiers exist, a
2779 * default identifier will be created if the allowDefaultIdentifiers property is set to true.
2780 * @see org.andromda.metafacades.uml.Entity#getQueryOperations(boolean follow)
2781 */
2782 public Collection<OperationFacade> getQueryOperations(boolean follow)
2783 {
2784 return this.getSuperManageableEntity().getQueryOperations(follow);
2785 }
2786
2787 /**
2788 * Gets a comma separated list of required attribute names. If 'follow' is true, will travel up
2789 * the inheritance hierarchy to include attributes in parent entities as well. If
2790 * 'withIdentifiers' is true, will include identifiers.
2791 * @see org.andromda.metafacades.uml.Entity#getRequiredAttributeNameList(boolean follow, boolean withIdentifiers)
2792 */
2793 public String getRequiredAttributeNameList(boolean follow, boolean withIdentifiers)
2794 {
2795 return this.getSuperManageableEntity().getRequiredAttributeNameList(follow, withIdentifiers);
2796 }
2797
2798 /**
2799 * Gets a comma separated list of attribute types with are required. If 'follow' is true, will
2800 * travel up the inheritance hierarchy to include attributes in parent entities as well. If
2801 * 'withIdentifiers' is true, will include identifiers.
2802 * @see org.andromda.metafacades.uml.Entity#getRequiredAttributeTypeList(boolean follow, boolean withIdentifiers)
2803 */
2804 public String getRequiredAttributeTypeList(boolean follow, boolean withIdentifiers)
2805 {
2806 return this.getSuperManageableEntity().getRequiredAttributeTypeList(follow, withIdentifiers);
2807 }
2808
2809 /**
2810 * Returns all attributes that are specified as 'required' in the model. If 'follow' is true,
2811 * then required attributes in super classes will also be returned, if false, just the ones
2812 * directly on the entity will be returned. If 'withIdentifiers' is true, the identifiers will
2813 * be include, if false, no identifiers will be included.
2814 * @see org.andromda.metafacades.uml.Entity#getRequiredAttributes(boolean follow, boolean withIdentifiers)
2815 */
2816 public Collection<AttributeFacade> getRequiredAttributes(boolean follow, boolean withIdentifiers)
2817 {
2818 return this.getSuperManageableEntity().getRequiredAttributes(follow, withIdentifiers);
2819 }
2820
2821 /**
2822 * Gets all required properties for this entity. These consist of any required attributes as
2823 * well as navigable associations that are marked as 'required'. If 'follow' is true, then the
2824 * inheritance hierchy will be followed and all required properties from super classes will be
2825 * included as well.
2826 * If 'withIdentifiers' is true, the identifiers will be include, if false, no identifiers will
2827 * be included.
2828 * @see org.andromda.metafacades.uml.Entity#getRequiredProperties(boolean follow, boolean withIdentifiers)
2829 */
2830 public Collection<ModelElementFacade> getRequiredProperties(boolean follow, boolean withIdentifiers)
2831 {
2832 return this.getSuperManageableEntity().getRequiredProperties(follow, withIdentifiers);
2833 }
2834
2835 /**
2836 * Creates a comma separated list of the required property names.
2837 * @see org.andromda.metafacades.uml.Entity#getRequiredPropertyNameList(boolean follow, boolean withIdentifiers)
2838 */
2839 public String getRequiredPropertyNameList(boolean follow, boolean withIdentifiers)
2840 {
2841 return this.getSuperManageableEntity().getRequiredPropertyNameList(follow, withIdentifiers);
2842 }
2843
2844 /**
2845 * A comma separated list of the required property types.
2846 * @see org.andromda.metafacades.uml.Entity#getRequiredPropertyTypeList(boolean follow, boolean withIdentifiers)
2847 */
2848 public String getRequiredPropertyTypeList(boolean follow, boolean withIdentifiers)
2849 {
2850 return this.getSuperManageableEntity().getRequiredPropertyTypeList(follow, withIdentifiers);
2851 }
2852
2853 /**
2854 * The name of the schema that contains the database table
2855 * @see org.andromda.metafacades.uml.Entity#getSchema()
2856 */
2857 public String getSchema()
2858 {
2859 return this.getSuperManageableEntity().getSchema();
2860 }
2861
2862 /**
2863 * The name of the database table to which this entity is persisted.
2864 * @see org.andromda.metafacades.uml.Entity#getTableName()
2865 */
2866 public String getTableName()
2867 {
2868 return this.getSuperManageableEntity().getTableName();
2869 }
2870
2871 /**
2872 * Returns true/false depending on whether or not this entity represetns a child in an
2873 * association (this occurs when this entity is on the opposite end of an assocation end defined
2874 * as composite).
2875 * @see org.andromda.metafacades.uml.Entity#isChild()
2876 */
2877 public boolean isChild()
2878 {
2879 return this.getSuperManageableEntity().isChild();
2880 }
2881
2882 /**
2883 * True if this entity identifier is a composite (consists of multiple key columns, typically
2884 * abstracted into an external composite identifier class)
2885 * @see org.andromda.metafacades.uml.Entity#isCompositeIdentifier()
2886 */
2887 public boolean isCompositeIdentifier()
2888 {
2889 return this.getSuperManageableEntity().isCompositeIdentifier();
2890 }
2891
2892 /**
2893 * True if the entity has its identifiers dynamically added, false otherwise.
2894 * @see org.andromda.metafacades.uml.Entity#isDynamicIdentifiersPresent()
2895 */
2896 public boolean isDynamicIdentifiersPresent()
2897 {
2898 return this.getSuperManageableEntity().isDynamicIdentifiersPresent();
2899 }
2900
2901 /**
2902 * True if the entity has any identifiers defined, false otherwise.
2903 * @see org.andromda.metafacades.uml.Entity#isIdentifiersPresent()
2904 */
2905 public boolean isIdentifiersPresent()
2906 {
2907 return this.getSuperManageableEntity().isIdentifiersPresent();
2908 }
2909
2910 /**
2911 * Indiciates if this entity is using an assigned identifier or not.
2912 * @see org.andromda.metafacades.uml.Entity#isUsingAssignedIdentifier()
2913 */
2914 public boolean isUsingAssignedIdentifier()
2915 {
2916 return this.getSuperManageableEntity().isUsingAssignedIdentifier();
2917 }
2918
2919 /**
2920 * Indicates whether or not this entity is using a foreign identifier as its identifiers. That
2921 * is: the foreignIdentifier flag was set on an incoming association end and the entity is
2922 * therefore using the related foreign parent entity's identifier.
2923 * @see org.andromda.metafacades.uml.Entity#isUsingForeignIdentifier()
2924 */
2925 public boolean isUsingForeignIdentifier()
2926 {
2927 return this.getSuperManageableEntity().isUsingForeignIdentifier();
2928 }
2929
2930 /**
2931 * Finds the tagged value optional searching the entire inheritance hierarchy if 'follow' is set
2932 * to true.
2933 * @see GeneralizableElementFacade#findTaggedValue(String tagName, boolean follow)
2934 */
2935 public Object findTaggedValue(String tagName, boolean follow)
2936 {
2937 return this.getSuperManageableEntity().findTaggedValue(tagName, follow);
2938 }
2939
2940 /**
2941 * All generalizations for this generalizable element, goes up the inheritance tree.
2942 * @see GeneralizableElementFacade#getAllGeneralizations()
2943 */
2944 public Collection<GeneralizableElementFacade> getAllGeneralizations()
2945 {
2946 return this.getSuperManageableEntity().getAllGeneralizations();
2947 }
2948
2949 /**
2950 * All specializations (travels down the inheritance hierarchy).
2951 * @see GeneralizableElementFacade#getAllSpecializations()
2952 */
2953 public Collection<GeneralizableElementFacade> getAllSpecializations()
2954 {
2955 return this.getSuperManageableEntity().getAllSpecializations();
2956 }
2957
2958 /**
2959 * Gets the direct generalization for this generalizable element.
2960 * @see GeneralizableElementFacade#getGeneralization()
2961 */
2962 public GeneralizableElementFacade getGeneralization()
2963 {
2964 return this.getSuperManageableEntity().getGeneralization();
2965 }
2966
2967 /**
2968 * Gets the actual links that this generalization element is part of (it plays either the
2969 * specialization or generalization).
2970 * @see GeneralizableElementFacade#getGeneralizationLinks()
2971 */
2972 public Collection<GeneralizationFacade> getGeneralizationLinks()
2973 {
2974 return this.getSuperManageableEntity().getGeneralizationLinks();
2975 }
2976
2977 /**
2978 * A comma separated list of the fully qualified names of all generalizations.
2979 * @see GeneralizableElementFacade#getGeneralizationList()
2980 */
2981 public String getGeneralizationList()
2982 {
2983 return this.getSuperManageableEntity().getGeneralizationList();
2984 }
2985
2986 /**
2987 * The element found when you recursively follow the generalization path up to the root. If an
2988 * element has no generalization itself will be considered the root.
2989 * @see GeneralizableElementFacade#getGeneralizationRoot()
2990 */
2991 public GeneralizableElementFacade getGeneralizationRoot()
2992 {
2993 return this.getSuperManageableEntity().getGeneralizationRoot();
2994 }
2995
2996 /**
2997 * Return all generalizations (ancestors) from this generalizable element.
2998 * @see GeneralizableElementFacade#getGeneralizations()
2999 */
3000 public Collection<GeneralizableElementFacade> getGeneralizations()
3001 {
3002 return this.getSuperManageableEntity().getGeneralizations();
3003 }
3004
3005 /**
3006 * Gets the direct specializations (i.e. sub elements) for this generalizatble element.
3007 * @see GeneralizableElementFacade#getSpecializations()
3008 */
3009 public Collection<GeneralizableElementFacade> getSpecializations()
3010 {
3011 return this.getSuperManageableEntity().getSpecializations();
3012 }
3013
3014 /**
3015 * All entities to which can be browsed from this entity. Currently this property will simple
3016 * hold all entities, so the value is the same for any arbitrary entity. Hiding entities can be
3017 * done in the presentation tier, for example depending on runtime security information.
3018 * @see ManageableEntity#getAllManageables()
3019 */
3020 public List<ManageableEntity> getAllManageables()
3021 {
3022 return this.getSuperManageableEntity().getAllManageables();
3023 }
3024
3025 /**
3026 * The attribute used as a key link to display values for this entity.
3027 * @see ManageableEntity#getDisplayAttribute()
3028 */
3029 public ManageableEntityAttribute getDisplayAttribute()
3030 {
3031 return this.getSuperManageableEntity().getDisplayAttribute();
3032 }
3033
3034 /**
3035 * The fully qualified service name of the entity.
3036 * @see ManageableEntity#getFullyQualifiedManageableServiceName()
3037 */
3038 public String getFullyQualifiedManageableServiceName()
3039 {
3040 return this.getSuperManageableEntity().getFullyQualifiedManageableServiceName();
3041 }
3042
3043 /**
3044 * The associations to other entities from this entity.
3045 * @see ManageableEntity#getManageableAssociationEnds()
3046 */
3047 public List<ManageableEntityAssociationEnd> getManageableAssociationEnds()
3048 {
3049 return this.getSuperManageableEntity().getManageableAssociationEnds();
3050 }
3051
3052 /**
3053 * Lists the attributes that can be managed for this entity. This feature is particularly
3054 * important when resolving inherited attributes and ids.
3055 * @see ManageableEntity#getManageableAttributes()
3056 */
3057 public List<ManageableEntityAttribute> getManageableAttributes()
3058 {
3059 return this.getSuperManageableEntity().getManageableAttributes();
3060 }
3061
3062 /**
3063 * The identifier used when managing this entity.
3064 * @see ManageableEntity#getManageableIdentifier()
3065 */
3066 public ManageableEntityAttribute getManageableIdentifier()
3067 {
3068 return this.getSuperManageableEntity().getManageableIdentifier();
3069 }
3070
3071 /**
3072 * ManageableAttributes and ManageableAssociationEnds
3073 * @see ManageableEntity#getManageableMembers()
3074 */
3075 public List<ModelElementFacade> getManageableMembers()
3076 {
3077 return this.getSuperManageableEntity().getManageableMembers();
3078 }
3079
3080 /**
3081 * The entity package name.
3082 * @see ManageableEntity#getManageablePackageName()
3083 */
3084 public String getManageablePackageName()
3085 {
3086 return this.getSuperManageableEntity().getManageablePackageName();
3087 }
3088
3089 /**
3090 * The Package path of the Entity
3091 * @see ManageableEntity#getManageablePackagePath()
3092 */
3093 public String getManageablePackagePath()
3094 {
3095 return this.getSuperManageableEntity().getManageablePackagePath();
3096 }
3097
3098 /**
3099 * The entity accessor (getter) call.
3100 * @see ManageableEntity#getManageableServiceAccessorCall()
3101 */
3102 public String getManageableServiceAccessorCall()
3103 {
3104 return this.getSuperManageableEntity().getManageableServiceAccessorCall();
3105 }
3106
3107 /**
3108 * The service full path of the entity.
3109 * @see ManageableEntity#getManageableServiceFullPath()
3110 */
3111 public String getManageableServiceFullPath()
3112 {
3113 return this.getSuperManageableEntity().getManageableServiceFullPath();
3114 }
3115
3116 /**
3117 * The service name of the entity.
3118 * @see ManageableEntity#getManageableServiceName()
3119 */
3120 public String getManageableServiceName()
3121 {
3122 return this.getSuperManageableEntity().getManageableServiceName();
3123 }
3124
3125 /**
3126 * The maximum number of rows to load from the database.
3127 * @see ManageableEntity#getMaximumListSize()
3128 */
3129 public int getMaximumListSize()
3130 {
3131 return this.getSuperManageableEntity().getMaximumListSize();
3132 }
3133
3134 /**
3135 * The maximum number of rows to load from the database.
3136 * @see ManageableEntity#getPageSize()
3137 */
3138 public int getPageSize()
3139 {
3140 return this.getSuperManageableEntity().getPageSize();
3141 }
3142
3143 /**
3144 * Other Manageable Entities which reference this entity.
3145 * @see ManageableEntity#getReferencingManageables()
3146 */
3147 public List<ManageableEntity> getReferencingManageables()
3148 {
3149 return this.getSuperManageableEntity().getReferencingManageables();
3150 }
3151
3152 /**
3153 * The Actors (Roles) which can manage the Entity.
3154 * @see ManageableEntity#getUsers()
3155 */
3156 public List<ActorFacade> getUsers()
3157 {
3158 return this.getSuperManageableEntity().getUsers();
3159 }
3160
3161 /**
3162 * Create a create operation on the entity manager?
3163 * @see ManageableEntity#isCreate()
3164 */
3165 public boolean isCreate()
3166 {
3167 return this.getSuperManageableEntity().isCreate();
3168 }
3169
3170 /**
3171 * Create a delete operation on the entity manager?
3172 * @see ManageableEntity#isDelete()
3173 */
3174 public boolean isDelete()
3175 {
3176 return this.getSuperManageableEntity().isDelete();
3177 }
3178
3179 /**
3180 * True: Entity is manageable.
3181 * @see ManageableEntity#isManageable()
3182 */
3183 public boolean isManageable()
3184 {
3185 return this.getSuperManageableEntity().isManageable();
3186 }
3187
3188 /**
3189 * Create a read operation on the entity manager?
3190 * @see ManageableEntity#isRead()
3191 */
3192 public boolean isRead()
3193 {
3194 return this.getSuperManageableEntity().isRead();
3195 }
3196
3197 /**
3198 * The maximum number of rows to load from the database.
3199 * @see ManageableEntity#isResolveable()
3200 */
3201 public boolean isResolveable()
3202 {
3203 return this.getSuperManageableEntity().isResolveable();
3204 }
3205
3206 /**
3207 * Create an update operation on the entity manager?
3208 * @see ManageableEntity#isUpdate()
3209 */
3210 public boolean isUpdate()
3211 {
3212 return this.getSuperManageableEntity().isUpdate();
3213 }
3214
3215 /**
3216 * Returns a string with the attributes without wrapper types.
3217 * @see ManageableEntity#listManageableMembers(boolean withTypes)
3218 */
3219 public String listManageableMembers(boolean withTypes)
3220 {
3221 return this.getSuperManageableEntity().listManageableMembers(withTypes);
3222 }
3223
3224 /**
3225 * Returns a string with the attributes and wrapper types.
3226 * @see ManageableEntity#listManageableMembersWithWrapperTypes()
3227 */
3228 public String listManageableMembersWithWrapperTypes()
3229 {
3230 return this.getSuperManageableEntity().listManageableMembersWithWrapperTypes();
3231 }
3232
3233 /**
3234 * Copies all tagged values from the given ModelElementFacade to this model element facade.
3235 * @see ModelElementFacade#copyTaggedValues(ModelElementFacade element)
3236 */
3237 public void copyTaggedValues(ModelElementFacade element)
3238 {
3239 this.getSuperManageableEntity().copyTaggedValues(element);
3240 }
3241
3242 /**
3243 * Finds the tagged value with the specified 'tagName'. In case there are more values the first
3244 * one found will be returned.
3245 * @see ModelElementFacade#findTaggedValue(String tagName)
3246 */
3247 public Object findTaggedValue(String tagName)
3248 {
3249 return this.getSuperManageableEntity().findTaggedValue(tagName);
3250 }
3251
3252 /**
3253 * Returns all the values for the tagged value with the specified name. The returned collection
3254 * will contains only String instances, or will be empty. Never null.
3255 * @see ModelElementFacade#findTaggedValues(String tagName)
3256 */
3257 public Collection<Object> findTaggedValues(String tagName)
3258 {
3259 return this.getSuperManageableEntity().findTaggedValues(tagName);
3260 }
3261
3262 /**
3263 * Returns the fully qualified name of the model element. The fully qualified name includes
3264 * complete package qualified name of the underlying model element. The templates parameter will
3265 * be replaced by the correct one given the binding relation of the parameter to this element.
3266 * @see ModelElementFacade#getBindedFullyQualifiedName(ModelElementFacade bindedElement)
3267 */
3268 public String getBindedFullyQualifiedName(ModelElementFacade bindedElement)
3269 {
3270 return this.getSuperManageableEntity().getBindedFullyQualifiedName(bindedElement);
3271 }
3272
3273 /**
3274 * Gets all constraints belonging to the model element.
3275 * @see ModelElementFacade#getConstraints()
3276 */
3277 public Collection<ConstraintFacade> getConstraints()
3278 {
3279 return this.getSuperManageableEntity().getConstraints();
3280 }
3281
3282 /**
3283 * Returns the constraints of the argument kind that have been placed onto this model. Typical
3284 * kinds are "inv", "pre" and "post". Other kinds are possible.
3285 * @see ModelElementFacade#getConstraints(String kind)
3286 */
3287 public Collection<ConstraintFacade> getConstraints(String kind)
3288 {
3289 return this.getSuperManageableEntity().getConstraints(kind);
3290 }
3291
3292 /**
3293 * Gets the documentation for the model element, The indent argument is prefixed to each line.
3294 * By default this method wraps lines after 64 characters.
3295 * This method is equivalent to <code>getDocumentation(indent, 64)</code>.
3296 * @see ModelElementFacade#getDocumentation(String indent)
3297 */
3298 public String getDocumentation(String indent)
3299 {
3300 return this.getSuperManageableEntity().getDocumentation(indent);
3301 }
3302
3303 /**
3304 * This method returns the documentation for this model element, with the lines wrapped after
3305 * the specified number of characters, values of less than 1 will indicate no line wrapping is
3306 * required. By default paragraphs are returned as HTML.
3307 * This method is equivalent to <code>getDocumentation(indent, lineLength, true)</code>.
3308 * @see ModelElementFacade#getDocumentation(String indent, int lineLength)
3309 */
3310 public String getDocumentation(String indent, int lineLength)
3311 {
3312 return this.getSuperManageableEntity().getDocumentation(indent, lineLength);
3313 }
3314
3315 /**
3316 * This method returns the documentation for this model element, with the lines wrapped after
3317 * the specified number of characters, values of less than 1 will indicate no line wrapping is
3318 * required. HTML style determines if HTML Escaping is applied.
3319 * @see ModelElementFacade#getDocumentation(String indent, int lineLength, boolean htmlStyle)
3320 */
3321 public String getDocumentation(String indent, int lineLength, boolean htmlStyle)
3322 {
3323 return this.getSuperManageableEntity().getDocumentation(indent, lineLength, htmlStyle);
3324 }
3325
3326 /**
3327 * The fully qualified name of this model element.
3328 * @see ModelElementFacade#getFullyQualifiedName()
3329 */
3330 public String getFullyQualifiedName()
3331 {
3332 return this.getSuperManageableEntity().getFullyQualifiedName();
3333 }
3334
3335 /**
3336 * Returns the fully qualified name of the model element. The fully qualified name includes
3337 * complete package qualified name of the underlying model element. If modelName is true, then
3338 * the original name of the model element (the name contained within the model) will be the name
3339 * returned, otherwise a name from a language mapping will be returned.
3340 * @see ModelElementFacade#getFullyQualifiedName(boolean modelName)
3341 */
3342 public String getFullyQualifiedName(boolean modelName)
3343 {
3344 return this.getSuperManageableEntity().getFullyQualifiedName(modelName);
3345 }
3346
3347 /**
3348 * Returns the fully qualified name as a path, the returned value always starts with out a slash
3349 * '/'.
3350 * @see ModelElementFacade#getFullyQualifiedNamePath()
3351 */
3352 public String getFullyQualifiedNamePath()
3353 {
3354 return this.getSuperManageableEntity().getFullyQualifiedNamePath();
3355 }
3356
3357 /**
3358 * Gets the unique identifier of the underlying model element.
3359 * @see ModelElementFacade#getId()
3360 */
3361 public String getId()
3362 {
3363 return this.getSuperManageableEntity().getId();
3364 }
3365
3366 /**
3367 * UML2: Retrieves the keywords for this element. Used to modify implementation properties which
3368 * are not represented by other properties, i.e. native, transient, volatile, synchronized,
3369 * (added annotations) override, deprecated. Can also be used to suppress compiler warnings:
3370 * (added annotations) unchecked, fallthrough, path, serial, finally, all. Annotations require
3371 * JDK5 compiler level.
3372 * @see ModelElementFacade#getKeywords()
3373 */
3374 public Collection<String> getKeywords()
3375 {
3376 return this.getSuperManageableEntity().getKeywords();
3377 }
3378
3379 /**
3380 * UML2: Retrieves a localized label for this named element.
3381 * @see ModelElementFacade#getLabel()
3382 */
3383 public String getLabel()
3384 {
3385 return this.getSuperManageableEntity().getLabel();
3386 }
3387
3388 /**
3389 * The language mappings that have been set for this model element.
3390 * @see ModelElementFacade#getLanguageMappings()
3391 */
3392 public TypeMappings getLanguageMappings()
3393 {
3394 return this.getSuperManageableEntity().getLanguageMappings();
3395 }
3396
3397 /**
3398 * Return the model containing this model element (multiple models may be loaded and processed
3399 * at the same time).
3400 * @see ModelElementFacade#getModel()
3401 */
3402 public ModelFacade getModel()
3403 {
3404 return this.getSuperManageableEntity().getModel();
3405 }
3406
3407 /**
3408 * The name of the model element.
3409 * @see ModelElementFacade#getName()
3410 */
3411 public String getName()
3412 {
3413 return this.getSuperManageableEntity().getName();
3414 }
3415
3416 /**
3417 * Gets the package to which this model element belongs.
3418 * @see ModelElementFacade#getPackage()
3419 */
3420 public ModelElementFacade getPackage()
3421 {
3422 return this.getSuperManageableEntity().getPackage();
3423 }
3424
3425 /**
3426 * The name of this model element's package.
3427 * @see ModelElementFacade#getPackageName()
3428 */
3429 public String getPackageName()
3430 {
3431 return this.getSuperManageableEntity().getPackageName();
3432 }
3433
3434 /**
3435 * Gets the package name (optionally providing the ability to retrieve the model name and not
3436 * the mapped name).
3437 * @see ModelElementFacade#getPackageName(boolean modelName)
3438 */
3439 public String getPackageName(boolean modelName)
3440 {
3441 return this.getSuperManageableEntity().getPackageName(modelName);
3442 }
3443
3444 /**
3445 * Returns the package as a path, the returned value always starts with out a slash '/'.
3446 * @see ModelElementFacade#getPackagePath()
3447 */
3448 public String getPackagePath()
3449 {
3450 return this.getSuperManageableEntity().getPackagePath();
3451 }
3452
3453 /**
3454 * UML2: Returns the value of the 'Qualified Name' attribute. A name which allows the
3455 * NamedElement to be identified within a hierarchy of nested Namespaces. It is constructed from
3456 * the names of the containing namespaces starting at the root of the hierarchy and ending with
3457 * the name of the NamedElement itself.
3458 * @see ModelElementFacade#getQualifiedName()
3459 */
3460 public String getQualifiedName()
3461 {
3462 return this.getSuperManageableEntity().getQualifiedName();
3463 }
3464
3465 /**
3466 * Gets the root package for the model element.
3467 * @see ModelElementFacade#getRootPackage()
3468 */
3469 public PackageFacade getRootPackage()
3470 {
3471 return this.getSuperManageableEntity().getRootPackage();
3472 }
3473
3474 /**
3475 * Gets the dependencies for which this model element is the source.
3476 * @see ModelElementFacade#getSourceDependencies()
3477 */
3478 public Collection<DependencyFacade> getSourceDependencies()
3479 {
3480 return this.getSuperManageableEntity().getSourceDependencies();
3481 }
3482
3483 /**
3484 * If this model element is the context of an activity graph, this represents that activity
3485 * graph.
3486 * @see ModelElementFacade#getStateMachineContext()
3487 */
3488 public StateMachineFacade getStateMachineContext()
3489 {
3490 return this.getSuperManageableEntity().getStateMachineContext();
3491 }
3492
3493 /**
3494 * The collection of ALL stereotype names for this model element.
3495 * @see ModelElementFacade#getStereotypeNames()
3496 */
3497 public Collection<String> getStereotypeNames()
3498 {
3499 return this.getSuperManageableEntity().getStereotypeNames();
3500 }
3501
3502 /**
3503 * Gets all stereotypes for this model element.
3504 * @see ModelElementFacade#getStereotypes()
3505 */
3506 public Collection<StereotypeFacade> getStereotypes()
3507 {
3508 return this.getSuperManageableEntity().getStereotypes();
3509 }
3510
3511 /**
3512 * Return the TaggedValues associated with this model element, under all stereotypes.
3513 * @see ModelElementFacade#getTaggedValues()
3514 */
3515 public Collection<TaggedValueFacade> getTaggedValues()
3516 {
3517 return this.getSuperManageableEntity().getTaggedValues();
3518 }
3519
3520 /**
3521 * Gets the dependencies for which this model element is the target.
3522 * @see ModelElementFacade#getTargetDependencies()
3523 */
3524 public Collection<DependencyFacade> getTargetDependencies()
3525 {
3526 return this.getSuperManageableEntity().getTargetDependencies();
3527 }
3528
3529 /**
3530 * Get the template parameter for this model element having the parameterName
3531 * @see ModelElementFacade#getTemplateParameter(String parameterName)
3532 */
3533 public Object getTemplateParameter(String parameterName)
3534 {
3535 return this.getSuperManageableEntity().getTemplateParameter(parameterName);
3536 }
3537
3538 /**
3539 * Get the template parameters for this model element
3540 * @see ModelElementFacade#getTemplateParameters()
3541 */
3542 public Collection<TemplateParameterFacade> getTemplateParameters()
3543 {
3544 return this.getSuperManageableEntity().getTemplateParameters();
3545 }
3546
3547 /**
3548 * The visibility (i.e. public, private, protected or package) of the model element, will
3549 * attempt a lookup for these values in the language mappings (if any).
3550 * @see ModelElementFacade#getVisibility()
3551 */
3552 public String getVisibility()
3553 {
3554 return this.getSuperManageableEntity().getVisibility();
3555 }
3556
3557 /**
3558 * Returns true if the model element has the exact stereotype (meaning no stereotype inheritance
3559 * is taken into account when searching for the stereotype), false otherwise.
3560 * @see ModelElementFacade#hasExactStereotype(String stereotypeName)
3561 */
3562 public boolean hasExactStereotype(String stereotypeName)
3563 {
3564 return this.getSuperManageableEntity().hasExactStereotype(stereotypeName);
3565 }
3566
3567 /**
3568 * Does the UML Element contain the named Keyword? Keywords can be separated by space, comma,
3569 * pipe, semicolon, or << >>
3570 * @see ModelElementFacade#hasKeyword(String keywordName)
3571 */
3572 public boolean hasKeyword(String keywordName)
3573 {
3574 return this.getSuperManageableEntity().hasKeyword(keywordName);
3575 }
3576
3577 /**
3578 * Returns true if the model element has the specified stereotype. If the stereotype itself
3579 * does not match, then a search will be made up the stereotype inheritance hierarchy, and if
3580 * one of the stereotype's ancestors has a matching name this method will return true, false
3581 * otherwise.
3582 * For example, if we have a certain stereotype called <<exception>> and a model element has a
3583 * stereotype called <<applicationException>> which extends <<exception>>, when calling this
3584 * method with 'stereotypeName' defined as 'exception' the method would return true since
3585 * <<applicationException>> inherits from <<exception>>. If you want to check if the model
3586 * element has the exact stereotype, then use the method 'hasExactStereotype' instead.
3587 * @see ModelElementFacade#hasStereotype(String stereotypeName)
3588 */
3589 public boolean hasStereotype(String stereotypeName)
3590 {
3591 return this.getSuperManageableEntity().hasStereotype(stereotypeName);
3592 }
3593
3594 /**
3595 * True if there are target dependencies from this element that are instances of BindingFacade.
3596 * Deprecated in UML2: Use TemplateBinding parameters instead of dependencies.
3597 * @see ModelElementFacade#isBindingDependenciesPresent()
3598 */
3599 public boolean isBindingDependenciesPresent()
3600 {
3601 return this.getSuperManageableEntity().isBindingDependenciesPresent();
3602 }
3603
3604 /**
3605 * Indicates if any constraints are present on this model element.
3606 * @see ModelElementFacade#isConstraintsPresent()
3607 */
3608 public boolean isConstraintsPresent()
3609 {
3610 return this.getSuperManageableEntity().isConstraintsPresent();
3611 }
3612
3613 /**
3614 * Indicates if any documentation is present on this model element.
3615 * @see ModelElementFacade#isDocumentationPresent()
3616 */
3617 public boolean isDocumentationPresent()
3618 {
3619 return this.getSuperManageableEntity().isDocumentationPresent();
3620 }
3621
3622 /**
3623 * True if this element name is a reserved word in Java, C#, ANSI or ISO C, C++, JavaScript.
3624 * @see ModelElementFacade#isReservedWord()
3625 */
3626 public boolean isReservedWord()
3627 {
3628 return this.getSuperManageableEntity().isReservedWord();
3629 }
3630
3631 /**
3632 * True is there are template parameters on this model element. For UML2, applies to Class,
3633 * Operation, Property, and Parameter.
3634 * @see ModelElementFacade#isTemplateParametersPresent()
3635 */
3636 public boolean isTemplateParametersPresent()
3637 {
3638 return this.getSuperManageableEntity().isTemplateParametersPresent();
3639 }
3640
3641 /**
3642 * True if this element name is a valid identifier name in Java, C#, ANSI or ISO C, C++,
3643 * JavaScript. Contains no spaces, special characters etc. Constraint always applied on
3644 * Enumerations and Interfaces, optionally applies on other model elements.
3645 * @see ModelElementFacade#isValidIdentifierName()
3646 */
3647 public boolean isValidIdentifierName()
3648 {
3649 return this.getSuperManageableEntity().isValidIdentifierName();
3650 }
3651
3652 /**
3653 * Searches for the constraint with the specified 'name' on this model element, and if found
3654 * translates it using the specified 'translation' from a translation library discovered by the
3655 * framework.
3656 * @see ModelElementFacade#translateConstraint(String name, String translation)
3657 */
3658 public String translateConstraint(String name, String translation)
3659 {
3660 return this.getSuperManageableEntity().translateConstraint(name, translation);
3661 }
3662
3663 /**
3664 * Translates all constraints belonging to this model element with the given 'translation'.
3665 * @see ModelElementFacade#translateConstraints(String translation)
3666 */
3667 public String[] translateConstraints(String translation)
3668 {
3669 return this.getSuperManageableEntity().translateConstraints(translation);
3670 }
3671
3672 /**
3673 * Translates the constraints of the specified 'kind' belonging to this model element.
3674 * @see ModelElementFacade#translateConstraints(String kind, String translation)
3675 */
3676 public String[] translateConstraints(String kind, String translation)
3677 {
3678 return this.getSuperManageableEntity().translateConstraints(kind, translation);
3679 }
3680
3681 /**
3682 * @see org.andromda.core.metafacade.MetafacadeBase#initialize()
3683 */
3684 @Override
3685 public void initialize()
3686 {
3687 this.getSuperManageableEntity().initialize();
3688 }
3689
3690 /**
3691 * @return Object getSuperManageableEntity().getValidationOwner()
3692 * @see org.andromda.core.metafacade.MetafacadeBase#getValidationOwner()
3693 */
3694 @Override
3695 public Object getValidationOwner()
3696 {
3697 Object owner = this.getSuperManageableEntity().getValidationOwner();
3698 return owner;
3699 }
3700
3701 /**
3702 * @return String getSuperManageableEntity().getValidationName()
3703 * @see org.andromda.core.metafacade.MetafacadeBase#getValidationName()
3704 */
3705 @Override
3706 public String getValidationName()
3707 {
3708 String name = this.getSuperManageableEntity().getValidationName();
3709 return name;
3710 }
3711
3712 /**
3713 * @param validationMessages Collection<ModelValidationMessage>
3714 * @see org.andromda.core.metafacade.MetafacadeBase#validateInvariants(Collection validationMessages)
3715 */
3716 @Override
3717 public void validateInvariants(Collection<ModelValidationMessage> validationMessages)
3718 {
3719 this.getSuperManageableEntity().validateInvariants(validationMessages);
3720 }
3721
3722 /**
3723 * The property that stores the name of the metafacade.
3724 */
3725 private static final String NAME_PROPERTY = "name";
3726 private static final String FQNAME_PROPERTY = "fullyQualifiedName";
3727
3728 /**
3729 * @see Object#toString()
3730 */
3731 @Override
3732 public String toString()
3733 {
3734 final StringBuilder toString = new StringBuilder(this.getClass().getName());
3735 toString.append("[");
3736 try
3737 {
3738 toString.append(Introspector.instance().getProperty(this, FQNAME_PROPERTY));
3739 }
3740 catch (final Throwable tryAgain)
3741 {
3742 try
3743 {
3744 toString.append(Introspector.instance().getProperty(this, NAME_PROPERTY));
3745 }
3746 catch (final Throwable ignore)
3747 {
3748 // - just ignore when the metafacade doesn't have a name or fullyQualifiedName property
3749 }
3750 }
3751 toString.append("]");
3752 return toString.toString();
3753 }
3754 }