1
2
3
4
5 package org.andromda.cartridges.bpm4struts.metafacades;
6
7 import java.util.Collection;
8 import java.util.List;
9 import java.util.Map;
10 import javax.swing.tree.TreeNode;
11 import org.andromda.core.common.Introspector;
12 import org.andromda.core.metafacade.MetafacadeBase;
13 import org.andromda.core.metafacade.MetafacadeFactory;
14 import org.andromda.core.metafacade.ModelValidationMessage;
15 import org.andromda.metafacades.uml.ActivityGraphFacade;
16 import org.andromda.metafacades.uml.AssociationEndFacade;
17 import org.andromda.metafacades.uml.AttributeFacade;
18 import org.andromda.metafacades.uml.ClassifierFacade;
19 import org.andromda.metafacades.uml.ConstraintFacade;
20 import org.andromda.metafacades.uml.DependencyFacade;
21 import org.andromda.metafacades.uml.ExtendFacade;
22 import org.andromda.metafacades.uml.ExtensionPointFacade;
23 import org.andromda.metafacades.uml.FrontEndAction;
24 import org.andromda.metafacades.uml.FrontEndActivityGraph;
25 import org.andromda.metafacades.uml.FrontEndController;
26 import org.andromda.metafacades.uml.FrontEndFinalState;
27 import org.andromda.metafacades.uml.FrontEndParameter;
28 import org.andromda.metafacades.uml.FrontEndUseCase;
29 import org.andromda.metafacades.uml.FrontEndView;
30 import org.andromda.metafacades.uml.GeneralizableElementFacade;
31 import org.andromda.metafacades.uml.GeneralizationFacade;
32 import org.andromda.metafacades.uml.IncludeFacade;
33 import org.andromda.metafacades.uml.ModelElementFacade;
34 import org.andromda.metafacades.uml.ModelFacade;
35 import org.andromda.metafacades.uml.OperationFacade;
36 import org.andromda.metafacades.uml.PackageFacade;
37 import org.andromda.metafacades.uml.Role;
38 import org.andromda.metafacades.uml.StateMachineFacade;
39 import org.andromda.metafacades.uml.StereotypeFacade;
40 import org.andromda.metafacades.uml.TaggedValueFacade;
41 import org.andromda.metafacades.uml.TemplateParameterFacade;
42 import org.andromda.metafacades.uml.TypeMappings;
43 import org.andromda.translation.ocl.validation.OCLCollections;
44 import org.andromda.translation.ocl.validation.OCLIntrospector;
45 import org.andromda.translation.ocl.validation.OCLResultEnsurer;
46 import org.apache.log4j.Logger;
47
48
49
50
51
52
53
54 public abstract class StrutsUseCaseLogic
55 extends MetafacadeBase
56 implements StrutsUseCase
57 {
58
59
60
61
62 protected Object metaObject;
63
64
65
66
67
68 protected StrutsUseCaseLogic(Object metaObjectIn, String context)
69 {
70 super(metaObjectIn, getContext(context));
71 this.superFrontEndUseCase =
72 (FrontEndUseCase)
73 MetafacadeFactory.getInstance().createFacadeImpl(
74 "org.andromda.metafacades.uml.FrontEndUseCase",
75 metaObjectIn,
76 getContext(context));
77 this.metaObject = metaObjectIn;
78 }
79
80
81
82
83 private static final Logger logger = Logger.getLogger(StrutsUseCaseLogic.class);
84
85
86
87
88
89
90 private static String getContext(String context)
91 {
92 if (context == null)
93 {
94 context = "org.andromda.cartridges.bpm4struts.metafacades.StrutsUseCase";
95 }
96 return context;
97 }
98
99 private FrontEndUseCase superFrontEndUseCase;
100 private boolean superFrontEndUseCaseInitialized = false;
101
102
103
104
105
106 private FrontEndUseCase getSuperFrontEndUseCase()
107 {
108 if (!this.superFrontEndUseCaseInitialized)
109 {
110 ((MetafacadeBase)this.superFrontEndUseCase).setMetafacadeContext(this.getMetafacadeContext());
111 this.superFrontEndUseCaseInitialized = true;
112 }
113 return this.superFrontEndUseCase;
114 }
115
116
117
118
119
120 @Override
121 public void resetMetafacadeContext(String context)
122 {
123 if (!this.contextRoot)
124 {
125 context = getContext(context);
126 setMetafacadeContext (context);
127 if (this.superFrontEndUseCaseInitialized)
128 {
129 ((MetafacadeBase)this.superFrontEndUseCase).resetMetafacadeContext(context);
130 }
131 }
132 }
133
134
135
136
137
138 public boolean isStrutsUseCaseMetaType()
139 {
140 return true;
141 }
142
143
144
145
146
147
148
149 protected abstract String handleGetTitleKey();
150
151 private String __titleKey1a;
152 private boolean __titleKey1aSet = false;
153
154
155
156
157
158 public final String getTitleKey()
159 {
160 String titleKey1a = this.__titleKey1a;
161 if (!this.__titleKey1aSet)
162 {
163
164 titleKey1a = handleGetTitleKey();
165
166 this.__titleKey1a = titleKey1a;
167 if (isMetafacadePropertyCachingEnabled())
168 {
169 this.__titleKey1aSet = true;
170 }
171 }
172 return titleKey1a;
173 }
174
175
176
177
178
179 protected abstract String handleGetTitleValue();
180
181 private String __titleValue2a;
182 private boolean __titleValue2aSet = false;
183
184
185
186
187
188 public final String getTitleValue()
189 {
190 String titleValue2a = this.__titleValue2a;
191 if (!this.__titleValue2aSet)
192 {
193
194 titleValue2a = handleGetTitleValue();
195
196 this.__titleValue2a = titleValue2a;
197 if (isMetafacadePropertyCachingEnabled())
198 {
199 this.__titleValue2aSet = true;
200 }
201 }
202 return titleValue2a;
203 }
204
205
206
207
208
209 protected abstract String handleGetActionPath();
210
211 private String __actionPath3a;
212 private boolean __actionPath3aSet = false;
213
214
215
216
217
218 public final String getActionPath()
219 {
220 String actionPath3a = this.__actionPath3a;
221 if (!this.__actionPath3aSet)
222 {
223
224 actionPath3a = handleGetActionPath();
225
226 this.__actionPath3a = actionPath3a;
227 if (isMetafacadePropertyCachingEnabled())
228 {
229 this.__actionPath3aSet = true;
230 }
231 }
232 return actionPath3a;
233 }
234
235
236
237
238
239 protected abstract String handleGetActionPathRoot();
240
241 private String __actionPathRoot4a;
242 private boolean __actionPathRoot4aSet = false;
243
244
245
246
247
248 public final String getActionPathRoot()
249 {
250 String actionPathRoot4a = this.__actionPathRoot4a;
251 if (!this.__actionPathRoot4aSet)
252 {
253
254 actionPathRoot4a = handleGetActionPathRoot();
255
256 this.__actionPathRoot4a = actionPathRoot4a;
257 if (isMetafacadePropertyCachingEnabled())
258 {
259 this.__actionPathRoot4aSet = true;
260 }
261 }
262 return actionPathRoot4a;
263 }
264
265
266
267
268
269 protected abstract String handleGetActionRoles();
270
271 private String __actionRoles5a;
272 private boolean __actionRoles5aSet = false;
273
274
275
276
277
278
279
280 public final String getActionRoles()
281 {
282 String actionRoles5a = this.__actionRoles5a;
283 if (!this.__actionRoles5aSet)
284 {
285
286 actionRoles5a = handleGetActionRoles();
287
288 this.__actionRoles5a = actionRoles5a;
289 if (isMetafacadePropertyCachingEnabled())
290 {
291 this.__actionRoles5aSet = true;
292 }
293 }
294 return actionRoles5a;
295 }
296
297
298
299
300
301 protected abstract boolean handleIsApplicationValidationRequired();
302
303 private boolean __applicationValidationRequired6a;
304 private boolean __applicationValidationRequired6aSet = false;
305
306
307
308
309
310
311 public final boolean isApplicationValidationRequired()
312 {
313 boolean applicationValidationRequired6a = this.__applicationValidationRequired6a;
314 if (!this.__applicationValidationRequired6aSet)
315 {
316
317 applicationValidationRequired6a = handleIsApplicationValidationRequired();
318
319 this.__applicationValidationRequired6a = applicationValidationRequired6a;
320 if (isMetafacadePropertyCachingEnabled())
321 {
322 this.__applicationValidationRequired6aSet = true;
323 }
324 }
325 return applicationValidationRequired6a;
326 }
327
328
329
330
331
332 protected abstract boolean handleIsValidationRequired();
333
334 private boolean __validationRequired7a;
335 private boolean __validationRequired7aSet = false;
336
337
338
339
340
341 public final boolean isValidationRequired()
342 {
343 boolean validationRequired7a = this.__validationRequired7a;
344 if (!this.__validationRequired7aSet)
345 {
346
347 validationRequired7a = handleIsValidationRequired();
348
349 this.__validationRequired7a = validationRequired7a;
350 if (isMetafacadePropertyCachingEnabled())
351 {
352 this.__validationRequired7aSet = true;
353 }
354 }
355 return validationRequired7a;
356 }
357
358
359
360
361
362 protected abstract String handleGetOnlineHelpKey();
363
364 private String __onlineHelpKey8a;
365 private boolean __onlineHelpKey8aSet = false;
366
367
368
369
370
371
372 public final String getOnlineHelpKey()
373 {
374 String onlineHelpKey8a = this.__onlineHelpKey8a;
375 if (!this.__onlineHelpKey8aSet)
376 {
377
378 onlineHelpKey8a = handleGetOnlineHelpKey();
379
380 this.__onlineHelpKey8a = onlineHelpKey8a;
381 if (isMetafacadePropertyCachingEnabled())
382 {
383 this.__onlineHelpKey8aSet = true;
384 }
385 }
386 return onlineHelpKey8a;
387 }
388
389
390
391
392
393 protected abstract String handleGetOnlineHelpValue();
394
395 private String __onlineHelpValue9a;
396 private boolean __onlineHelpValue9aSet = false;
397
398
399
400
401
402
403 public final String getOnlineHelpValue()
404 {
405 String onlineHelpValue9a = this.__onlineHelpValue9a;
406 if (!this.__onlineHelpValue9aSet)
407 {
408
409 onlineHelpValue9a = handleGetOnlineHelpValue();
410
411 this.__onlineHelpValue9a = onlineHelpValue9a;
412 if (isMetafacadePropertyCachingEnabled())
413 {
414 this.__onlineHelpValue9aSet = true;
415 }
416 }
417 return onlineHelpValue9a;
418 }
419
420
421
422
423
424 protected abstract boolean handleIsApplicationUseCase();
425
426 private boolean __applicationUseCase10a;
427 private boolean __applicationUseCase10aSet = false;
428
429
430
431
432
433 public final boolean isApplicationUseCase()
434 {
435 boolean applicationUseCase10a = this.__applicationUseCase10a;
436 if (!this.__applicationUseCase10aSet)
437 {
438
439 applicationUseCase10a = handleIsApplicationUseCase();
440
441 this.__applicationUseCase10a = applicationUseCase10a;
442 if (isMetafacadePropertyCachingEnabled())
443 {
444 this.__applicationUseCase10aSet = true;
445 }
446 }
447 return applicationUseCase10a;
448 }
449
450
451
452
453
454 protected abstract TreeNode handleGetApplicationHierarchyRoot();
455
456 private TreeNode __applicationHierarchyRoot11a;
457 private boolean __applicationHierarchyRoot11aSet = false;
458
459
460
461
462
463
464
465
466 public final TreeNode getApplicationHierarchyRoot()
467 {
468 TreeNode applicationHierarchyRoot11a = this.__applicationHierarchyRoot11a;
469 if (!this.__applicationHierarchyRoot11aSet)
470 {
471
472 applicationHierarchyRoot11a = handleGetApplicationHierarchyRoot();
473
474 this.__applicationHierarchyRoot11a = applicationHierarchyRoot11a;
475 if (isMetafacadePropertyCachingEnabled())
476 {
477 this.__applicationHierarchyRoot11aSet = true;
478 }
479 }
480 return applicationHierarchyRoot11a;
481 }
482
483
484
485
486
487 protected abstract TreeNode handleGetHierarchyRoot();
488
489 private TreeNode __hierarchyRoot12a;
490 private boolean __hierarchyRoot12aSet = false;
491
492
493
494
495
496
497
498 public final TreeNode getHierarchyRoot()
499 {
500 TreeNode hierarchyRoot12a = this.__hierarchyRoot12a;
501 if (!this.__hierarchyRoot12aSet)
502 {
503
504 hierarchyRoot12a = handleGetHierarchyRoot();
505
506 this.__hierarchyRoot12a = hierarchyRoot12a;
507 if (isMetafacadePropertyCachingEnabled())
508 {
509 this.__hierarchyRoot12aSet = true;
510 }
511 }
512 return hierarchyRoot12a;
513 }
514
515
516
517
518
519 protected abstract String handleGetCssFileName();
520
521 private String __cssFileName13a;
522 private boolean __cssFileName13aSet = false;
523
524
525
526
527
528 public final String getCssFileName()
529 {
530 String cssFileName13a = this.__cssFileName13a;
531 if (!this.__cssFileName13aSet)
532 {
533
534 cssFileName13a = handleGetCssFileName();
535
536 this.__cssFileName13a = cssFileName13a;
537 if (isMetafacadePropertyCachingEnabled())
538 {
539 this.__cssFileName13aSet = true;
540 }
541 }
542 return cssFileName13a;
543 }
544
545
546
547
548
549 protected abstract Map handleGetAllMessages();
550
551 private Map __allMessages14a;
552 private boolean __allMessages14aSet = false;
553
554
555
556
557
558
559 public final Map getAllMessages()
560 {
561 Map allMessages14a = this.__allMessages14a;
562 if (!this.__allMessages14aSet)
563 {
564
565 allMessages14a = handleGetAllMessages();
566
567 this.__allMessages14a = allMessages14a;
568 if (isMetafacadePropertyCachingEnabled())
569 {
570 this.__allMessages14aSet = true;
571 }
572 }
573 return allMessages14a;
574 }
575
576
577
578
579
580 protected abstract boolean handleIsCyclic();
581
582 private boolean __cyclic15a;
583 private boolean __cyclic15aSet = false;
584
585
586
587
588
589
590 public final boolean isCyclic()
591 {
592 boolean cyclic15a = this.__cyclic15a;
593 if (!this.__cyclic15aSet)
594 {
595
596 cyclic15a = handleIsCyclic();
597
598 this.__cyclic15a = cyclic15a;
599 if (isMetafacadePropertyCachingEnabled())
600 {
601 this.__cyclic15aSet = true;
602 }
603 }
604 return cyclic15a;
605 }
606
607
608
609
610
611 protected abstract String handleGetOnlineHelpPagePath();
612
613 private String __onlineHelpPagePath16a;
614 private boolean __onlineHelpPagePath16aSet = false;
615
616
617
618
619
620
621 public final String getOnlineHelpPagePath()
622 {
623 String onlineHelpPagePath16a = this.__onlineHelpPagePath16a;
624 if (!this.__onlineHelpPagePath16aSet)
625 {
626
627 onlineHelpPagePath16a = handleGetOnlineHelpPagePath();
628
629 this.__onlineHelpPagePath16a = onlineHelpPagePath16a;
630 if (isMetafacadePropertyCachingEnabled())
631 {
632 this.__onlineHelpPagePath16aSet = true;
633 }
634 }
635 return onlineHelpPagePath16a;
636 }
637
638
639
640
641
642 protected abstract String handleGetOnlineHelpActionPath();
643
644 private String __onlineHelpActionPath17a;
645 private boolean __onlineHelpActionPath17aSet = false;
646
647
648
649
650
651
652 public final String getOnlineHelpActionPath()
653 {
654 String onlineHelpActionPath17a = this.__onlineHelpActionPath17a;
655 if (!this.__onlineHelpActionPath17aSet)
656 {
657
658 onlineHelpActionPath17a = handleGetOnlineHelpActionPath();
659
660 this.__onlineHelpActionPath17a = onlineHelpActionPath17a;
661 if (isMetafacadePropertyCachingEnabled())
662 {
663 this.__onlineHelpActionPath17aSet = true;
664 }
665 }
666 return onlineHelpActionPath17a;
667 }
668
669
670
671
672
673 protected abstract String handleGetFormKey();
674
675 private String __formKey18a;
676 private boolean __formKey18aSet = false;
677
678
679
680
681
682 public final String getFormKey()
683 {
684 String formKey18a = this.__formKey18a;
685 if (!this.__formKey18aSet)
686 {
687
688 formKey18a = handleGetFormKey();
689
690 this.__formKey18a = formKey18a;
691 if (isMetafacadePropertyCachingEnabled())
692 {
693 this.__formKey18aSet = true;
694 }
695 }
696 return formKey18a;
697 }
698
699
700
701 private List<StrutsParameter> __getPageVariables1r;
702 private boolean __getPageVariables1rSet = false;
703
704
705
706
707
708 public final List<StrutsParameter> getPageVariables()
709 {
710 List<StrutsParameter> getPageVariables1r = this.__getPageVariables1r;
711 if (!this.__getPageVariables1rSet)
712 {
713
714 List result = handleGetPageVariables();
715 List shieldedResult = this.shieldedElements(result);
716 try
717 {
718 getPageVariables1r = (List<StrutsParameter>)shieldedResult;
719 }
720 catch (ClassCastException ex)
721 {
722
723 StrutsUseCaseLogic.logger.warn("incorrect metafacade cast for StrutsUseCaseLogic.getPageVariables List<StrutsParameter> " + result + ": " + shieldedResult);
724 }
725
726 this.__getPageVariables1r = getPageVariables1r;
727 if (isMetafacadePropertyCachingEnabled())
728 {
729 this.__getPageVariables1rSet = true;
730 }
731 }
732 return getPageVariables1r;
733 }
734
735
736
737
738
739 protected abstract List handleGetPageVariables();
740
741 private List<StrutsJsp> __getAllPages2r;
742 private boolean __getAllPages2rSet = false;
743
744
745
746
747
748 public final List<StrutsJsp> getAllPages()
749 {
750 List<StrutsJsp> getAllPages2r = this.__getAllPages2r;
751 if (!this.__getAllPages2rSet)
752 {
753
754 List result = handleGetAllPages();
755 List shieldedResult = this.shieldedElements(result);
756 try
757 {
758 getAllPages2r = (List<StrutsJsp>)shieldedResult;
759 }
760 catch (ClassCastException ex)
761 {
762
763 StrutsUseCaseLogic.logger.warn("incorrect metafacade cast for StrutsUseCaseLogic.getAllPages List<StrutsJsp> " + result + ": " + shieldedResult);
764 }
765
766 this.__getAllPages2r = getAllPages2r;
767 if (isMetafacadePropertyCachingEnabled())
768 {
769 this.__getAllPages2rSet = true;
770 }
771 }
772 return getAllPages2r;
773 }
774
775
776
777
778
779 protected abstract List handleGetAllPages();
780
781 private List<StrutsParameter> __getFormFields3r;
782 private boolean __getFormFields3rSet = false;
783
784
785
786
787
788 public final List<StrutsParameter> getFormFields()
789 {
790 List<StrutsParameter> getFormFields3r = this.__getFormFields3r;
791 if (!this.__getFormFields3rSet)
792 {
793
794 List result = handleGetFormFields();
795 List shieldedResult = this.shieldedElements(result);
796 try
797 {
798 getFormFields3r = (List<StrutsParameter>)shieldedResult;
799 }
800 catch (ClassCastException ex)
801 {
802
803 StrutsUseCaseLogic.logger.warn("incorrect metafacade cast for StrutsUseCaseLogic.getFormFields List<StrutsParameter> " + result + ": " + shieldedResult);
804 }
805
806 this.__getFormFields3r = getFormFields3r;
807 if (isMetafacadePropertyCachingEnabled())
808 {
809 this.__getFormFields3rSet = true;
810 }
811 }
812 return getFormFields3r;
813 }
814
815
816
817
818
819 protected abstract List handleGetFormFields();
820
821 private List<StrutsJsp> __getPages4r;
822 private boolean __getPages4rSet = false;
823
824
825
826
827
828 public final List<StrutsJsp> getPages()
829 {
830 List<StrutsJsp> getPages4r = this.__getPages4r;
831 if (!this.__getPages4rSet)
832 {
833
834 List result = handleGetPages();
835 List shieldedResult = this.shieldedElements(result);
836 try
837 {
838 getPages4r = (List<StrutsJsp>)shieldedResult;
839 }
840 catch (ClassCastException ex)
841 {
842
843 StrutsUseCaseLogic.logger.warn("incorrect metafacade cast for StrutsUseCaseLogic.getPages List<StrutsJsp> " + result + ": " + shieldedResult);
844 }
845
846 this.__getPages4r = getPages4r;
847 if (isMetafacadePropertyCachingEnabled())
848 {
849 this.__getPages4rSet = true;
850 }
851 }
852 return getPages4r;
853 }
854
855
856
857
858
859 protected abstract List handleGetPages();
860
861
862
863
864
865 public boolean isFrontEndUseCaseMetaType()
866 {
867 return true;
868 }
869
870
871
872
873
874 public boolean isUseCaseFacadeMetaType()
875 {
876 return true;
877 }
878
879
880
881
882
883 public boolean isNamespaceFacadeMetaType()
884 {
885 return true;
886 }
887
888
889
890
891
892 public boolean isClassifierFacadeMetaType()
893 {
894 return true;
895 }
896
897
898
899
900
901 public boolean isGeneralizableElementFacadeMetaType()
902 {
903 return true;
904 }
905
906
907
908
909
910 public boolean isModelElementFacadeMetaType()
911 {
912 return true;
913 }
914
915
916
917
918
919
920 public AttributeFacade findAttribute(String name)
921 {
922 return this.getSuperFrontEndUseCase().findAttribute(name);
923 }
924
925
926
927
928
929 public Collection<ClassifierFacade> getAbstractions()
930 {
931 return this.getSuperFrontEndUseCase().getAbstractions();
932 }
933
934
935
936
937
938
939 public Collection<ClassifierFacade> getAllAssociatedClasses()
940 {
941 return this.getSuperFrontEndUseCase().getAllAssociatedClasses();
942 }
943
944
945
946
947
948
949 public Collection<ModelElementFacade> getAllProperties()
950 {
951 return this.getSuperFrontEndUseCase().getAllProperties();
952 }
953
954
955
956
957
958
959 public Collection<ModelElementFacade> getAllRequiredConstructorParameters()
960 {
961 return this.getSuperFrontEndUseCase().getAllRequiredConstructorParameters();
962 }
963
964
965
966
967
968
969 public ClassifierFacade getArray()
970 {
971 return this.getSuperFrontEndUseCase().getArray();
972 }
973
974
975
976
977
978 public String getArrayName()
979 {
980 return this.getSuperFrontEndUseCase().getArrayName();
981 }
982
983
984
985
986
987
988 public Collection<ClassifierFacade> getAssociatedClasses()
989 {
990 return this.getSuperFrontEndUseCase().getAssociatedClasses();
991 }
992
993
994
995
996
997 public List<AssociationEndFacade> getAssociationEnds()
998 {
999 return this.getSuperFrontEndUseCase().getAssociationEnds();
1000 }
1001
1002
1003
1004
1005
1006 public List<AttributeFacade> getAttributes()
1007 {
1008 return this.getSuperFrontEndUseCase().getAttributes();
1009 }
1010
1011
1012
1013
1014
1015
1016 public List<AttributeFacade> getAttributes(boolean follow)
1017 {
1018 return this.getSuperFrontEndUseCase().getAttributes(follow);
1019 }
1020
1021
1022
1023
1024
1025 public String getFullyQualifiedArrayName()
1026 {
1027 return this.getSuperFrontEndUseCase().getFullyQualifiedArrayName();
1028 }
1029
1030
1031
1032
1033
1034
1035
1036
1037 public Collection<OperationFacade> getImplementationOperations()
1038 {
1039 return this.getSuperFrontEndUseCase().getImplementationOperations();
1040 }
1041
1042
1043
1044
1045
1046 public String getImplementedInterfaceList()
1047 {
1048 return this.getSuperFrontEndUseCase().getImplementedInterfaceList();
1049 }
1050
1051
1052
1053
1054
1055 public Collection<AttributeFacade> getInstanceAttributes()
1056 {
1057 return this.getSuperFrontEndUseCase().getInstanceAttributes();
1058 }
1059
1060
1061
1062
1063
1064 public List<OperationFacade> getInstanceOperations()
1065 {
1066 return this.getSuperFrontEndUseCase().getInstanceOperations();
1067 }
1068
1069
1070
1071
1072
1073
1074 public Collection<ClassifierFacade> getInterfaceAbstractions()
1075 {
1076 return this.getSuperFrontEndUseCase().getInterfaceAbstractions();
1077 }
1078
1079
1080
1081
1082
1083
1084 public String getJavaNewString()
1085 {
1086 return this.getSuperFrontEndUseCase().getJavaNewString();
1087 }
1088
1089
1090
1091
1092
1093
1094 public String getJavaNullString()
1095 {
1096 return this.getSuperFrontEndUseCase().getJavaNullString();
1097 }
1098
1099
1100
1101
1102
1103 public Collection<AssociationEndFacade> getNavigableConnectingEnds()
1104 {
1105 return this.getSuperFrontEndUseCase().getNavigableConnectingEnds();
1106 }
1107
1108
1109
1110
1111
1112
1113 public List<AssociationEndFacade> getNavigableConnectingEnds(boolean follow)
1114 {
1115 return this.getSuperFrontEndUseCase().getNavigableConnectingEnds(follow);
1116 }
1117
1118
1119
1120
1121
1122
1123
1124 public ClassifierFacade getNonArray()
1125 {
1126 return this.getSuperFrontEndUseCase().getNonArray();
1127 }
1128
1129
1130
1131
1132
1133
1134
1135 public String getOperationCallFromAttributes()
1136 {
1137 return this.getSuperFrontEndUseCase().getOperationCallFromAttributes();
1138 }
1139
1140
1141
1142
1143
1144 public List<OperationFacade> getOperations()
1145 {
1146 return this.getSuperFrontEndUseCase().getOperations();
1147 }
1148
1149
1150
1151
1152
1153
1154 public List<ModelElementFacade> getProperties()
1155 {
1156 return this.getSuperFrontEndUseCase().getProperties();
1157 }
1158
1159
1160
1161
1162
1163
1164
1165 public List getProperties(boolean follow)
1166 {
1167 return this.getSuperFrontEndUseCase().getProperties(follow);
1168 }
1169
1170
1171
1172
1173
1174
1175 public Collection<ModelElementFacade> getRequiredConstructorParameters()
1176 {
1177 return this.getSuperFrontEndUseCase().getRequiredConstructorParameters();
1178 }
1179
1180
1181
1182
1183
1184 public long getSerialVersionUID()
1185 {
1186 return this.getSuperFrontEndUseCase().getSerialVersionUID();
1187 }
1188
1189
1190
1191
1192
1193 public Collection<AttributeFacade> getStaticAttributes()
1194 {
1195 return this.getSuperFrontEndUseCase().getStaticAttributes();
1196 }
1197
1198
1199
1200
1201
1202 public List<OperationFacade> getStaticOperations()
1203 {
1204 return this.getSuperFrontEndUseCase().getStaticOperations();
1205 }
1206
1207
1208
1209
1210
1211
1212 public ClassifierFacade getSuperClass()
1213 {
1214 return this.getSuperFrontEndUseCase().getSuperClass();
1215 }
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225 public String getWrapperName()
1226 {
1227 return this.getSuperFrontEndUseCase().getWrapperName();
1228 }
1229
1230
1231
1232
1233
1234 public boolean isAbstract()
1235 {
1236 return this.getSuperFrontEndUseCase().isAbstract();
1237 }
1238
1239
1240
1241
1242
1243 public boolean isArrayType()
1244 {
1245 return this.getSuperFrontEndUseCase().isArrayType();
1246 }
1247
1248
1249
1250
1251
1252 public boolean isAssociationClass()
1253 {
1254 return this.getSuperFrontEndUseCase().isAssociationClass();
1255 }
1256
1257
1258
1259
1260
1261 public boolean isBlobType()
1262 {
1263 return this.getSuperFrontEndUseCase().isBlobType();
1264 }
1265
1266
1267
1268
1269
1270 public boolean isBooleanType()
1271 {
1272 return this.getSuperFrontEndUseCase().isBooleanType();
1273 }
1274
1275
1276
1277
1278
1279 public boolean isCharacterType()
1280 {
1281 return this.getSuperFrontEndUseCase().isCharacterType();
1282 }
1283
1284
1285
1286
1287
1288 public boolean isClobType()
1289 {
1290 return this.getSuperFrontEndUseCase().isClobType();
1291 }
1292
1293
1294
1295
1296
1297 public boolean isCollectionType()
1298 {
1299 return this.getSuperFrontEndUseCase().isCollectionType();
1300 }
1301
1302
1303
1304
1305
1306
1307
1308 public boolean isDataType()
1309 {
1310 return this.getSuperFrontEndUseCase().isDataType();
1311 }
1312
1313
1314
1315
1316
1317 public boolean isDateType()
1318 {
1319 return this.getSuperFrontEndUseCase().isDateType();
1320 }
1321
1322
1323
1324
1325
1326 public boolean isDoubleType()
1327 {
1328 return this.getSuperFrontEndUseCase().isDoubleType();
1329 }
1330
1331
1332
1333
1334
1335 public boolean isEmbeddedValue()
1336 {
1337 return this.getSuperFrontEndUseCase().isEmbeddedValue();
1338 }
1339
1340
1341
1342
1343
1344 public boolean isEnumeration()
1345 {
1346 return this.getSuperFrontEndUseCase().isEnumeration();
1347 }
1348
1349
1350
1351
1352
1353 public boolean isFileType()
1354 {
1355 return this.getSuperFrontEndUseCase().isFileType();
1356 }
1357
1358
1359
1360
1361
1362 public boolean isFloatType()
1363 {
1364 return this.getSuperFrontEndUseCase().isFloatType();
1365 }
1366
1367
1368
1369
1370
1371 public boolean isIntegerType()
1372 {
1373 return this.getSuperFrontEndUseCase().isIntegerType();
1374 }
1375
1376
1377
1378
1379
1380 public boolean isInterface()
1381 {
1382 return this.getSuperFrontEndUseCase().isInterface();
1383 }
1384
1385
1386
1387
1388
1389 public boolean isLeaf()
1390 {
1391 return this.getSuperFrontEndUseCase().isLeaf();
1392 }
1393
1394
1395
1396
1397
1398 public boolean isListType()
1399 {
1400 return this.getSuperFrontEndUseCase().isListType();
1401 }
1402
1403
1404
1405
1406
1407 public boolean isLongType()
1408 {
1409 return this.getSuperFrontEndUseCase().isLongType();
1410 }
1411
1412
1413
1414
1415
1416 public boolean isMapType()
1417 {
1418 return this.getSuperFrontEndUseCase().isMapType();
1419 }
1420
1421
1422
1423
1424
1425 public boolean isPrimitive()
1426 {
1427 return this.getSuperFrontEndUseCase().isPrimitive();
1428 }
1429
1430
1431
1432
1433
1434 public boolean isSetType()
1435 {
1436 return this.getSuperFrontEndUseCase().isSetType();
1437 }
1438
1439
1440
1441
1442
1443 public boolean isStringType()
1444 {
1445 return this.getSuperFrontEndUseCase().isStringType();
1446 }
1447
1448
1449
1450
1451
1452 public boolean isTimeType()
1453 {
1454 return this.getSuperFrontEndUseCase().isTimeType();
1455 }
1456
1457
1458
1459
1460
1461 public boolean isWrappedPrimitive()
1462 {
1463 return this.getSuperFrontEndUseCase().isWrappedPrimitive();
1464 }
1465
1466
1467
1468
1469
1470 public List<FrontEndAction> getActions()
1471 {
1472 return this.getSuperFrontEndUseCase().getActions();
1473 }
1474
1475
1476
1477
1478
1479 public FrontEndActivityGraph getActivityGraph()
1480 {
1481 return this.getSuperFrontEndUseCase().getActivityGraph();
1482 }
1483
1484
1485
1486
1487
1488 public List<Role> getAllRoles()
1489 {
1490 return this.getSuperFrontEndUseCase().getAllRoles();
1491 }
1492
1493
1494
1495
1496
1497 public List<FrontEndUseCase> getAllUseCases()
1498 {
1499 return this.getSuperFrontEndUseCase().getAllUseCases();
1500 }
1501
1502
1503
1504
1505
1506 public FrontEndController getController()
1507 {
1508 return this.getSuperFrontEndUseCase().getController();
1509 }
1510
1511
1512
1513
1514
1515
1516 public FrontEndView getInitialView()
1517 {
1518 return this.getSuperFrontEndUseCase().getInitialView();
1519 }
1520
1521
1522
1523
1524
1525 public List<FrontEndFinalState> getReferencingFinalStates()
1526 {
1527 return this.getSuperFrontEndUseCase().getReferencingFinalStates();
1528 }
1529
1530
1531
1532
1533
1534 public List<Role> getRoles()
1535 {
1536 return this.getSuperFrontEndUseCase().getRoles();
1537 }
1538
1539
1540
1541
1542
1543
1544 public List<FrontEndParameter> getViewVariables()
1545 {
1546 return this.getSuperFrontEndUseCase().getViewVariables();
1547 }
1548
1549
1550
1551
1552
1553 public List<FrontEndView> getViews()
1554 {
1555 return this.getSuperFrontEndUseCase().getViews();
1556 }
1557
1558
1559
1560
1561
1562 public boolean isEntryUseCase()
1563 {
1564 return this.getSuperFrontEndUseCase().isEntryUseCase();
1565 }
1566
1567
1568
1569
1570
1571
1572 public boolean isSecured()
1573 {
1574 return this.getSuperFrontEndUseCase().isSecured();
1575 }
1576
1577
1578
1579
1580
1581
1582 public Object findTaggedValue(String tagName, boolean follow)
1583 {
1584 return this.getSuperFrontEndUseCase().findTaggedValue(tagName, follow);
1585 }
1586
1587
1588
1589
1590
1591 public Collection<GeneralizableElementFacade> getAllGeneralizations()
1592 {
1593 return this.getSuperFrontEndUseCase().getAllGeneralizations();
1594 }
1595
1596
1597
1598
1599
1600 public Collection<GeneralizableElementFacade> getAllSpecializations()
1601 {
1602 return this.getSuperFrontEndUseCase().getAllSpecializations();
1603 }
1604
1605
1606
1607
1608
1609 public GeneralizableElementFacade getGeneralization()
1610 {
1611 return this.getSuperFrontEndUseCase().getGeneralization();
1612 }
1613
1614
1615
1616
1617
1618
1619 public Collection<GeneralizationFacade> getGeneralizationLinks()
1620 {
1621 return this.getSuperFrontEndUseCase().getGeneralizationLinks();
1622 }
1623
1624
1625
1626
1627
1628 public String getGeneralizationList()
1629 {
1630 return this.getSuperFrontEndUseCase().getGeneralizationList();
1631 }
1632
1633
1634
1635
1636
1637
1638 public GeneralizableElementFacade getGeneralizationRoot()
1639 {
1640 return this.getSuperFrontEndUseCase().getGeneralizationRoot();
1641 }
1642
1643
1644
1645
1646
1647 public Collection<GeneralizableElementFacade> getGeneralizations()
1648 {
1649 return this.getSuperFrontEndUseCase().getGeneralizations();
1650 }
1651
1652
1653
1654
1655
1656 public Collection<GeneralizableElementFacade> getSpecializations()
1657 {
1658 return this.getSuperFrontEndUseCase().getSpecializations();
1659 }
1660
1661
1662
1663
1664
1665 public void copyTaggedValues(ModelElementFacade element)
1666 {
1667 this.getSuperFrontEndUseCase().copyTaggedValues(element);
1668 }
1669
1670
1671
1672
1673
1674
1675 public Object findTaggedValue(String tagName)
1676 {
1677 return this.getSuperFrontEndUseCase().findTaggedValue(tagName);
1678 }
1679
1680
1681
1682
1683
1684
1685 public Collection<Object> findTaggedValues(String tagName)
1686 {
1687 return this.getSuperFrontEndUseCase().findTaggedValues(tagName);
1688 }
1689
1690
1691
1692
1693
1694
1695
1696 public String getBindedFullyQualifiedName(ModelElementFacade bindedElement)
1697 {
1698 return this.getSuperFrontEndUseCase().getBindedFullyQualifiedName(bindedElement);
1699 }
1700
1701
1702
1703
1704
1705 public Collection<ConstraintFacade> getConstraints()
1706 {
1707 return this.getSuperFrontEndUseCase().getConstraints();
1708 }
1709
1710
1711
1712
1713
1714
1715 public Collection<ConstraintFacade> getConstraints(String kind)
1716 {
1717 return this.getSuperFrontEndUseCase().getConstraints(kind);
1718 }
1719
1720
1721
1722
1723
1724
1725
1726 public String getDocumentation(String indent)
1727 {
1728 return this.getSuperFrontEndUseCase().getDocumentation(indent);
1729 }
1730
1731
1732
1733
1734
1735
1736
1737
1738 public String getDocumentation(String indent, int lineLength)
1739 {
1740 return this.getSuperFrontEndUseCase().getDocumentation(indent, lineLength);
1741 }
1742
1743
1744
1745
1746
1747
1748
1749 public String getDocumentation(String indent, int lineLength, boolean htmlStyle)
1750 {
1751 return this.getSuperFrontEndUseCase().getDocumentation(indent, lineLength, htmlStyle);
1752 }
1753
1754
1755
1756
1757
1758 public String getFullyQualifiedName()
1759 {
1760 return this.getSuperFrontEndUseCase().getFullyQualifiedName();
1761 }
1762
1763
1764
1765
1766
1767
1768
1769
1770 public String getFullyQualifiedName(boolean modelName)
1771 {
1772 return this.getSuperFrontEndUseCase().getFullyQualifiedName(modelName);
1773 }
1774
1775
1776
1777
1778
1779
1780 public String getFullyQualifiedNamePath()
1781 {
1782 return this.getSuperFrontEndUseCase().getFullyQualifiedNamePath();
1783 }
1784
1785
1786
1787
1788
1789 public String getId()
1790 {
1791 return this.getSuperFrontEndUseCase().getId();
1792 }
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802 public Collection<String> getKeywords()
1803 {
1804 return this.getSuperFrontEndUseCase().getKeywords();
1805 }
1806
1807
1808
1809
1810
1811 public String getLabel()
1812 {
1813 return this.getSuperFrontEndUseCase().getLabel();
1814 }
1815
1816
1817
1818
1819
1820 public TypeMappings getLanguageMappings()
1821 {
1822 return this.getSuperFrontEndUseCase().getLanguageMappings();
1823 }
1824
1825
1826
1827
1828
1829
1830 public ModelFacade getModel()
1831 {
1832 return this.getSuperFrontEndUseCase().getModel();
1833 }
1834
1835
1836
1837
1838
1839 public String getName()
1840 {
1841 return this.getSuperFrontEndUseCase().getName();
1842 }
1843
1844
1845
1846
1847
1848 public ModelElementFacade getPackage()
1849 {
1850 return this.getSuperFrontEndUseCase().getPackage();
1851 }
1852
1853
1854
1855
1856
1857 public String getPackageName()
1858 {
1859 return this.getSuperFrontEndUseCase().getPackageName();
1860 }
1861
1862
1863
1864
1865
1866
1867 public String getPackageName(boolean modelName)
1868 {
1869 return this.getSuperFrontEndUseCase().getPackageName(modelName);
1870 }
1871
1872
1873
1874
1875
1876 public String getPackagePath()
1877 {
1878 return this.getSuperFrontEndUseCase().getPackagePath();
1879 }
1880
1881
1882
1883
1884
1885
1886
1887
1888 public String getQualifiedName()
1889 {
1890 return this.getSuperFrontEndUseCase().getQualifiedName();
1891 }
1892
1893
1894
1895
1896
1897 public PackageFacade getRootPackage()
1898 {
1899 return this.getSuperFrontEndUseCase().getRootPackage();
1900 }
1901
1902
1903
1904
1905
1906 public Collection<DependencyFacade> getSourceDependencies()
1907 {
1908 return this.getSuperFrontEndUseCase().getSourceDependencies();
1909 }
1910
1911
1912
1913
1914
1915
1916 public StateMachineFacade getStateMachineContext()
1917 {
1918 return this.getSuperFrontEndUseCase().getStateMachineContext();
1919 }
1920
1921
1922
1923
1924
1925 public Collection<String> getStereotypeNames()
1926 {
1927 return this.getSuperFrontEndUseCase().getStereotypeNames();
1928 }
1929
1930
1931
1932
1933
1934 public Collection<StereotypeFacade> getStereotypes()
1935 {
1936 return this.getSuperFrontEndUseCase().getStereotypes();
1937 }
1938
1939
1940
1941
1942
1943 public Collection<TaggedValueFacade> getTaggedValues()
1944 {
1945 return this.getSuperFrontEndUseCase().getTaggedValues();
1946 }
1947
1948
1949
1950
1951
1952 public Collection<DependencyFacade> getTargetDependencies()
1953 {
1954 return this.getSuperFrontEndUseCase().getTargetDependencies();
1955 }
1956
1957
1958
1959
1960
1961 public Object getTemplateParameter(String parameterName)
1962 {
1963 return this.getSuperFrontEndUseCase().getTemplateParameter(parameterName);
1964 }
1965
1966
1967
1968
1969
1970 public Collection<TemplateParameterFacade> getTemplateParameters()
1971 {
1972 return this.getSuperFrontEndUseCase().getTemplateParameters();
1973 }
1974
1975
1976
1977
1978
1979
1980 public String getVisibility()
1981 {
1982 return this.getSuperFrontEndUseCase().getVisibility();
1983 }
1984
1985
1986
1987
1988
1989
1990 public boolean hasExactStereotype(String stereotypeName)
1991 {
1992 return this.getSuperFrontEndUseCase().hasExactStereotype(stereotypeName);
1993 }
1994
1995
1996
1997
1998
1999
2000 public boolean hasKeyword(String keywordName)
2001 {
2002 return this.getSuperFrontEndUseCase().hasKeyword(keywordName);
2003 }
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017 public boolean hasStereotype(String stereotypeName)
2018 {
2019 return this.getSuperFrontEndUseCase().hasStereotype(stereotypeName);
2020 }
2021
2022
2023
2024
2025
2026
2027 public boolean isBindingDependenciesPresent()
2028 {
2029 return this.getSuperFrontEndUseCase().isBindingDependenciesPresent();
2030 }
2031
2032
2033
2034
2035
2036 public boolean isConstraintsPresent()
2037 {
2038 return this.getSuperFrontEndUseCase().isConstraintsPresent();
2039 }
2040
2041
2042
2043
2044
2045 public boolean isDocumentationPresent()
2046 {
2047 return this.getSuperFrontEndUseCase().isDocumentationPresent();
2048 }
2049
2050
2051
2052
2053
2054 public boolean isReservedWord()
2055 {
2056 return this.getSuperFrontEndUseCase().isReservedWord();
2057 }
2058
2059
2060
2061
2062
2063
2064 public boolean isTemplateParametersPresent()
2065 {
2066 return this.getSuperFrontEndUseCase().isTemplateParametersPresent();
2067 }
2068
2069
2070
2071
2072
2073
2074
2075 public boolean isValidIdentifierName()
2076 {
2077 return this.getSuperFrontEndUseCase().isValidIdentifierName();
2078 }
2079
2080
2081
2082
2083
2084
2085
2086 public String translateConstraint(String name, String translation)
2087 {
2088 return this.getSuperFrontEndUseCase().translateConstraint(name, translation);
2089 }
2090
2091
2092
2093
2094
2095 public String[] translateConstraints(String translation)
2096 {
2097 return this.getSuperFrontEndUseCase().translateConstraints(translation);
2098 }
2099
2100
2101
2102
2103
2104 public String[] translateConstraints(String kind, String translation)
2105 {
2106 return this.getSuperFrontEndUseCase().translateConstraints(kind, translation);
2107 }
2108
2109
2110
2111
2112
2113 public Collection<ModelElementFacade> getOwnedElements()
2114 {
2115 return this.getSuperFrontEndUseCase().getOwnedElements();
2116 }
2117
2118
2119
2120
2121
2122 public Collection<ExtendFacade> getExtends()
2123 {
2124 return this.getSuperFrontEndUseCase().getExtends();
2125 }
2126
2127
2128
2129
2130
2131 public Collection<ExtensionPointFacade> getExtensionPoints()
2132 {
2133 return this.getSuperFrontEndUseCase().getExtensionPoints();
2134 }
2135
2136
2137
2138
2139
2140 public ActivityGraphFacade getFirstActivityGraph()
2141 {
2142 return this.getSuperFrontEndUseCase().getFirstActivityGraph();
2143 }
2144
2145
2146
2147
2148
2149 public Collection<IncludeFacade> getIncludes()
2150 {
2151 return this.getSuperFrontEndUseCase().getIncludes();
2152 }
2153
2154
2155
2156
2157 @Override
2158 public void initialize()
2159 {
2160 this.getSuperFrontEndUseCase().initialize();
2161 }
2162
2163
2164
2165
2166
2167 @Override
2168 public Object getValidationOwner()
2169 {
2170 Object owner = this.getSuperFrontEndUseCase().getValidationOwner();
2171 return owner;
2172 }
2173
2174
2175
2176
2177
2178 @Override
2179 public String getValidationName()
2180 {
2181 String name = this.getSuperFrontEndUseCase().getValidationName();
2182 return name;
2183 }
2184
2185
2186
2187
2188
2189
2190
2191
2192 @Override
2193 public void validateInvariants(Collection<ModelValidationMessage> validationMessages)
2194 {
2195 this.getSuperFrontEndUseCase().validateInvariants(validationMessages);
2196 try
2197 {
2198 final Object contextElement = this.THIS();
2199 boolean constraintValid = OCLResultEnsurer.ensure((Boolean.valueOf(String.valueOf(OCLIntrospector.invoke(contextElement,"cyclic"))).booleanValue()?OCLCollections.notEmpty(OCLIntrospector.invoke(contextElement,"pages")):true));
2200 if (!constraintValid)
2201 {
2202 validationMessages.add(
2203 new ModelValidationMessage(
2204 (MetafacadeBase)contextElement ,
2205 "org::andromda::cartridges::bpm4struts::metafacades::StrutsUseCase::use-cases that loop need at least one page",
2206 "This use-case has a final state targetting the same use-case, while at the same time no pages have been modeled. This will lead to an infinite loop at runtime since the same event will keep invoking itself."));
2207 }
2208 }
2209 catch (Throwable th)
2210 {
2211 Throwable cause = th.getCause();
2212 int depth = 0;
2213 while (cause != null && depth < 7)
2214 {
2215 th = cause;
2216 depth++;
2217 }
2218 logger.error("Error validating constraint 'org::andromda::cartridges::bpm4struts::metafacades::StrutsUseCase::use-cases that loop need at least one page' ON "
2219 + this.THIS().toString() + ": " + th.getMessage(), th);
2220 }
2221 }
2222
2223
2224
2225
2226 private static final String NAME_PROPERTY = "name";
2227 private static final String FQNAME_PROPERTY = "fullyQualifiedName";
2228
2229
2230
2231
2232 @Override
2233 public String toString()
2234 {
2235 final StringBuilder toString = new StringBuilder(this.getClass().getName());
2236 toString.append("[");
2237 try
2238 {
2239 toString.append(Introspector.instance().getProperty(this, FQNAME_PROPERTY));
2240 }
2241 catch (final Throwable tryAgain)
2242 {
2243 try
2244 {
2245 toString.append(Introspector.instance().getProperty(this, NAME_PROPERTY));
2246 }
2247 catch (final Throwable ignore)
2248 {
2249
2250 }
2251 }
2252 toString.append("]");
2253 return toString.toString();
2254 }
2255 }