1
2
3
4
5 package org.andromda.cartridges.spring.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.AssociationEndFacade;
14 import org.andromda.metafacades.uml.AttributeFacade;
15 import org.andromda.metafacades.uml.ClassifierFacade;
16 import org.andromda.metafacades.uml.ConstraintFacade;
17 import org.andromda.metafacades.uml.DependencyFacade;
18 import org.andromda.metafacades.uml.GeneralizableElementFacade;
19 import org.andromda.metafacades.uml.GeneralizationFacade;
20 import org.andromda.metafacades.uml.ModelElementFacade;
21 import org.andromda.metafacades.uml.ModelFacade;
22 import org.andromda.metafacades.uml.OperationFacade;
23 import org.andromda.metafacades.uml.PackageFacade;
24 import org.andromda.metafacades.uml.StateMachineFacade;
25 import org.andromda.metafacades.uml.StereotypeFacade;
26 import org.andromda.metafacades.uml.TaggedValueFacade;
27 import org.andromda.metafacades.uml.TemplateParameterFacade;
28 import org.andromda.metafacades.uml.Topic;
29 import org.andromda.metafacades.uml.TypeMappings;
30
31
32
33
34
35
36
37 public abstract class SpringTopicLogic
38 extends MetafacadeBase
39 implements SpringTopic
40 {
41
42
43
44
45 protected Object metaObject;
46
47
48
49
50
51 protected SpringTopicLogic(Object metaObjectIn, String context)
52 {
53 super(metaObjectIn, getContext(context));
54 this.superTopic =
55 (Topic)
56 MetafacadeFactory.getInstance().createFacadeImpl(
57 "org.andromda.metafacades.uml.Topic",
58 metaObjectIn,
59 getContext(context));
60 this.metaObject = metaObjectIn;
61 }
62
63
64
65
66
67
68 private static String getContext(String context)
69 {
70 if (context == null)
71 {
72 context = "org.andromda.cartridges.spring.metafacades.SpringTopic";
73 }
74 return context;
75 }
76
77 private Topic superTopic;
78 private boolean superTopicInitialized = false;
79
80
81
82
83
84 private Topic getSuperTopic()
85 {
86 if (!this.superTopicInitialized)
87 {
88 ((MetafacadeBase)this.superTopic).setMetafacadeContext(this.getMetafacadeContext());
89 this.superTopicInitialized = true;
90 }
91 return this.superTopic;
92 }
93
94
95
96
97
98 @Override
99 public void resetMetafacadeContext(String context)
100 {
101 if (!this.contextRoot)
102 {
103 context = getContext(context);
104 setMetafacadeContext (context);
105 if (this.superTopicInitialized)
106 {
107 ((MetafacadeBase)this.superTopic).resetMetafacadeContext(context);
108 }
109 }
110 }
111
112
113
114
115
116 public boolean isSpringTopicMetaType()
117 {
118 return true;
119 }
120
121
122
123
124
125
126
127 protected abstract String handleGetBeanName();
128
129 private String __beanName1a;
130 private boolean __beanName1aSet = false;
131
132
133
134
135
136 public final String getBeanName()
137 {
138 String beanName1a = this.__beanName1a;
139 if (!this.__beanName1aSet)
140 {
141
142 beanName1a = handleGetBeanName();
143
144 this.__beanName1a = beanName1a;
145 if (isMetafacadePropertyCachingEnabled())
146 {
147 this.__beanName1aSet = true;
148 }
149 }
150 return beanName1a;
151 }
152
153
154
155
156
157 protected abstract String handleGetTemplateBeanName();
158
159 private String __templateBeanName2a;
160 private boolean __templateBeanName2aSet = false;
161
162
163
164
165
166 public final String getTemplateBeanName()
167 {
168 String templateBeanName2a = this.__templateBeanName2a;
169 if (!this.__templateBeanName2aSet)
170 {
171
172 templateBeanName2a = handleGetTemplateBeanName();
173
174 this.__templateBeanName2a = templateBeanName2a;
175 if (isMetafacadePropertyCachingEnabled())
176 {
177 this.__templateBeanName2aSet = true;
178 }
179 }
180 return templateBeanName2a;
181 }
182
183
184
185
186
187 protected abstract String handleGetTemplateGetterName();
188
189 private String __templateGetterName3a;
190 private boolean __templateGetterName3aSet = false;
191
192
193
194
195
196 public final String getTemplateGetterName()
197 {
198 String templateGetterName3a = this.__templateGetterName3a;
199 if (!this.__templateGetterName3aSet)
200 {
201
202 templateGetterName3a = handleGetTemplateGetterName();
203
204 this.__templateGetterName3a = templateGetterName3a;
205 if (isMetafacadePropertyCachingEnabled())
206 {
207 this.__templateGetterName3aSet = true;
208 }
209 }
210 return templateGetterName3a;
211 }
212
213
214
215
216
217 protected abstract String handleGetTemplateSetterName();
218
219 private String __templateSetterName4a;
220 private boolean __templateSetterName4aSet = false;
221
222
223
224
225
226 public final String getTemplateSetterName()
227 {
228 String templateSetterName4a = this.__templateSetterName4a;
229 if (!this.__templateSetterName4aSet)
230 {
231
232 templateSetterName4a = handleGetTemplateSetterName();
233
234 this.__templateSetterName4a = templateSetterName4a;
235 if (isMetafacadePropertyCachingEnabled())
236 {
237 this.__templateSetterName4aSet = true;
238 }
239 }
240 return templateSetterName4a;
241 }
242
243
244
245
246
247 public boolean isTopicMetaType()
248 {
249 return true;
250 }
251
252
253
254
255
256 public boolean isDestinationMetaType()
257 {
258 return true;
259 }
260
261
262
263
264
265 public boolean isNodeFacadeMetaType()
266 {
267 return true;
268 }
269
270
271
272
273
274 public boolean isClassifierFacadeMetaType()
275 {
276 return true;
277 }
278
279
280
281
282
283 public boolean isGeneralizableElementFacadeMetaType()
284 {
285 return true;
286 }
287
288
289
290
291
292 public boolean isModelElementFacadeMetaType()
293 {
294 return true;
295 }
296
297
298
299
300
301
302 public AttributeFacade findAttribute(String name)
303 {
304 return this.getSuperTopic().findAttribute(name);
305 }
306
307
308
309
310
311 public Collection<ClassifierFacade> getAbstractions()
312 {
313 return this.getSuperTopic().getAbstractions();
314 }
315
316
317
318
319
320
321 public Collection<ClassifierFacade> getAllAssociatedClasses()
322 {
323 return this.getSuperTopic().getAllAssociatedClasses();
324 }
325
326
327
328
329
330
331 public Collection<ModelElementFacade> getAllProperties()
332 {
333 return this.getSuperTopic().getAllProperties();
334 }
335
336
337
338
339
340
341 public Collection<ModelElementFacade> getAllRequiredConstructorParameters()
342 {
343 return this.getSuperTopic().getAllRequiredConstructorParameters();
344 }
345
346
347
348
349
350
351 public ClassifierFacade getArray()
352 {
353 return this.getSuperTopic().getArray();
354 }
355
356
357
358
359
360 public String getArrayName()
361 {
362 return this.getSuperTopic().getArrayName();
363 }
364
365
366
367
368
369
370 public Collection<ClassifierFacade> getAssociatedClasses()
371 {
372 return this.getSuperTopic().getAssociatedClasses();
373 }
374
375
376
377
378
379 public List<AssociationEndFacade> getAssociationEnds()
380 {
381 return this.getSuperTopic().getAssociationEnds();
382 }
383
384
385
386
387
388 public List<AttributeFacade> getAttributes()
389 {
390 return this.getSuperTopic().getAttributes();
391 }
392
393
394
395
396
397
398 public List<AttributeFacade> getAttributes(boolean follow)
399 {
400 return this.getSuperTopic().getAttributes(follow);
401 }
402
403
404
405
406
407 public String getFullyQualifiedArrayName()
408 {
409 return this.getSuperTopic().getFullyQualifiedArrayName();
410 }
411
412
413
414
415
416
417
418
419 public Collection<OperationFacade> getImplementationOperations()
420 {
421 return this.getSuperTopic().getImplementationOperations();
422 }
423
424
425
426
427
428 public String getImplementedInterfaceList()
429 {
430 return this.getSuperTopic().getImplementedInterfaceList();
431 }
432
433
434
435
436
437 public Collection<AttributeFacade> getInstanceAttributes()
438 {
439 return this.getSuperTopic().getInstanceAttributes();
440 }
441
442
443
444
445
446 public List<OperationFacade> getInstanceOperations()
447 {
448 return this.getSuperTopic().getInstanceOperations();
449 }
450
451
452
453
454
455
456 public Collection<ClassifierFacade> getInterfaceAbstractions()
457 {
458 return this.getSuperTopic().getInterfaceAbstractions();
459 }
460
461
462
463
464
465
466 public String getJavaNewString()
467 {
468 return this.getSuperTopic().getJavaNewString();
469 }
470
471
472
473
474
475
476 public String getJavaNullString()
477 {
478 return this.getSuperTopic().getJavaNullString();
479 }
480
481
482
483
484
485 public Collection<AssociationEndFacade> getNavigableConnectingEnds()
486 {
487 return this.getSuperTopic().getNavigableConnectingEnds();
488 }
489
490
491
492
493
494
495 public List<AssociationEndFacade> getNavigableConnectingEnds(boolean follow)
496 {
497 return this.getSuperTopic().getNavigableConnectingEnds(follow);
498 }
499
500
501
502
503
504
505
506 public ClassifierFacade getNonArray()
507 {
508 return this.getSuperTopic().getNonArray();
509 }
510
511
512
513
514
515
516
517 public String getOperationCallFromAttributes()
518 {
519 return this.getSuperTopic().getOperationCallFromAttributes();
520 }
521
522
523
524
525
526 public List<OperationFacade> getOperations()
527 {
528 return this.getSuperTopic().getOperations();
529 }
530
531
532
533
534
535
536 public List<ModelElementFacade> getProperties()
537 {
538 return this.getSuperTopic().getProperties();
539 }
540
541
542
543
544
545
546
547 public List getProperties(boolean follow)
548 {
549 return this.getSuperTopic().getProperties(follow);
550 }
551
552
553
554
555
556
557 public Collection<ModelElementFacade> getRequiredConstructorParameters()
558 {
559 return this.getSuperTopic().getRequiredConstructorParameters();
560 }
561
562
563
564
565
566 public long getSerialVersionUID()
567 {
568 return this.getSuperTopic().getSerialVersionUID();
569 }
570
571
572
573
574
575 public Collection<AttributeFacade> getStaticAttributes()
576 {
577 return this.getSuperTopic().getStaticAttributes();
578 }
579
580
581
582
583
584 public List<OperationFacade> getStaticOperations()
585 {
586 return this.getSuperTopic().getStaticOperations();
587 }
588
589
590
591
592
593
594 public ClassifierFacade getSuperClass()
595 {
596 return this.getSuperTopic().getSuperClass();
597 }
598
599
600
601
602
603
604
605
606
607 public String getWrapperName()
608 {
609 return this.getSuperTopic().getWrapperName();
610 }
611
612
613
614
615
616 public boolean isAbstract()
617 {
618 return this.getSuperTopic().isAbstract();
619 }
620
621
622
623
624
625 public boolean isArrayType()
626 {
627 return this.getSuperTopic().isArrayType();
628 }
629
630
631
632
633
634 public boolean isAssociationClass()
635 {
636 return this.getSuperTopic().isAssociationClass();
637 }
638
639
640
641
642
643 public boolean isBlobType()
644 {
645 return this.getSuperTopic().isBlobType();
646 }
647
648
649
650
651
652 public boolean isBooleanType()
653 {
654 return this.getSuperTopic().isBooleanType();
655 }
656
657
658
659
660
661 public boolean isCharacterType()
662 {
663 return this.getSuperTopic().isCharacterType();
664 }
665
666
667
668
669
670 public boolean isClobType()
671 {
672 return this.getSuperTopic().isClobType();
673 }
674
675
676
677
678
679 public boolean isCollectionType()
680 {
681 return this.getSuperTopic().isCollectionType();
682 }
683
684
685
686
687
688
689
690 public boolean isDataType()
691 {
692 return this.getSuperTopic().isDataType();
693 }
694
695
696
697
698
699 public boolean isDateType()
700 {
701 return this.getSuperTopic().isDateType();
702 }
703
704
705
706
707
708 public boolean isDoubleType()
709 {
710 return this.getSuperTopic().isDoubleType();
711 }
712
713
714
715
716
717 public boolean isEmbeddedValue()
718 {
719 return this.getSuperTopic().isEmbeddedValue();
720 }
721
722
723
724
725
726 public boolean isEnumeration()
727 {
728 return this.getSuperTopic().isEnumeration();
729 }
730
731
732
733
734
735 public boolean isFileType()
736 {
737 return this.getSuperTopic().isFileType();
738 }
739
740
741
742
743
744 public boolean isFloatType()
745 {
746 return this.getSuperTopic().isFloatType();
747 }
748
749
750
751
752
753 public boolean isIntegerType()
754 {
755 return this.getSuperTopic().isIntegerType();
756 }
757
758
759
760
761
762 public boolean isInterface()
763 {
764 return this.getSuperTopic().isInterface();
765 }
766
767
768
769
770
771 public boolean isLeaf()
772 {
773 return this.getSuperTopic().isLeaf();
774 }
775
776
777
778
779
780 public boolean isListType()
781 {
782 return this.getSuperTopic().isListType();
783 }
784
785
786
787
788
789 public boolean isLongType()
790 {
791 return this.getSuperTopic().isLongType();
792 }
793
794
795
796
797
798 public boolean isMapType()
799 {
800 return this.getSuperTopic().isMapType();
801 }
802
803
804
805
806
807 public boolean isPrimitive()
808 {
809 return this.getSuperTopic().isPrimitive();
810 }
811
812
813
814
815
816 public boolean isSetType()
817 {
818 return this.getSuperTopic().isSetType();
819 }
820
821
822
823
824
825 public boolean isStringType()
826 {
827 return this.getSuperTopic().isStringType();
828 }
829
830
831
832
833
834 public boolean isTimeType()
835 {
836 return this.getSuperTopic().isTimeType();
837 }
838
839
840
841
842
843 public boolean isWrappedPrimitive()
844 {
845 return this.getSuperTopic().isWrappedPrimitive();
846 }
847
848
849
850
851
852
853 public Object findTaggedValue(String tagName, boolean follow)
854 {
855 return this.getSuperTopic().findTaggedValue(tagName, follow);
856 }
857
858
859
860
861
862 public Collection<GeneralizableElementFacade> getAllGeneralizations()
863 {
864 return this.getSuperTopic().getAllGeneralizations();
865 }
866
867
868
869
870
871 public Collection<GeneralizableElementFacade> getAllSpecializations()
872 {
873 return this.getSuperTopic().getAllSpecializations();
874 }
875
876
877
878
879
880 public GeneralizableElementFacade getGeneralization()
881 {
882 return this.getSuperTopic().getGeneralization();
883 }
884
885
886
887
888
889
890 public Collection<GeneralizationFacade> getGeneralizationLinks()
891 {
892 return this.getSuperTopic().getGeneralizationLinks();
893 }
894
895
896
897
898
899 public String getGeneralizationList()
900 {
901 return this.getSuperTopic().getGeneralizationList();
902 }
903
904
905
906
907
908
909 public GeneralizableElementFacade getGeneralizationRoot()
910 {
911 return this.getSuperTopic().getGeneralizationRoot();
912 }
913
914
915
916
917
918 public Collection<GeneralizableElementFacade> getGeneralizations()
919 {
920 return this.getSuperTopic().getGeneralizations();
921 }
922
923
924
925
926
927 public Collection<GeneralizableElementFacade> getSpecializations()
928 {
929 return this.getSuperTopic().getSpecializations();
930 }
931
932
933
934
935
936 public void copyTaggedValues(ModelElementFacade element)
937 {
938 this.getSuperTopic().copyTaggedValues(element);
939 }
940
941
942
943
944
945
946 public Object findTaggedValue(String tagName)
947 {
948 return this.getSuperTopic().findTaggedValue(tagName);
949 }
950
951
952
953
954
955
956 public Collection<Object> findTaggedValues(String tagName)
957 {
958 return this.getSuperTopic().findTaggedValues(tagName);
959 }
960
961
962
963
964
965
966
967 public String getBindedFullyQualifiedName(ModelElementFacade bindedElement)
968 {
969 return this.getSuperTopic().getBindedFullyQualifiedName(bindedElement);
970 }
971
972
973
974
975
976 public Collection<ConstraintFacade> getConstraints()
977 {
978 return this.getSuperTopic().getConstraints();
979 }
980
981
982
983
984
985
986 public Collection<ConstraintFacade> getConstraints(String kind)
987 {
988 return this.getSuperTopic().getConstraints(kind);
989 }
990
991
992
993
994
995
996
997 public String getDocumentation(String indent)
998 {
999 return this.getSuperTopic().getDocumentation(indent);
1000 }
1001
1002
1003
1004
1005
1006
1007
1008
1009 public String getDocumentation(String indent, int lineLength)
1010 {
1011 return this.getSuperTopic().getDocumentation(indent, lineLength);
1012 }
1013
1014
1015
1016
1017
1018
1019
1020 public String getDocumentation(String indent, int lineLength, boolean htmlStyle)
1021 {
1022 return this.getSuperTopic().getDocumentation(indent, lineLength, htmlStyle);
1023 }
1024
1025
1026
1027
1028
1029 public String getFullyQualifiedName()
1030 {
1031 return this.getSuperTopic().getFullyQualifiedName();
1032 }
1033
1034
1035
1036
1037
1038
1039
1040
1041 public String getFullyQualifiedName(boolean modelName)
1042 {
1043 return this.getSuperTopic().getFullyQualifiedName(modelName);
1044 }
1045
1046
1047
1048
1049
1050
1051 public String getFullyQualifiedNamePath()
1052 {
1053 return this.getSuperTopic().getFullyQualifiedNamePath();
1054 }
1055
1056
1057
1058
1059
1060 public String getId()
1061 {
1062 return this.getSuperTopic().getId();
1063 }
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073 public Collection<String> getKeywords()
1074 {
1075 return this.getSuperTopic().getKeywords();
1076 }
1077
1078
1079
1080
1081
1082 public String getLabel()
1083 {
1084 return this.getSuperTopic().getLabel();
1085 }
1086
1087
1088
1089
1090
1091 public TypeMappings getLanguageMappings()
1092 {
1093 return this.getSuperTopic().getLanguageMappings();
1094 }
1095
1096
1097
1098
1099
1100
1101 public ModelFacade getModel()
1102 {
1103 return this.getSuperTopic().getModel();
1104 }
1105
1106
1107
1108
1109
1110 public String getName()
1111 {
1112 return this.getSuperTopic().getName();
1113 }
1114
1115
1116
1117
1118
1119 public ModelElementFacade getPackage()
1120 {
1121 return this.getSuperTopic().getPackage();
1122 }
1123
1124
1125
1126
1127
1128 public String getPackageName()
1129 {
1130 return this.getSuperTopic().getPackageName();
1131 }
1132
1133
1134
1135
1136
1137
1138 public String getPackageName(boolean modelName)
1139 {
1140 return this.getSuperTopic().getPackageName(modelName);
1141 }
1142
1143
1144
1145
1146
1147 public String getPackagePath()
1148 {
1149 return this.getSuperTopic().getPackagePath();
1150 }
1151
1152
1153
1154
1155
1156
1157
1158
1159 public String getQualifiedName()
1160 {
1161 return this.getSuperTopic().getQualifiedName();
1162 }
1163
1164
1165
1166
1167
1168 public PackageFacade getRootPackage()
1169 {
1170 return this.getSuperTopic().getRootPackage();
1171 }
1172
1173
1174
1175
1176
1177 public Collection<DependencyFacade> getSourceDependencies()
1178 {
1179 return this.getSuperTopic().getSourceDependencies();
1180 }
1181
1182
1183
1184
1185
1186
1187 public StateMachineFacade getStateMachineContext()
1188 {
1189 return this.getSuperTopic().getStateMachineContext();
1190 }
1191
1192
1193
1194
1195
1196 public Collection<String> getStereotypeNames()
1197 {
1198 return this.getSuperTopic().getStereotypeNames();
1199 }
1200
1201
1202
1203
1204
1205 public Collection<StereotypeFacade> getStereotypes()
1206 {
1207 return this.getSuperTopic().getStereotypes();
1208 }
1209
1210
1211
1212
1213
1214 public Collection<TaggedValueFacade> getTaggedValues()
1215 {
1216 return this.getSuperTopic().getTaggedValues();
1217 }
1218
1219
1220
1221
1222
1223 public Collection<DependencyFacade> getTargetDependencies()
1224 {
1225 return this.getSuperTopic().getTargetDependencies();
1226 }
1227
1228
1229
1230
1231
1232 public Object getTemplateParameter(String parameterName)
1233 {
1234 return this.getSuperTopic().getTemplateParameter(parameterName);
1235 }
1236
1237
1238
1239
1240
1241 public Collection<TemplateParameterFacade> getTemplateParameters()
1242 {
1243 return this.getSuperTopic().getTemplateParameters();
1244 }
1245
1246
1247
1248
1249
1250
1251 public String getVisibility()
1252 {
1253 return this.getSuperTopic().getVisibility();
1254 }
1255
1256
1257
1258
1259
1260
1261 public boolean hasExactStereotype(String stereotypeName)
1262 {
1263 return this.getSuperTopic().hasExactStereotype(stereotypeName);
1264 }
1265
1266
1267
1268
1269
1270
1271 public boolean hasKeyword(String keywordName)
1272 {
1273 return this.getSuperTopic().hasKeyword(keywordName);
1274 }
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288 public boolean hasStereotype(String stereotypeName)
1289 {
1290 return this.getSuperTopic().hasStereotype(stereotypeName);
1291 }
1292
1293
1294
1295
1296
1297
1298 public boolean isBindingDependenciesPresent()
1299 {
1300 return this.getSuperTopic().isBindingDependenciesPresent();
1301 }
1302
1303
1304
1305
1306
1307 public boolean isConstraintsPresent()
1308 {
1309 return this.getSuperTopic().isConstraintsPresent();
1310 }
1311
1312
1313
1314
1315
1316 public boolean isDocumentationPresent()
1317 {
1318 return this.getSuperTopic().isDocumentationPresent();
1319 }
1320
1321
1322
1323
1324
1325 public boolean isReservedWord()
1326 {
1327 return this.getSuperTopic().isReservedWord();
1328 }
1329
1330
1331
1332
1333
1334
1335 public boolean isTemplateParametersPresent()
1336 {
1337 return this.getSuperTopic().isTemplateParametersPresent();
1338 }
1339
1340
1341
1342
1343
1344
1345
1346 public boolean isValidIdentifierName()
1347 {
1348 return this.getSuperTopic().isValidIdentifierName();
1349 }
1350
1351
1352
1353
1354
1355
1356
1357 public String translateConstraint(String name, String translation)
1358 {
1359 return this.getSuperTopic().translateConstraint(name, translation);
1360 }
1361
1362
1363
1364
1365
1366 public String[] translateConstraints(String translation)
1367 {
1368 return this.getSuperTopic().translateConstraints(translation);
1369 }
1370
1371
1372
1373
1374
1375 public String[] translateConstraints(String kind, String translation)
1376 {
1377 return this.getSuperTopic().translateConstraints(kind, translation);
1378 }
1379
1380
1381
1382
1383 @Override
1384 public void initialize()
1385 {
1386 this.getSuperTopic().initialize();
1387 }
1388
1389
1390
1391
1392
1393 @Override
1394 public Object getValidationOwner()
1395 {
1396 Object owner = this.getSuperTopic().getValidationOwner();
1397 return owner;
1398 }
1399
1400
1401
1402
1403
1404 @Override
1405 public String getValidationName()
1406 {
1407 String name = this.getSuperTopic().getValidationName();
1408 return name;
1409 }
1410
1411
1412
1413
1414
1415 @Override
1416 public void validateInvariants(Collection<ModelValidationMessage> validationMessages)
1417 {
1418 this.getSuperTopic().validateInvariants(validationMessages);
1419 }
1420
1421
1422
1423
1424 private static final String NAME_PROPERTY = "name";
1425 private static final String FQNAME_PROPERTY = "fullyQualifiedName";
1426
1427
1428
1429
1430 @Override
1431 public String toString()
1432 {
1433 final StringBuilder toString = new StringBuilder(this.getClass().getName());
1434 toString.append("[");
1435 try
1436 {
1437 toString.append(Introspector.instance().getProperty(this, FQNAME_PROPERTY));
1438 }
1439 catch (final Throwable tryAgain)
1440 {
1441 try
1442 {
1443 toString.append(Introspector.instance().getProperty(this, NAME_PROPERTY));
1444 }
1445 catch (final Throwable ignore)
1446 {
1447
1448 }
1449 }
1450 toString.append("]");
1451 return toString.toString();
1452 }
1453 }