001// license-header java merge-point 002// 003// Attention: generated code (by MetafacadeLogic.vsl) - do not modify! 004// 005package org.andromda.metafacades.uml14; 006 007import java.util.Collection; 008import java.util.List; 009import org.andromda.core.metafacade.MetafacadeBase; 010import org.andromda.core.metafacade.ModelValidationMessage; 011import org.andromda.metafacades.uml.ActorFacade; 012import org.andromda.metafacades.uml.ManageableEntity; 013import org.andromda.metafacades.uml.ManageableEntityAssociationEnd; 014import org.andromda.metafacades.uml.ManageableEntityAttribute; 015import org.andromda.metafacades.uml.ModelElementFacade; 016import org.apache.log4j.Logger; 017 018/** 019 * An Entity that is Manageable: will produce CRUD operations in the EntityManager implementation. 020 * MetafacadeLogic for ManageableEntity 021 * 022 * @see ManageableEntity 023 */ 024public abstract class ManageableEntityLogic 025 extends EntityLogicImpl 026 implements ManageableEntity 027{ 028 /** 029 * The underlying UML object 030 * @see Object 031 */ 032 protected Object metaObject; 033 034 /** Create Metafacade implementation instance using the MetafacadeFactory from the context 035 * @param metaObjectIn 036 * @param context 037 */ 038 protected ManageableEntityLogic(Object metaObjectIn, String context) 039 { 040 super(metaObjectIn, getContext(context)); 041 this.metaObject = metaObjectIn; 042 } 043 044 /** 045 * The logger instance. 046 */ 047 private static final Logger logger = Logger.getLogger(ManageableEntityLogic.class); 048 049 /** 050 * Gets the context for this metafacade logic instance. 051 * @param context String. Set to ManageableEntity if null 052 * @return context String 053 */ 054 private static String getContext(String context) 055 { 056 if (context == null) 057 { 058 context = "org.andromda.metafacades.uml.ManageableEntity"; 059 } 060 return context; 061 } 062 063 /** Reset context only for non-root metafacades 064 * @param context 065 */ 066 @Override 067 public void resetMetafacadeContext(String context) 068 { 069 if (!this.contextRoot) // reset context only for non-root metafacades 070 { 071 context = getContext(context); // to have same value as in original constructor call 072 setMetafacadeContext (context); 073 } 074 } 075 076 /** 077 * @return boolean true always 078 * @see ManageableEntity 079 */ 080 public boolean isManageableEntityMetaType() 081 { 082 return true; 083 } 084 085 // --------------- attributes --------------------- 086 087 /** 088 * @see ManageableEntity#getManageablePackageName() 089 * @return String 090 */ 091 protected abstract String handleGetManageablePackageName(); 092 093 private String __manageablePackageName1a; 094 private boolean __manageablePackageName1aSet = false; 095 096 /** 097 * The entity package name. 098 * @return (String)handleGetManageablePackageName() 099 */ 100 public final String getManageablePackageName() 101 { 102 String manageablePackageName1a = this.__manageablePackageName1a; 103 if (!this.__manageablePackageName1aSet) 104 { 105 // manageablePackageName has no pre constraints 106 manageablePackageName1a = handleGetManageablePackageName(); 107 // manageablePackageName has no post constraints 108 this.__manageablePackageName1a = manageablePackageName1a; 109 if (isMetafacadePropertyCachingEnabled()) 110 { 111 this.__manageablePackageName1aSet = true; 112 } 113 } 114 return manageablePackageName1a; 115 } 116 117 /** 118 * @see ManageableEntity#getManageableServiceAccessorCall() 119 * @return String 120 */ 121 protected abstract String handleGetManageableServiceAccessorCall(); 122 123 private String __manageableServiceAccessorCall2a; 124 private boolean __manageableServiceAccessorCall2aSet = false; 125 126 /** 127 * The entity accessor (getter) call. 128 * @return (String)handleGetManageableServiceAccessorCall() 129 */ 130 public final String getManageableServiceAccessorCall() 131 { 132 String manageableServiceAccessorCall2a = this.__manageableServiceAccessorCall2a; 133 if (!this.__manageableServiceAccessorCall2aSet) 134 { 135 // manageableServiceAccessorCall has no pre constraints 136 manageableServiceAccessorCall2a = handleGetManageableServiceAccessorCall(); 137 // manageableServiceAccessorCall has no post constraints 138 this.__manageableServiceAccessorCall2a = manageableServiceAccessorCall2a; 139 if (isMetafacadePropertyCachingEnabled()) 140 { 141 this.__manageableServiceAccessorCall2aSet = true; 142 } 143 } 144 return manageableServiceAccessorCall2a; 145 } 146 147 /** 148 * @see ManageableEntity#isRead() 149 * @return boolean 150 */ 151 protected abstract boolean handleIsRead(); 152 153 private boolean __read3a; 154 private boolean __read3aSet = false; 155 156 /** 157 * Create a read operation on the entity manager? 158 * @return (boolean)handleIsRead() 159 */ 160 public final boolean isRead() 161 { 162 boolean read3a = this.__read3a; 163 if (!this.__read3aSet) 164 { 165 // read has no pre constraints 166 read3a = handleIsRead(); 167 // read has no post constraints 168 this.__read3a = read3a; 169 if (isMetafacadePropertyCachingEnabled()) 170 { 171 this.__read3aSet = true; 172 } 173 } 174 return read3a; 175 } 176 177 /** 178 * @see ManageableEntity#isCreate() 179 * @return boolean 180 */ 181 protected abstract boolean handleIsCreate(); 182 183 private boolean __create4a; 184 private boolean __create4aSet = false; 185 186 /** 187 * Create a create operation on the entity manager? 188 * @return (boolean)handleIsCreate() 189 */ 190 public final boolean isCreate() 191 { 192 boolean create4a = this.__create4a; 193 if (!this.__create4aSet) 194 { 195 // create has no pre constraints 196 create4a = handleIsCreate(); 197 // create has no post constraints 198 this.__create4a = create4a; 199 if (isMetafacadePropertyCachingEnabled()) 200 { 201 this.__create4aSet = true; 202 } 203 } 204 return create4a; 205 } 206 207 /** 208 * @see ManageableEntity#isUpdate() 209 * @return boolean 210 */ 211 protected abstract boolean handleIsUpdate(); 212 213 private boolean __update5a; 214 private boolean __update5aSet = false; 215 216 /** 217 * Create an update operation on the entity manager? 218 * @return (boolean)handleIsUpdate() 219 */ 220 public final boolean isUpdate() 221 { 222 boolean update5a = this.__update5a; 223 if (!this.__update5aSet) 224 { 225 // update has no pre constraints 226 update5a = handleIsUpdate(); 227 // update has no post constraints 228 this.__update5a = update5a; 229 if (isMetafacadePropertyCachingEnabled()) 230 { 231 this.__update5aSet = true; 232 } 233 } 234 return update5a; 235 } 236 237 /** 238 * @see ManageableEntity#isDelete() 239 * @return boolean 240 */ 241 protected abstract boolean handleIsDelete(); 242 243 private boolean __delete6a; 244 private boolean __delete6aSet = false; 245 246 /** 247 * Create a delete operation on the entity manager? 248 * @return (boolean)handleIsDelete() 249 */ 250 public final boolean isDelete() 251 { 252 boolean delete6a = this.__delete6a; 253 if (!this.__delete6aSet) 254 { 255 // delete has no pre constraints 256 delete6a = handleIsDelete(); 257 // delete has no post constraints 258 this.__delete6a = delete6a; 259 if (isMetafacadePropertyCachingEnabled()) 260 { 261 this.__delete6aSet = true; 262 } 263 } 264 return delete6a; 265 } 266 267 /** 268 * @see ManageableEntity#getManageablePackagePath() 269 * @return String 270 */ 271 protected abstract String handleGetManageablePackagePath(); 272 273 private String __manageablePackagePath7a; 274 private boolean __manageablePackagePath7aSet = false; 275 276 /** 277 * The Package path of the Entity 278 * @return (String)handleGetManageablePackagePath() 279 */ 280 public final String getManageablePackagePath() 281 { 282 String manageablePackagePath7a = this.__manageablePackagePath7a; 283 if (!this.__manageablePackagePath7aSet) 284 { 285 // manageablePackagePath has no pre constraints 286 manageablePackagePath7a = handleGetManageablePackagePath(); 287 // manageablePackagePath has no post constraints 288 this.__manageablePackagePath7a = manageablePackagePath7a; 289 if (isMetafacadePropertyCachingEnabled()) 290 { 291 this.__manageablePackagePath7aSet = true; 292 } 293 } 294 return manageablePackagePath7a; 295 } 296 297 /** 298 * @see ManageableEntity#getManageableServiceName() 299 * @return String 300 */ 301 protected abstract String handleGetManageableServiceName(); 302 303 private String __manageableServiceName8a; 304 private boolean __manageableServiceName8aSet = false; 305 306 /** 307 * The service name of the entity. 308 * @return (String)handleGetManageableServiceName() 309 */ 310 public final String getManageableServiceName() 311 { 312 String manageableServiceName8a = this.__manageableServiceName8a; 313 if (!this.__manageableServiceName8aSet) 314 { 315 // manageableServiceName has no pre constraints 316 manageableServiceName8a = handleGetManageableServiceName(); 317 // manageableServiceName has no post constraints 318 this.__manageableServiceName8a = manageableServiceName8a; 319 if (isMetafacadePropertyCachingEnabled()) 320 { 321 this.__manageableServiceName8aSet = true; 322 } 323 } 324 return manageableServiceName8a; 325 } 326 327 /** 328 * @see ManageableEntity#getFullyQualifiedManageableServiceName() 329 * @return String 330 */ 331 protected abstract String handleGetFullyQualifiedManageableServiceName(); 332 333 private String __fullyQualifiedManageableServiceName9a; 334 private boolean __fullyQualifiedManageableServiceName9aSet = false; 335 336 /** 337 * The fully qualified service name of the entity. 338 * @return (String)handleGetFullyQualifiedManageableServiceName() 339 */ 340 public final String getFullyQualifiedManageableServiceName() 341 { 342 String fullyQualifiedManageableServiceName9a = this.__fullyQualifiedManageableServiceName9a; 343 if (!this.__fullyQualifiedManageableServiceName9aSet) 344 { 345 // fullyQualifiedManageableServiceName has no pre constraints 346 fullyQualifiedManageableServiceName9a = handleGetFullyQualifiedManageableServiceName(); 347 // fullyQualifiedManageableServiceName has no post constraints 348 this.__fullyQualifiedManageableServiceName9a = fullyQualifiedManageableServiceName9a; 349 if (isMetafacadePropertyCachingEnabled()) 350 { 351 this.__fullyQualifiedManageableServiceName9aSet = true; 352 } 353 } 354 return fullyQualifiedManageableServiceName9a; 355 } 356 357 /** 358 * @see ManageableEntity#getManageableServiceFullPath() 359 * @return String 360 */ 361 protected abstract String handleGetManageableServiceFullPath(); 362 363 private String __manageableServiceFullPath10a; 364 private boolean __manageableServiceFullPath10aSet = false; 365 366 /** 367 * The service full path of the entity. 368 * @return (String)handleGetManageableServiceFullPath() 369 */ 370 public final String getManageableServiceFullPath() 371 { 372 String manageableServiceFullPath10a = this.__manageableServiceFullPath10a; 373 if (!this.__manageableServiceFullPath10aSet) 374 { 375 // manageableServiceFullPath has no pre constraints 376 manageableServiceFullPath10a = handleGetManageableServiceFullPath(); 377 // manageableServiceFullPath has no post constraints 378 this.__manageableServiceFullPath10a = manageableServiceFullPath10a; 379 if (isMetafacadePropertyCachingEnabled()) 380 { 381 this.__manageableServiceFullPath10aSet = true; 382 } 383 } 384 return manageableServiceFullPath10a; 385 } 386 387 /** 388 * @see ManageableEntity#getManageableMembers() 389 * @return List<ModelElementFacade> 390 */ 391 protected abstract List<ModelElementFacade> handleGetManageableMembers(); 392 393 private List<ModelElementFacade> __manageableMembers11a; 394 private boolean __manageableMembers11aSet = false; 395 396 /** 397 * ManageableAttributes and ManageableAssociationEnds 398 * @return (List<ModelElementFacade>)handleGetManageableMembers() 399 */ 400 public final List<ModelElementFacade> getManageableMembers() 401 { 402 List<ModelElementFacade> manageableMembers11a = this.__manageableMembers11a; 403 if (!this.__manageableMembers11aSet) 404 { 405 // manageableMembers has no pre constraints 406 manageableMembers11a = handleGetManageableMembers(); 407 // manageableMembers has no post constraints 408 this.__manageableMembers11a = manageableMembers11a; 409 if (isMetafacadePropertyCachingEnabled()) 410 { 411 this.__manageableMembers11aSet = true; 412 } 413 } 414 return manageableMembers11a; 415 } 416 417 /** 418 * @see ManageableEntity#isManageable() 419 * @return boolean 420 */ 421 protected abstract boolean handleIsManageable(); 422 423 private boolean __manageable12a; 424 private boolean __manageable12aSet = false; 425 426 /** 427 * True: Entity is manageable. 428 * @return (boolean)handleIsManageable() 429 */ 430 public final boolean isManageable() 431 { 432 boolean manageable12a = this.__manageable12a; 433 if (!this.__manageable12aSet) 434 { 435 // manageable has no pre constraints 436 manageable12a = handleIsManageable(); 437 // manageable has no post constraints 438 this.__manageable12a = manageable12a; 439 if (isMetafacadePropertyCachingEnabled()) 440 { 441 this.__manageable12aSet = true; 442 } 443 } 444 return manageable12a; 445 } 446 447 /** 448 * @see ManageableEntity#getMaximumListSize() 449 * @return int 450 */ 451 protected abstract int handleGetMaximumListSize(); 452 453 private int __maximumListSize13a; 454 private boolean __maximumListSize13aSet = false; 455 456 /** 457 * The maximum number of rows to load from the database. 458 * @return (int)handleGetMaximumListSize() 459 */ 460 public final int getMaximumListSize() 461 { 462 int maximumListSize13a = this.__maximumListSize13a; 463 if (!this.__maximumListSize13aSet) 464 { 465 // maximumListSize has no pre constraints 466 maximumListSize13a = handleGetMaximumListSize(); 467 // maximumListSize has no post constraints 468 this.__maximumListSize13a = maximumListSize13a; 469 if (isMetafacadePropertyCachingEnabled()) 470 { 471 this.__maximumListSize13aSet = true; 472 } 473 } 474 return maximumListSize13a; 475 } 476 477 /** 478 * @see ManageableEntity#getPageSize() 479 * @return int 480 */ 481 protected abstract int handleGetPageSize(); 482 483 private int __pageSize14a; 484 private boolean __pageSize14aSet = false; 485 486 /** 487 * The maximum number of rows to load from the database. 488 * @return (int)handleGetPageSize() 489 */ 490 public final int getPageSize() 491 { 492 int pageSize14a = this.__pageSize14a; 493 if (!this.__pageSize14aSet) 494 { 495 // pageSize has no pre constraints 496 pageSize14a = handleGetPageSize(); 497 // pageSize has no post constraints 498 this.__pageSize14a = pageSize14a; 499 if (isMetafacadePropertyCachingEnabled()) 500 { 501 this.__pageSize14aSet = true; 502 } 503 } 504 return pageSize14a; 505 } 506 507 /** 508 * @see ManageableEntity#isResolveable() 509 * @return boolean 510 */ 511 protected abstract boolean handleIsResolveable(); 512 513 private boolean __resolveable15a; 514 private boolean __resolveable15aSet = false; 515 516 /** 517 * The maximum number of rows to load from the database. 518 * @return (boolean)handleIsResolveable() 519 */ 520 public final boolean isResolveable() 521 { 522 boolean resolveable15a = this.__resolveable15a; 523 if (!this.__resolveable15aSet) 524 { 525 // resolveable has no pre constraints 526 resolveable15a = handleIsResolveable(); 527 // resolveable has no post constraints 528 this.__resolveable15a = resolveable15a; 529 if (isMetafacadePropertyCachingEnabled()) 530 { 531 this.__resolveable15aSet = true; 532 } 533 } 534 return resolveable15a; 535 } 536 537 // ---------------- business methods ---------------------- 538 539 /** 540 * Method to be implemented in descendants 541 * Returns a string with the attributes without wrapper types. 542 * @param withTypes 543 * @return String 544 */ 545 protected abstract String handleListManageableMembers(boolean withTypes); 546 547 /** 548 * Returns a string with the attributes without wrapper types. 549 * @param withTypes boolean 550 * TODO: Model Documentation for 551 * ManageableEntity.listManageableMembers(withTypes) 552 * @return handleListManageableMembers(withTypes) 553 */ 554 public String listManageableMembers(boolean withTypes) 555 { 556 // listManageableMembers has no pre constraints 557 String returnValue = handleListManageableMembers(withTypes); 558 // listManageableMembers has no post constraints 559 return returnValue; 560 } 561 562 /** 563 * Method to be implemented in descendants 564 * Returns a string with the attributes and wrapper types. 565 * @return String 566 */ 567 protected abstract String handleListManageableMembersWithWrapperTypes(); 568 569 /** 570 * Returns a string with the attributes and wrapper types. 571 * @return handleListManageableMembersWithWrapperTypes() 572 */ 573 public String listManageableMembersWithWrapperTypes() 574 { 575 // listManageableMembersWithWrapperTypes has no pre constraints 576 String returnValue = handleListManageableMembersWithWrapperTypes(); 577 // listManageableMembersWithWrapperTypes has no post constraints 578 return returnValue; 579 } 580 581 // ------------- associations ------------------ 582 583 private List<ActorFacade> __getUsers1r; 584 private boolean __getUsers1rSet = false; 585 586 /** 587 * An Entity that is Manageable: will produce CRUD operations in the EntityManager 588 * implementation. 589 * @return (List<ActorFacade>)handleGetUsers() 590 */ 591 public final List<ActorFacade> getUsers() 592 { 593 List<ActorFacade> getUsers1r = this.__getUsers1r; 594 if (!this.__getUsers1rSet) 595 { 596 // manageableEntity has no pre constraints 597 List result = handleGetUsers(); 598 List shieldedResult = this.shieldedElements(result); 599 try 600 { 601 getUsers1r = (List<ActorFacade>)shieldedResult; 602 } 603 catch (ClassCastException ex) 604 { 605 // Bad things happen if the metafacade type mapping in metafacades.xml is wrong - Warn 606 ManageableEntityLogic.logger.warn("incorrect metafacade cast for ManageableEntityLogic.getUsers List<ActorFacade> " + result + ": " + shieldedResult); 607 } 608 // manageableEntity has no post constraints 609 this.__getUsers1r = getUsers1r; 610 if (isMetafacadePropertyCachingEnabled()) 611 { 612 this.__getUsers1rSet = true; 613 } 614 } 615 return getUsers1r; 616 } 617 618 /** 619 * UML Specific type is returned in Collection, transformed by shieldedElements to AndroMDA Metafacade type 620 * @return List 621 */ 622 protected abstract List handleGetUsers(); 623 624 private List<ManageableEntityAssociationEnd> __getManageableAssociationEnds2r; 625 private boolean __getManageableAssociationEnds2rSet = false; 626 627 /** 628 * An Entity that is Manageable: will produce CRUD operations in the EntityManager 629 * implementation. 630 * @return (List<ManageableEntityAssociationEnd>)handleGetManageableAssociationEnds() 631 */ 632 public final List<ManageableEntityAssociationEnd> getManageableAssociationEnds() 633 { 634 List<ManageableEntityAssociationEnd> getManageableAssociationEnds2r = this.__getManageableAssociationEnds2r; 635 if (!this.__getManageableAssociationEnds2rSet) 636 { 637 // manageableEntity has no pre constraints 638 List result = handleGetManageableAssociationEnds(); 639 List shieldedResult = this.shieldedElements(result); 640 try 641 { 642 getManageableAssociationEnds2r = (List<ManageableEntityAssociationEnd>)shieldedResult; 643 } 644 catch (ClassCastException ex) 645 { 646 // Bad things happen if the metafacade type mapping in metafacades.xml is wrong - Warn 647 ManageableEntityLogic.logger.warn("incorrect metafacade cast for ManageableEntityLogic.getManageableAssociationEnds List<ManageableEntityAssociationEnd> " + result + ": " + shieldedResult); 648 } 649 // manageableEntity has no post constraints 650 this.__getManageableAssociationEnds2r = getManageableAssociationEnds2r; 651 if (isMetafacadePropertyCachingEnabled()) 652 { 653 this.__getManageableAssociationEnds2rSet = true; 654 } 655 } 656 return getManageableAssociationEnds2r; 657 } 658 659 /** 660 * UML Specific type is returned in Collection, transformed by shieldedElements to AndroMDA Metafacade type 661 * @return List 662 */ 663 protected abstract List handleGetManageableAssociationEnds(); 664 665 private ManageableEntityAttribute __getDisplayAttribute3r; 666 private boolean __getDisplayAttribute3rSet = false; 667 668 /** 669 * An Entity that is Manageable: will produce CRUD operations in the EntityManager 670 * implementation. 671 * @return (ManageableEntityAttribute)handleGetDisplayAttribute() 672 */ 673 public final ManageableEntityAttribute getDisplayAttribute() 674 { 675 ManageableEntityAttribute getDisplayAttribute3r = this.__getDisplayAttribute3r; 676 if (!this.__getDisplayAttribute3rSet) 677 { 678 // manageableEntity has no pre constraints 679 Object result = handleGetDisplayAttribute(); 680 MetafacadeBase shieldedResult = this.shieldedElement(result); 681 try 682 { 683 getDisplayAttribute3r = (ManageableEntityAttribute)shieldedResult; 684 } 685 catch (ClassCastException ex) 686 { 687 // Bad things happen if the metafacade type mapping in metafacades.xml is wrong - Warn 688 ManageableEntityLogic.logger.warn("incorrect metafacade cast for ManageableEntityLogic.getDisplayAttribute ManageableEntityAttribute " + result + ": " + shieldedResult); 689 } 690 // manageableEntity has no post constraints 691 this.__getDisplayAttribute3r = getDisplayAttribute3r; 692 if (isMetafacadePropertyCachingEnabled()) 693 { 694 this.__getDisplayAttribute3rSet = true; 695 } 696 } 697 return getDisplayAttribute3r; 698 } 699 700 /** 701 * UML Specific type is transformed by shieldedElements to AndroMDA Metafacade type 702 * @return Object 703 */ 704 protected abstract Object handleGetDisplayAttribute(); 705 706 /** 707 * An Entity that is Manageable: will produce CRUD operations in the EntityManager 708 * implementation. 709 * @return (List<ManageableEntity>)handleGetReferencingManageables() 710 */ 711 public final List<ManageableEntity> getReferencingManageables() 712 { 713 List<ManageableEntity> getReferencingManageables4r = null; 714 // manageableEntity has no pre constraints 715 List result = handleGetReferencingManageables(); 716 List shieldedResult = this.shieldedElements(result); 717 try 718 { 719 getReferencingManageables4r = (List<ManageableEntity>)shieldedResult; 720 } 721 catch (ClassCastException ex) 722 { 723 // Bad things happen if the metafacade type mapping in metafacades.xml is wrong - Warn 724 ManageableEntityLogic.logger.warn("incorrect metafacade cast for ManageableEntityLogic.getReferencingManageables List<ManageableEntity> " + result + ": " + shieldedResult); 725 } 726 // manageableEntity has no post constraints 727 return getReferencingManageables4r; 728 } 729 730 /** 731 * UML Specific type is returned in Collection, transformed by shieldedElements to AndroMDA Metafacade type 732 * @return List 733 */ 734 protected abstract List handleGetReferencingManageables(); 735 736 private List<ManageableEntity> __getAllManageables5r; 737 private boolean __getAllManageables5rSet = false; 738 739 /** 740 * An Entity that is Manageable: will produce CRUD operations in the EntityManager 741 * implementation. 742 * @return (List<ManageableEntity>)handleGetAllManageables() 743 */ 744 public final List<ManageableEntity> getAllManageables() 745 { 746 List<ManageableEntity> getAllManageables5r = this.__getAllManageables5r; 747 if (!this.__getAllManageables5rSet) 748 { 749 // manageableEntity has no pre constraints 750 List result = handleGetAllManageables(); 751 List shieldedResult = this.shieldedElements(result); 752 try 753 { 754 getAllManageables5r = (List<ManageableEntity>)shieldedResult; 755 } 756 catch (ClassCastException ex) 757 { 758 // Bad things happen if the metafacade type mapping in metafacades.xml is wrong - Warn 759 ManageableEntityLogic.logger.warn("incorrect metafacade cast for ManageableEntityLogic.getAllManageables List<ManageableEntity> " + result + ": " + shieldedResult); 760 } 761 // manageableEntity has no post constraints 762 this.__getAllManageables5r = getAllManageables5r; 763 if (isMetafacadePropertyCachingEnabled()) 764 { 765 this.__getAllManageables5rSet = true; 766 } 767 } 768 return getAllManageables5r; 769 } 770 771 /** 772 * UML Specific type is returned in Collection, transformed by shieldedElements to AndroMDA Metafacade type 773 * @return List 774 */ 775 protected abstract List handleGetAllManageables(); 776 777 private List<ManageableEntityAttribute> __getManageableAttributes6r; 778 private boolean __getManageableAttributes6rSet = false; 779 780 /** 781 * An Entity that is Manageable: will produce CRUD operations in the EntityManager 782 * implementation. 783 * @return (List<ManageableEntityAttribute>)handleGetManageableAttributes() 784 */ 785 public final List<ManageableEntityAttribute> getManageableAttributes() 786 { 787 List<ManageableEntityAttribute> getManageableAttributes6r = this.__getManageableAttributes6r; 788 if (!this.__getManageableAttributes6rSet) 789 { 790 // manageableEntity has no pre constraints 791 List result = handleGetManageableAttributes(); 792 List shieldedResult = this.shieldedElements(result); 793 try 794 { 795 getManageableAttributes6r = (List<ManageableEntityAttribute>)shieldedResult; 796 } 797 catch (ClassCastException ex) 798 { 799 // Bad things happen if the metafacade type mapping in metafacades.xml is wrong - Warn 800 ManageableEntityLogic.logger.warn("incorrect metafacade cast for ManageableEntityLogic.getManageableAttributes List<ManageableEntityAttribute> " + result + ": " + shieldedResult); 801 } 802 // manageableEntity has no post constraints 803 this.__getManageableAttributes6r = getManageableAttributes6r; 804 if (isMetafacadePropertyCachingEnabled()) 805 { 806 this.__getManageableAttributes6rSet = true; 807 } 808 } 809 return getManageableAttributes6r; 810 } 811 812 /** 813 * UML Specific type is returned in Collection, transformed by shieldedElements to AndroMDA Metafacade type 814 * @return List 815 */ 816 protected abstract List handleGetManageableAttributes(); 817 818 private ManageableEntityAttribute __getManageableIdentifier7r; 819 private boolean __getManageableIdentifier7rSet = false; 820 821 /** 822 * An Entity that is Manageable: will produce CRUD operations in the EntityManager 823 * implementation. 824 * @return (ManageableEntityAttribute)handleGetManageableIdentifier() 825 */ 826 public final ManageableEntityAttribute getManageableIdentifier() 827 { 828 ManageableEntityAttribute getManageableIdentifier7r = this.__getManageableIdentifier7r; 829 if (!this.__getManageableIdentifier7rSet) 830 { 831 // manageableEntity has no pre constraints 832 Object result = handleGetManageableIdentifier(); 833 MetafacadeBase shieldedResult = this.shieldedElement(result); 834 try 835 { 836 getManageableIdentifier7r = (ManageableEntityAttribute)shieldedResult; 837 } 838 catch (ClassCastException ex) 839 { 840 // Bad things happen if the metafacade type mapping in metafacades.xml is wrong - Warn 841 ManageableEntityLogic.logger.warn("incorrect metafacade cast for ManageableEntityLogic.getManageableIdentifier ManageableEntityAttribute " + result + ": " + shieldedResult); 842 } 843 // manageableEntity has no post constraints 844 this.__getManageableIdentifier7r = getManageableIdentifier7r; 845 if (isMetafacadePropertyCachingEnabled()) 846 { 847 this.__getManageableIdentifier7rSet = true; 848 } 849 } 850 return getManageableIdentifier7r; 851 } 852 853 /** 854 * UML Specific type is transformed by shieldedElements to AndroMDA Metafacade type 855 * @return Object 856 */ 857 protected abstract Object handleGetManageableIdentifier(); 858 859 /** 860 * @param validationMessages Collection<ModelValidationMessage> 861 * @see EntityLogicImpl#validateInvariants(Collection validationMessages) 862 */ 863 @Override 864 public void validateInvariants(Collection<ModelValidationMessage> validationMessages) 865 { 866 super.validateInvariants(validationMessages); 867 } 868}