001// license-header java merge-point 002// 003// Attention: generated code (by MetafacadeLogic.vsl) - do not modify! 004// 005package org.andromda.cartridges.bpm4struts.metafacades; 006 007import java.util.Collection; 008import java.util.List; 009import org.andromda.core.common.Introspector; 010import org.andromda.core.metafacade.MetafacadeBase; 011import org.andromda.core.metafacade.MetafacadeFactory; 012import org.andromda.core.metafacade.ModelValidationMessage; 013import org.andromda.metafacades.uml.ActionFacade; 014import org.andromda.metafacades.uml.ConstraintFacade; 015import org.andromda.metafacades.uml.DependencyFacade; 016import org.andromda.metafacades.uml.EventFacade; 017import org.andromda.metafacades.uml.FrontEndAction; 018import org.andromda.metafacades.uml.FrontEndExceptionHandler; 019import org.andromda.metafacades.uml.FrontEndForward; 020import org.andromda.metafacades.uml.FrontEndParameter; 021import org.andromda.metafacades.uml.FrontEndUseCase; 022import org.andromda.metafacades.uml.FrontEndView; 023import org.andromda.metafacades.uml.ModelElementFacade; 024import org.andromda.metafacades.uml.ModelFacade; 025import org.andromda.metafacades.uml.OperationFacade; 026import org.andromda.metafacades.uml.PackageFacade; 027import org.andromda.metafacades.uml.PartitionFacade; 028import org.andromda.metafacades.uml.StateFacade; 029import org.andromda.metafacades.uml.StateMachineFacade; 030import org.andromda.metafacades.uml.StereotypeFacade; 031import org.andromda.metafacades.uml.TaggedValueFacade; 032import org.andromda.metafacades.uml.TemplateParameterFacade; 033import org.andromda.metafacades.uml.TransitionFacade; 034import org.andromda.metafacades.uml.TypeMappings; 035import org.apache.log4j.Logger; 036 037/** 038 * A Struts JSP represents a page in the web application. A page possibly contains several forms and 039 * triggers (either buttons or hyperlinks) that call actions. 040 * MetafacadeLogic for StrutsJsp 041 * 042 * @see StrutsJsp 043 */ 044public abstract class StrutsJspLogic 045 extends MetafacadeBase 046 implements StrutsJsp 047{ 048 /** 049 * The underlying UML object 050 * @see Object 051 */ 052 protected Object metaObject; 053 054 /** Create Metafacade implementation instance using the MetafacadeFactory from the context 055 * @param metaObjectIn 056 * @param context 057 */ 058 protected StrutsJspLogic(Object metaObjectIn, String context) 059 { 060 super(metaObjectIn, getContext(context)); 061 this.superStrutsActionState = 062 (StrutsActionState) 063 MetafacadeFactory.getInstance().createFacadeImpl( 064 "org.andromda.cartridges.bpm4struts.metafacades.StrutsActionState", 065 metaObjectIn, 066 getContext(context)); 067 this.superFrontEndView = 068 (FrontEndView) 069 MetafacadeFactory.getInstance().createFacadeImpl( 070 "org.andromda.metafacades.uml.FrontEndView", 071 metaObjectIn, 072 getContext(context)); 073 this.metaObject = metaObjectIn; 074 } 075 076 /** 077 * The logger instance. 078 */ 079 private static final Logger logger = Logger.getLogger(StrutsJspLogic.class); 080 081 /** 082 * Gets the context for this metafacade logic instance. 083 * @param context String. Set to StrutsJsp if null 084 * @return context String 085 */ 086 private static String getContext(String context) 087 { 088 if (context == null) 089 { 090 context = "org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp"; 091 } 092 return context; 093 } 094 095 private StrutsActionState superStrutsActionState; 096 private boolean superStrutsActionStateInitialized = false; 097 098 /** 099 * Gets the StrutsActionState parent instance. 100 * @return this.superStrutsActionState StrutsActionState 101 */ 102 protected StrutsActionState getSuperStrutsActionState() 103 { 104 if (!this.superStrutsActionStateInitialized) 105 { 106 ((MetafacadeBase)this.superStrutsActionState).setMetafacadeContext(this.getMetafacadeContext()); 107 this.superStrutsActionStateInitialized = true; 108 } 109 return this.superStrutsActionState; 110 } 111 112 private FrontEndView superFrontEndView; 113 private boolean superFrontEndViewInitialized = false; 114 115 /** 116 * Gets the FrontEndView parent instance. 117 * @return this.superFrontEndView FrontEndView 118 */ 119 protected FrontEndView getSuperFrontEndView() 120 { 121 if (!this.superFrontEndViewInitialized) 122 { 123 ((MetafacadeBase)this.superFrontEndView).setMetafacadeContext(this.getMetafacadeContext()); 124 this.superFrontEndViewInitialized = true; 125 } 126 return this.superFrontEndView; 127 } 128 129 /** Reset context only for non-root metafacades 130 * @param context 131 * @see org.andromda.core.metafacade.MetafacadeBase#resetMetafacadeContext(String context) 132 */ 133 @Override 134 public void resetMetafacadeContext(String context) 135 { 136 if (!this.contextRoot) // reset context only for non-root metafacades 137 { 138 context = getContext(context); // to have same value as in original constructor call 139 setMetafacadeContext (context); 140 if (this.superStrutsActionStateInitialized) 141 { 142 ((MetafacadeBase)this.superStrutsActionState).resetMetafacadeContext(context); 143 } 144 if (this.superFrontEndViewInitialized) 145 { 146 ((MetafacadeBase)this.superFrontEndView).resetMetafacadeContext(context); 147 } 148 } 149 } 150 151 /** 152 * @return boolean true always 153 * @see StrutsJsp 154 */ 155 public boolean isStrutsJspMetaType() 156 { 157 return true; 158 } 159 160 // --------------- attributes --------------------- 161 162 /** 163 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getFullPath() 164 * @return String 165 */ 166 protected abstract String handleGetFullPath(); 167 168 private String __fullPath1a; 169 private boolean __fullPath1aSet = false; 170 171 /** 172 * The full path to this JSP page. the returned String does not have a suffix such as '.jsp'. 173 * @return (String)handleGetFullPath() 174 */ 175 public final String getFullPath() 176 { 177 String fullPath1a = this.__fullPath1a; 178 if (!this.__fullPath1aSet) 179 { 180 // fullPath has no pre constraints 181 fullPath1a = handleGetFullPath(); 182 // fullPath has no post constraints 183 this.__fullPath1a = fullPath1a; 184 if (isMetafacadePropertyCachingEnabled()) 185 { 186 this.__fullPath1aSet = true; 187 } 188 } 189 return fullPath1a; 190 } 191 192 /** 193 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getTitleKey() 194 * @return String 195 */ 196 protected abstract String handleGetTitleKey(); 197 198 private String __titleKey2a; 199 private boolean __titleKey2aSet = false; 200 201 /** 202 * A resource message key suited for the page's title. 203 * @return (String)handleGetTitleKey() 204 */ 205 public final String getTitleKey() 206 { 207 String titleKey2a = this.__titleKey2a; 208 if (!this.__titleKey2aSet) 209 { 210 // titleKey has no pre constraints 211 titleKey2a = handleGetTitleKey(); 212 // titleKey has no post constraints 213 this.__titleKey2a = titleKey2a; 214 if (isMetafacadePropertyCachingEnabled()) 215 { 216 this.__titleKey2aSet = true; 217 } 218 } 219 return titleKey2a; 220 } 221 222 /** 223 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getTitleValue() 224 * @return String 225 */ 226 protected abstract String handleGetTitleValue(); 227 228 private String __titleValue3a; 229 private boolean __titleValue3aSet = false; 230 231 /** 232 * A default resource message value suited for the page's title. 233 * @return (String)handleGetTitleValue() 234 */ 235 public final String getTitleValue() 236 { 237 String titleValue3a = this.__titleValue3a; 238 if (!this.__titleValue3aSet) 239 { 240 // titleValue has no pre constraints 241 titleValue3a = handleGetTitleValue(); 242 // titleValue has no post constraints 243 this.__titleValue3a = titleValue3a; 244 if (isMetafacadePropertyCachingEnabled()) 245 { 246 this.__titleValue3aSet = true; 247 } 248 } 249 return titleValue3a; 250 } 251 252 /** 253 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getMessageKey() 254 * @return String 255 */ 256 protected abstract String handleGetMessageKey(); 257 258 private String __messageKey4a; 259 private boolean __messageKey4aSet = false; 260 261 /** 262 * The default resource message key. 263 * @return (String)handleGetMessageKey() 264 */ 265 public final String getMessageKey() 266 { 267 String messageKey4a = this.__messageKey4a; 268 if (!this.__messageKey4aSet) 269 { 270 // messageKey has no pre constraints 271 messageKey4a = handleGetMessageKey(); 272 // messageKey has no post constraints 273 this.__messageKey4a = messageKey4a; 274 if (isMetafacadePropertyCachingEnabled()) 275 { 276 this.__messageKey4aSet = true; 277 } 278 } 279 return messageKey4a; 280 } 281 282 /** 283 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getDocumentationKey() 284 * @return String 285 */ 286 protected abstract String handleGetDocumentationKey(); 287 288 private String __documentationKey5a; 289 private boolean __documentationKey5aSet = false; 290 291 /** 292 * A resource message key suited for the page's documentation. 293 * @return (String)handleGetDocumentationKey() 294 */ 295 public final String getDocumentationKey() 296 { 297 String documentationKey5a = this.__documentationKey5a; 298 if (!this.__documentationKey5aSet) 299 { 300 // documentationKey has no pre constraints 301 documentationKey5a = handleGetDocumentationKey(); 302 // documentationKey has no post constraints 303 this.__documentationKey5a = documentationKey5a; 304 if (isMetafacadePropertyCachingEnabled()) 305 { 306 this.__documentationKey5aSet = true; 307 } 308 } 309 return documentationKey5a; 310 } 311 312 /** 313 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getDocumentationValue() 314 * @return String 315 */ 316 protected abstract String handleGetDocumentationValue(); 317 318 private String __documentationValue6a; 319 private boolean __documentationValue6aSet = false; 320 321 /** 322 * A resource message value suited for the page's documentation. 323 * @return (String)handleGetDocumentationValue() 324 */ 325 public final String getDocumentationValue() 326 { 327 String documentationValue6a = this.__documentationValue6a; 328 if (!this.__documentationValue6aSet) 329 { 330 // documentationValue has no pre constraints 331 documentationValue6a = handleGetDocumentationValue(); 332 // documentationValue has no post constraints 333 this.__documentationValue6a = documentationValue6a; 334 if (isMetafacadePropertyCachingEnabled()) 335 { 336 this.__documentationValue6aSet = true; 337 } 338 } 339 return documentationValue6a; 340 } 341 342 /** 343 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#isValidationRequired() 344 * @return boolean 345 */ 346 protected abstract boolean handleIsValidationRequired(); 347 348 private boolean __validationRequired7a; 349 private boolean __validationRequired7aSet = false; 350 351 /** 352 * True if at least one client/server parameter requires validation. 353 * @return (boolean)handleIsValidationRequired() 354 */ 355 public final boolean isValidationRequired() 356 { 357 boolean validationRequired7a = this.__validationRequired7a; 358 if (!this.__validationRequired7aSet) 359 { 360 // validationRequired has no pre constraints 361 validationRequired7a = handleIsValidationRequired(); 362 // validationRequired has no post constraints 363 this.__validationRequired7a = validationRequired7a; 364 if (isMetafacadePropertyCachingEnabled()) 365 { 366 this.__validationRequired7aSet = true; 367 } 368 } 369 return validationRequired7a; 370 } 371 372 /** 373 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#isDateFieldPresent() 374 * @return boolean 375 */ 376 protected abstract boolean handleIsDateFieldPresent(); 377 378 private boolean __dateFieldPresent8a; 379 private boolean __dateFieldPresent8aSet = false; 380 381 /** 382 * True if any of the actions have a parameter of type Date. 383 * @return (boolean)handleIsDateFieldPresent() 384 */ 385 public final boolean isDateFieldPresent() 386 { 387 boolean dateFieldPresent8a = this.__dateFieldPresent8a; 388 if (!this.__dateFieldPresent8aSet) 389 { 390 // dateFieldPresent has no pre constraints 391 dateFieldPresent8a = handleIsDateFieldPresent(); 392 // dateFieldPresent has no post constraints 393 this.__dateFieldPresent8a = dateFieldPresent8a; 394 if (isMetafacadePropertyCachingEnabled()) 395 { 396 this.__dateFieldPresent8aSet = true; 397 } 398 } 399 return dateFieldPresent8a; 400 } 401 402 /** 403 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#isCalendarRequired() 404 * @return boolean 405 */ 406 protected abstract boolean handleIsCalendarRequired(); 407 408 private boolean __calendarRequired9a; 409 private boolean __calendarRequired9aSet = false; 410 411 /** 412 * True if this JSP contains a date field which requires a calendar popup. 413 * @return (boolean)handleIsCalendarRequired() 414 */ 415 public final boolean isCalendarRequired() 416 { 417 boolean calendarRequired9a = this.__calendarRequired9a; 418 if (!this.__calendarRequired9aSet) 419 { 420 // calendarRequired has no pre constraints 421 calendarRequired9a = handleIsCalendarRequired(); 422 // calendarRequired has no post constraints 423 this.__calendarRequired9a = calendarRequired9a; 424 if (isMetafacadePropertyCachingEnabled()) 425 { 426 this.__calendarRequired9aSet = true; 427 } 428 } 429 return calendarRequired9a; 430 } 431 432 /** 433 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getOnlineHelpKey() 434 * @return String 435 */ 436 protected abstract String handleGetOnlineHelpKey(); 437 438 private String __onlineHelpKey10a; 439 private boolean __onlineHelpKey10aSet = false; 440 441 /** 442 * The key to lookup the online help documentation. This documentation is gathered from the 443 * documentation entered by the user, as well as analyzing the model. 444 * @return (String)handleGetOnlineHelpKey() 445 */ 446 public final String getOnlineHelpKey() 447 { 448 String onlineHelpKey10a = this.__onlineHelpKey10a; 449 if (!this.__onlineHelpKey10aSet) 450 { 451 // onlineHelpKey has no pre constraints 452 onlineHelpKey10a = handleGetOnlineHelpKey(); 453 // onlineHelpKey has no post constraints 454 this.__onlineHelpKey10a = onlineHelpKey10a; 455 if (isMetafacadePropertyCachingEnabled()) 456 { 457 this.__onlineHelpKey10aSet = true; 458 } 459 } 460 return onlineHelpKey10a; 461 } 462 463 /** 464 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getOnlineHelpValue() 465 * @return String 466 */ 467 protected abstract String handleGetOnlineHelpValue(); 468 469 private String __onlineHelpValue11a; 470 private boolean __onlineHelpValue11aSet = false; 471 472 /** 473 * The online help documentation. This documentation is gathered from the documentation entered 474 * by the user, as well as analyzing the model. The format is HTML without any style. 475 * @return (String)handleGetOnlineHelpValue() 476 */ 477 public final String getOnlineHelpValue() 478 { 479 String onlineHelpValue11a = this.__onlineHelpValue11a; 480 if (!this.__onlineHelpValue11aSet) 481 { 482 // onlineHelpValue has no pre constraints 483 onlineHelpValue11a = handleGetOnlineHelpValue(); 484 // onlineHelpValue has no post constraints 485 this.__onlineHelpValue11a = onlineHelpValue11a; 486 if (isMetafacadePropertyCachingEnabled()) 487 { 488 this.__onlineHelpValue11aSet = true; 489 } 490 } 491 return onlineHelpValue11a; 492 } 493 494 /** 495 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getMessageValue() 496 * @return String 497 */ 498 protected abstract String handleGetMessageValue(); 499 500 private String __messageValue12a; 501 private boolean __messageValue12aSet = false; 502 503 /** 504 * A displayable version of this page's name. 505 * @return (String)handleGetMessageValue() 506 */ 507 public final String getMessageValue() 508 { 509 String messageValue12a = this.__messageValue12a; 510 if (!this.__messageValue12aSet) 511 { 512 // messageValue has no pre constraints 513 messageValue12a = handleGetMessageValue(); 514 // messageValue has no post constraints 515 this.__messageValue12a = messageValue12a; 516 if (isMetafacadePropertyCachingEnabled()) 517 { 518 this.__messageValue12aSet = true; 519 } 520 } 521 return messageValue12a; 522 } 523 524 /** 525 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getCssFileName() 526 * @return String 527 */ 528 protected abstract String handleGetCssFileName(); 529 530 private String __cssFileName13a; 531 private boolean __cssFileName13aSet = false; 532 533 /** 534 * The name of the file containing specific styles for this page only. 535 * @return (String)handleGetCssFileName() 536 */ 537 public final String getCssFileName() 538 { 539 String cssFileName13a = this.__cssFileName13a; 540 if (!this.__cssFileName13aSet) 541 { 542 // cssFileName has no pre constraints 543 cssFileName13a = handleGetCssFileName(); 544 // cssFileName has no post constraints 545 this.__cssFileName13a = cssFileName13a; 546 if (isMetafacadePropertyCachingEnabled()) 547 { 548 this.__cssFileName13aSet = true; 549 } 550 } 551 return cssFileName13a; 552 } 553 554 /** 555 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getOnlineHelpActionPath() 556 * @return String 557 */ 558 protected abstract String handleGetOnlineHelpActionPath(); 559 560 private String __onlineHelpActionPath14a; 561 private boolean __onlineHelpActionPath14aSet = false; 562 563 /** 564 * The full path to this JSP's online help action. The returned String does not have a suffix 565 * such as '.do'. 566 * @return (String)handleGetOnlineHelpActionPath() 567 */ 568 public final String getOnlineHelpActionPath() 569 { 570 String onlineHelpActionPath14a = this.__onlineHelpActionPath14a; 571 if (!this.__onlineHelpActionPath14aSet) 572 { 573 // onlineHelpActionPath has no pre constraints 574 onlineHelpActionPath14a = handleGetOnlineHelpActionPath(); 575 // onlineHelpActionPath has no post constraints 576 this.__onlineHelpActionPath14a = onlineHelpActionPath14a; 577 if (isMetafacadePropertyCachingEnabled()) 578 { 579 this.__onlineHelpActionPath14aSet = true; 580 } 581 } 582 return onlineHelpActionPath14a; 583 } 584 585 /** 586 * @see org.andromda.cartridges.bpm4struts.metafacades.StrutsJsp#getOnlineHelpPagePath() 587 * @return String 588 */ 589 protected abstract String handleGetOnlineHelpPagePath(); 590 591 private String __onlineHelpPagePath15a; 592 private boolean __onlineHelpPagePath15aSet = false; 593 594 /** 595 * The full path to this JSP's online help page. The returned String does not have a suffix such 596 * as '.jsp'. 597 * @return (String)handleGetOnlineHelpPagePath() 598 */ 599 public final String getOnlineHelpPagePath() 600 { 601 String onlineHelpPagePath15a = this.__onlineHelpPagePath15a; 602 if (!this.__onlineHelpPagePath15aSet) 603 { 604 // onlineHelpPagePath has no pre constraints 605 onlineHelpPagePath15a = handleGetOnlineHelpPagePath(); 606 // onlineHelpPagePath has no post constraints 607 this.__onlineHelpPagePath15a = onlineHelpPagePath15a; 608 if (isMetafacadePropertyCachingEnabled()) 609 { 610 this.__onlineHelpPagePath15aSet = true; 611 } 612 } 613 return onlineHelpPagePath15a; 614 } 615 616 // ------------- associations ------------------ 617 618 private List<StrutsForward> __getNonActionForwards1r; 619 private boolean __getNonActionForwards1rSet = false; 620 621 /** 622 * A Struts JSP represents a page in the web application. A page possibly contains several forms 623 * and 624 * triggers (either buttons or hyperlinks) that call actions. 625 * @return (List<StrutsForward>)handleGetNonActionForwards() 626 */ 627 public final List<StrutsForward> getNonActionForwards() 628 { 629 List<StrutsForward> getNonActionForwards1r = this.__getNonActionForwards1r; 630 if (!this.__getNonActionForwards1rSet) 631 { 632 // strutsJsp has no pre constraints 633 List result = handleGetNonActionForwards(); 634 List shieldedResult = this.shieldedElements(result); 635 try 636 { 637 getNonActionForwards1r = (List<StrutsForward>)shieldedResult; 638 } 639 catch (ClassCastException ex) 640 { 641 // Bad things happen if the metafacade type mapping in metafacades.xml is wrong - Warn 642 StrutsJspLogic.logger.warn("incorrect metafacade cast for StrutsJspLogic.getNonActionForwards List<StrutsForward> " + result + ": " + shieldedResult); 643 } 644 // strutsJsp has no post constraints 645 this.__getNonActionForwards1r = getNonActionForwards1r; 646 if (isMetafacadePropertyCachingEnabled()) 647 { 648 this.__getNonActionForwards1rSet = true; 649 } 650 } 651 return getNonActionForwards1r; 652 } 653 654 /** 655 * UML Specific type is returned in Collection, transformed by shieldedElements to AndroMDA Metafacade type 656 * @return List 657 */ 658 protected abstract List handleGetNonActionForwards(); 659 660 private List<StrutsAction> __getIncomingActions2r; 661 private boolean __getIncomingActions2rSet = false; 662 663 /** 664 * The set of pages that are a possible target of the triggering of this action. 665 * @return (List<StrutsAction>)handleGetIncomingActions() 666 */ 667 public final List<StrutsAction> getIncomingActions() 668 { 669 List<StrutsAction> getIncomingActions2r = this.__getIncomingActions2r; 670 if (!this.__getIncomingActions2rSet) 671 { 672 // targetPages has no pre constraints 673 List result = handleGetIncomingActions(); 674 List shieldedResult = this.shieldedElements(result); 675 try 676 { 677 getIncomingActions2r = (List<StrutsAction>)shieldedResult; 678 } 679 catch (ClassCastException ex) 680 { 681 // Bad things happen if the metafacade type mapping in metafacades.xml is wrong - Warn 682 StrutsJspLogic.logger.warn("incorrect metafacade cast for StrutsJspLogic.getIncomingActions List<StrutsAction> " + result + ": " + shieldedResult); 683 } 684 // targetPages has no post constraints 685 this.__getIncomingActions2r = getIncomingActions2r; 686 if (isMetafacadePropertyCachingEnabled()) 687 { 688 this.__getIncomingActions2rSet = true; 689 } 690 } 691 return getIncomingActions2r; 692 } 693 694 /** 695 * UML Specific type is returned in Collection, transformed by shieldedElements to AndroMDA Metafacade type 696 * @return List 697 */ 698 protected abstract List handleGetIncomingActions(); 699 700 private List<StrutsParameter> __getPageVariables3r; 701 private boolean __getPageVariables3rSet = false; 702 703 /** 704 * A Struts JSP represents a page in the web application. A page possibly contains several forms 705 * and 706 * triggers (either buttons or hyperlinks) that call actions. 707 * @return (List<StrutsParameter>)handleGetPageVariables() 708 */ 709 public final List<StrutsParameter> getPageVariables() 710 { 711 List<StrutsParameter> getPageVariables3r = this.__getPageVariables3r; 712 if (!this.__getPageVariables3rSet) 713 { 714 // strutsJsp has no pre constraints 715 List result = handleGetPageVariables(); 716 List shieldedResult = this.shieldedElements(result); 717 try 718 { 719 getPageVariables3r = (List<StrutsParameter>)shieldedResult; 720 } 721 catch (ClassCastException ex) 722 { 723 // Bad things happen if the metafacade type mapping in metafacades.xml is wrong - Warn 724 StrutsJspLogic.logger.warn("incorrect metafacade cast for StrutsJspLogic.getPageVariables List<StrutsParameter> " + result + ": " + shieldedResult); 725 } 726 // strutsJsp has no post constraints 727 this.__getPageVariables3r = getPageVariables3r; 728 if (isMetafacadePropertyCachingEnabled()) 729 { 730 this.__getPageVariables3rSet = true; 731 } 732 } 733 return getPageVariables3r; 734 } 735 736 /** 737 * UML Specific type is returned in Collection, transformed by shieldedElements to AndroMDA Metafacade type 738 * @return List 739 */ 740 protected abstract List handleGetPageVariables(); 741 742 /** 743 * @return true 744 * @see StrutsActionState 745 */ 746 public boolean isStrutsActionStateMetaType() 747 { 748 return true; 749 } 750 751 /** 752 * @return true 753 * @see FrontEndView 754 */ 755 public boolean isFrontEndViewMetaType() 756 { 757 return true; 758 } 759 760 /** 761 * @return true 762 * @see org.andromda.metafacades.uml.FrontEndActionState 763 */ 764 public boolean isFrontEndActionStateMetaType() 765 { 766 return true; 767 } 768 769 /** 770 * @return true 771 * @see org.andromda.metafacades.uml.ActionStateFacade 772 */ 773 public boolean isActionStateFacadeMetaType() 774 { 775 return true; 776 } 777 778 /** 779 * @return true 780 * @see StateFacade 781 */ 782 public boolean isStateFacadeMetaType() 783 { 784 return true; 785 } 786 787 /** 788 * @return true 789 * @see org.andromda.metafacades.uml.StateVertexFacade 790 */ 791 public boolean isStateVertexFacadeMetaType() 792 { 793 return true; 794 } 795 796 /** 797 * @return true 798 * @see ModelElementFacade 799 */ 800 public boolean isModelElementFacadeMetaType() 801 { 802 return true; 803 } 804 805 // ----------- delegates to StrutsActionState ------------ 806 /** 807 * The entry action for this action state (if any). 808 * @see org.andromda.metafacades.uml.ActionStateFacade#getEntry() 809 */ 810 public ActionFacade getEntry() 811 { 812 return this.getSuperStrutsActionState().getEntry(); 813 } 814 815 /** 816 * The method name representing this action state. 817 * @see org.andromda.metafacades.uml.FrontEndActionState#getActionMethodName() 818 */ 819 public String getActionMethodName() 820 { 821 return this.getSuperStrutsActionState().getActionMethodName(); 822 } 823 824 /** 825 * The actions that pass through this action state. 826 * @see org.andromda.metafacades.uml.FrontEndActionState#getContainerActions() 827 */ 828 public List<FrontEndAction> getContainerActions() 829 { 830 return this.getSuperStrutsActionState().getContainerActions(); 831 } 832 833 /** 834 * All calls deferred to the controller by this action state. 835 * @see org.andromda.metafacades.uml.FrontEndActionState#getControllerCalls() 836 */ 837 public List<OperationFacade> getControllerCalls() 838 { 839 return this.getSuperStrutsActionState().getControllerCalls(); 840 } 841 842 /** 843 * All exceptions modelled on this action state. 844 * @see org.andromda.metafacades.uml.FrontEndActionState#getExceptions() 845 */ 846 public List<FrontEndExceptionHandler> getExceptions() 847 { 848 return this.getSuperStrutsActionState().getExceptions(); 849 } 850 851 /** 852 * The next transition, there can be only one transition going out of an action state, otherwise 853 * decision points should be used (triggers are not supported at the server-side). 854 * @see org.andromda.metafacades.uml.FrontEndActionState#getForward() 855 */ 856 public FrontEndForward getForward() 857 { 858 return this.getSuperStrutsActionState().getForward(); 859 } 860 861 /** 862 * All calls deferred to the services by this action state. 863 * @see org.andromda.metafacades.uml.FrontEndActionState#getServiceCalls() 864 */ 865 public List<OperationFacade> getServiceCalls() 866 { 867 return this.getSuperStrutsActionState().getServiceCalls(); 868 } 869 870 /** 871 * True if this element is contained in a FrontEndUseCase. 872 * @see org.andromda.metafacades.uml.FrontEndActionState#isContainedInFrontEndUseCase() 873 */ 874 public boolean isContainedInFrontEndUseCase() 875 { 876 return this.getSuperStrutsActionState().isContainedInFrontEndUseCase(); 877 } 878 879 /** 880 * Indicates whether or not this front end action state is server side. Pages, for example, are 881 * also action states but they return control to the client. 882 * @see org.andromda.metafacades.uml.FrontEndActionState#isServerSide() 883 */ 884 public boolean isServerSide() 885 { 886 return this.getSuperStrutsActionState().isServerSide(); 887 } 888 889 /** 890 * Copies all tagged values from the given ModelElementFacade to this model element facade. 891 * @see ModelElementFacade#copyTaggedValues(ModelElementFacade element) 892 */ 893 public void copyTaggedValues(ModelElementFacade element) 894 { 895 this.getSuperStrutsActionState().copyTaggedValues(element); 896 } 897 898 /** 899 * Finds the tagged value with the specified 'tagName'. In case there are more values the first 900 * one found will be returned. 901 * @see ModelElementFacade#findTaggedValue(String tagName) 902 */ 903 public Object findTaggedValue(String tagName) 904 { 905 return this.getSuperStrutsActionState().findTaggedValue(tagName); 906 } 907 908 /** 909 * Returns all the values for the tagged value with the specified name. The returned collection 910 * will contains only String instances, or will be empty. Never null. 911 * @see ModelElementFacade#findTaggedValues(String tagName) 912 */ 913 public Collection<Object> findTaggedValues(String tagName) 914 { 915 return this.getSuperStrutsActionState().findTaggedValues(tagName); 916 } 917 918 /** 919 * Returns the fully qualified name of the model element. The fully qualified name includes 920 * complete package qualified name of the underlying model element. The templates parameter will 921 * be replaced by the correct one given the binding relation of the parameter to this element. 922 * @see ModelElementFacade#getBindedFullyQualifiedName(ModelElementFacade bindedElement) 923 */ 924 public String getBindedFullyQualifiedName(ModelElementFacade bindedElement) 925 { 926 return this.getSuperStrutsActionState().getBindedFullyQualifiedName(bindedElement); 927 } 928 929 /** 930 * Gets all constraints belonging to the model element. 931 * @see ModelElementFacade#getConstraints() 932 */ 933 public Collection<ConstraintFacade> getConstraints() 934 { 935 return this.getSuperStrutsActionState().getConstraints(); 936 } 937 938 /** 939 * Returns the constraints of the argument kind that have been placed onto this model. Typical 940 * kinds are "inv", "pre" and "post". Other kinds are possible. 941 * @see ModelElementFacade#getConstraints(String kind) 942 */ 943 public Collection<ConstraintFacade> getConstraints(String kind) 944 { 945 return this.getSuperStrutsActionState().getConstraints(kind); 946 } 947 948 /** 949 * Gets the documentation for the model element, The indent argument is prefixed to each line. 950 * By default this method wraps lines after 64 characters. 951 * This method is equivalent to <code>getDocumentation(indent, 64)</code>. 952 * @see ModelElementFacade#getDocumentation(String indent) 953 */ 954 public String getDocumentation(String indent) 955 { 956 return this.getSuperStrutsActionState().getDocumentation(indent); 957 } 958 959 /** 960 * This method returns the documentation for this model element, with the lines wrapped after 961 * the specified number of characters, values of less than 1 will indicate no line wrapping is 962 * required. By default paragraphs are returned as HTML. 963 * This method is equivalent to <code>getDocumentation(indent, lineLength, true)</code>. 964 * @see ModelElementFacade#getDocumentation(String indent, int lineLength) 965 */ 966 public String getDocumentation(String indent, int lineLength) 967 { 968 return this.getSuperStrutsActionState().getDocumentation(indent, lineLength); 969 } 970 971 /** 972 * This method returns the documentation for this model element, with the lines wrapped after 973 * the specified number of characters, values of less than 1 will indicate no line wrapping is 974 * required. HTML style determines if HTML Escaping is applied. 975 * @see ModelElementFacade#getDocumentation(String indent, int lineLength, boolean htmlStyle) 976 */ 977 public String getDocumentation(String indent, int lineLength, boolean htmlStyle) 978 { 979 return this.getSuperStrutsActionState().getDocumentation(indent, lineLength, htmlStyle); 980 } 981 982 /** 983 * The fully qualified name of this model element. 984 * @see ModelElementFacade#getFullyQualifiedName() 985 */ 986 public String getFullyQualifiedName() 987 { 988 return this.getSuperStrutsActionState().getFullyQualifiedName(); 989 } 990 991 /** 992 * Returns the fully qualified name of the model element. The fully qualified name includes 993 * complete package qualified name of the underlying model element. If modelName is true, then 994 * the original name of the model element (the name contained within the model) will be the name 995 * returned, otherwise a name from a language mapping will be returned. 996 * @see ModelElementFacade#getFullyQualifiedName(boolean modelName) 997 */ 998 public String getFullyQualifiedName(boolean modelName) 999 { 1000 return this.getSuperStrutsActionState().getFullyQualifiedName(modelName); 1001 } 1002 1003 /** 1004 * Returns the fully qualified name as a path, the returned value always starts with out a slash 1005 * '/'. 1006 * @see ModelElementFacade#getFullyQualifiedNamePath() 1007 */ 1008 public String getFullyQualifiedNamePath() 1009 { 1010 return this.getSuperStrutsActionState().getFullyQualifiedNamePath(); 1011 } 1012 1013 /** 1014 * Gets the unique identifier of the underlying model element. 1015 * @see ModelElementFacade#getId() 1016 */ 1017 public String getId() 1018 { 1019 return this.getSuperStrutsActionState().getId(); 1020 } 1021 1022 /** 1023 * UML2: Retrieves the keywords for this element. Used to modify implementation properties which 1024 * are not represented by other properties, i.e. native, transient, volatile, synchronized, 1025 * (added annotations) override, deprecated. Can also be used to suppress compiler warnings: 1026 * (added annotations) unchecked, fallthrough, path, serial, finally, all. Annotations require 1027 * JDK5 compiler level. 1028 * @see ModelElementFacade#getKeywords() 1029 */ 1030 public Collection<String> getKeywords() 1031 { 1032 return this.getSuperStrutsActionState().getKeywords(); 1033 } 1034 1035 /** 1036 * UML2: Retrieves a localized label for this named element. 1037 * @see ModelElementFacade#getLabel() 1038 */ 1039 public String getLabel() 1040 { 1041 return this.getSuperStrutsActionState().getLabel(); 1042 } 1043 1044 /** 1045 * The language mappings that have been set for this model element. 1046 * @see ModelElementFacade#getLanguageMappings() 1047 */ 1048 public TypeMappings getLanguageMappings() 1049 { 1050 return this.getSuperStrutsActionState().getLanguageMappings(); 1051 } 1052 1053 /** 1054 * Return the model containing this model element (multiple models may be loaded and processed 1055 * at the same time). 1056 * @see ModelElementFacade#getModel() 1057 */ 1058 public ModelFacade getModel() 1059 { 1060 return this.getSuperStrutsActionState().getModel(); 1061 } 1062 1063 /** 1064 * The name of the model element. 1065 * @see ModelElementFacade#getName() 1066 */ 1067 public String getName() 1068 { 1069 return this.getSuperStrutsActionState().getName(); 1070 } 1071 1072 /** 1073 * Gets the package to which this model element belongs. 1074 * @see ModelElementFacade#getPackage() 1075 */ 1076 public ModelElementFacade getPackage() 1077 { 1078 return this.getSuperStrutsActionState().getPackage(); 1079 } 1080 1081 /** 1082 * The name of this model element's package. 1083 * @see ModelElementFacade#getPackageName() 1084 */ 1085 public String getPackageName() 1086 { 1087 return this.getSuperStrutsActionState().getPackageName(); 1088 } 1089 1090 /** 1091 * Gets the package name (optionally providing the ability to retrieve the model name and not 1092 * the mapped name). 1093 * @see ModelElementFacade#getPackageName(boolean modelName) 1094 */ 1095 public String getPackageName(boolean modelName) 1096 { 1097 return this.getSuperStrutsActionState().getPackageName(modelName); 1098 } 1099 1100 /** 1101 * Returns the package as a path, the returned value always starts with out a slash '/'. 1102 * @see ModelElementFacade#getPackagePath() 1103 */ 1104 public String getPackagePath() 1105 { 1106 return this.getSuperStrutsActionState().getPackagePath(); 1107 } 1108 1109 /** 1110 * UML2: Returns the value of the 'Qualified Name' attribute. A name which allows the 1111 * NamedElement to be identified within a hierarchy of nested Namespaces. It is constructed from 1112 * the names of the containing namespaces starting at the root of the hierarchy and ending with 1113 * the name of the NamedElement itself. 1114 * @see ModelElementFacade#getQualifiedName() 1115 */ 1116 public String getQualifiedName() 1117 { 1118 return this.getSuperStrutsActionState().getQualifiedName(); 1119 } 1120 1121 /** 1122 * Gets the root package for the model element. 1123 * @see ModelElementFacade#getRootPackage() 1124 */ 1125 public PackageFacade getRootPackage() 1126 { 1127 return this.getSuperStrutsActionState().getRootPackage(); 1128 } 1129 1130 /** 1131 * Gets the dependencies for which this model element is the source. 1132 * @see ModelElementFacade#getSourceDependencies() 1133 */ 1134 public Collection<DependencyFacade> getSourceDependencies() 1135 { 1136 return this.getSuperStrutsActionState().getSourceDependencies(); 1137 } 1138 1139 /** 1140 * If this model element is the context of an activity graph, this represents that activity 1141 * graph. 1142 * @see ModelElementFacade#getStateMachineContext() 1143 */ 1144 public StateMachineFacade getStateMachineContext() 1145 { 1146 return this.getSuperStrutsActionState().getStateMachineContext(); 1147 } 1148 1149 /** 1150 * The collection of ALL stereotype names for this model element. 1151 * @see ModelElementFacade#getStereotypeNames() 1152 */ 1153 public Collection<String> getStereotypeNames() 1154 { 1155 return this.getSuperStrutsActionState().getStereotypeNames(); 1156 } 1157 1158 /** 1159 * Gets all stereotypes for this model element. 1160 * @see ModelElementFacade#getStereotypes() 1161 */ 1162 public Collection<StereotypeFacade> getStereotypes() 1163 { 1164 return this.getSuperStrutsActionState().getStereotypes(); 1165 } 1166 1167 /** 1168 * Return the TaggedValues associated with this model element, under all stereotypes. 1169 * @see ModelElementFacade#getTaggedValues() 1170 */ 1171 public Collection<TaggedValueFacade> getTaggedValues() 1172 { 1173 return this.getSuperStrutsActionState().getTaggedValues(); 1174 } 1175 1176 /** 1177 * Gets the dependencies for which this model element is the target. 1178 * @see ModelElementFacade#getTargetDependencies() 1179 */ 1180 public Collection<DependencyFacade> getTargetDependencies() 1181 { 1182 return this.getSuperStrutsActionState().getTargetDependencies(); 1183 } 1184 1185 /** 1186 * Get the template parameter for this model element having the parameterName 1187 * @see ModelElementFacade#getTemplateParameter(String parameterName) 1188 */ 1189 public Object getTemplateParameter(String parameterName) 1190 { 1191 return this.getSuperStrutsActionState().getTemplateParameter(parameterName); 1192 } 1193 1194 /** 1195 * Get the template parameters for this model element 1196 * @see ModelElementFacade#getTemplateParameters() 1197 */ 1198 public Collection<TemplateParameterFacade> getTemplateParameters() 1199 { 1200 return this.getSuperStrutsActionState().getTemplateParameters(); 1201 } 1202 1203 /** 1204 * The visibility (i.e. public, private, protected or package) of the model element, will 1205 * attempt a lookup for these values in the language mappings (if any). 1206 * @see ModelElementFacade#getVisibility() 1207 */ 1208 public String getVisibility() 1209 { 1210 return this.getSuperStrutsActionState().getVisibility(); 1211 } 1212 1213 /** 1214 * Returns true if the model element has the exact stereotype (meaning no stereotype inheritance 1215 * is taken into account when searching for the stereotype), false otherwise. 1216 * @see ModelElementFacade#hasExactStereotype(String stereotypeName) 1217 */ 1218 public boolean hasExactStereotype(String stereotypeName) 1219 { 1220 return this.getSuperStrutsActionState().hasExactStereotype(stereotypeName); 1221 } 1222 1223 /** 1224 * Does the UML Element contain the named Keyword? Keywords can be separated by space, comma, 1225 * pipe, semicolon, or << >> 1226 * @see ModelElementFacade#hasKeyword(String keywordName) 1227 */ 1228 public boolean hasKeyword(String keywordName) 1229 { 1230 return this.getSuperStrutsActionState().hasKeyword(keywordName); 1231 } 1232 1233 /** 1234 * Returns true if the model element has the specified stereotype. If the stereotype itself 1235 * does not match, then a search will be made up the stereotype inheritance hierarchy, and if 1236 * one of the stereotype's ancestors has a matching name this method will return true, false 1237 * otherwise. 1238 * For example, if we have a certain stereotype called <<exception>> and a model element has a 1239 * stereotype called <<applicationException>> which extends <<exception>>, when calling this 1240 * method with 'stereotypeName' defined as 'exception' the method would return true since 1241 * <<applicationException>> inherits from <<exception>>. If you want to check if the model 1242 * element has the exact stereotype, then use the method 'hasExactStereotype' instead. 1243 * @see ModelElementFacade#hasStereotype(String stereotypeName) 1244 */ 1245 public boolean hasStereotype(String stereotypeName) 1246 { 1247 return this.getSuperStrutsActionState().hasStereotype(stereotypeName); 1248 } 1249 1250 /** 1251 * True if there are target dependencies from this element that are instances of BindingFacade. 1252 * Deprecated in UML2: Use TemplateBinding parameters instead of dependencies. 1253 * @see ModelElementFacade#isBindingDependenciesPresent() 1254 */ 1255 public boolean isBindingDependenciesPresent() 1256 { 1257 return this.getSuperStrutsActionState().isBindingDependenciesPresent(); 1258 } 1259 1260 /** 1261 * Indicates if any constraints are present on this model element. 1262 * @see ModelElementFacade#isConstraintsPresent() 1263 */ 1264 public boolean isConstraintsPresent() 1265 { 1266 return this.getSuperStrutsActionState().isConstraintsPresent(); 1267 } 1268 1269 /** 1270 * Indicates if any documentation is present on this model element. 1271 * @see ModelElementFacade#isDocumentationPresent() 1272 */ 1273 public boolean isDocumentationPresent() 1274 { 1275 return this.getSuperStrutsActionState().isDocumentationPresent(); 1276 } 1277 1278 /** 1279 * True if this element name is a reserved word in Java, C#, ANSI or ISO C, C++, JavaScript. 1280 * @see ModelElementFacade#isReservedWord() 1281 */ 1282 public boolean isReservedWord() 1283 { 1284 return this.getSuperStrutsActionState().isReservedWord(); 1285 } 1286 1287 /** 1288 * True is there are template parameters on this model element. For UML2, applies to Class, 1289 * Operation, Property, and Parameter. 1290 * @see ModelElementFacade#isTemplateParametersPresent() 1291 */ 1292 public boolean isTemplateParametersPresent() 1293 { 1294 return this.getSuperStrutsActionState().isTemplateParametersPresent(); 1295 } 1296 1297 /** 1298 * True if this element name is a valid identifier name in Java, C#, ANSI or ISO C, C++, 1299 * JavaScript. Contains no spaces, special characters etc. Constraint always applied on 1300 * Enumerations and Interfaces, optionally applies on other model elements. 1301 * @see ModelElementFacade#isValidIdentifierName() 1302 */ 1303 public boolean isValidIdentifierName() 1304 { 1305 return this.getSuperStrutsActionState().isValidIdentifierName(); 1306 } 1307 1308 /** 1309 * Searches for the constraint with the specified 'name' on this model element, and if found 1310 * translates it using the specified 'translation' from a translation library discovered by the 1311 * framework. 1312 * @see ModelElementFacade#translateConstraint(String name, String translation) 1313 */ 1314 public String translateConstraint(String name, String translation) 1315 { 1316 return this.getSuperStrutsActionState().translateConstraint(name, translation); 1317 } 1318 1319 /** 1320 * Translates all constraints belonging to this model element with the given 'translation'. 1321 * @see ModelElementFacade#translateConstraints(String translation) 1322 */ 1323 public String[] translateConstraints(String translation) 1324 { 1325 return this.getSuperStrutsActionState().translateConstraints(translation); 1326 } 1327 1328 /** 1329 * Translates the constraints of the specified 'kind' belonging to this model element. 1330 * @see ModelElementFacade#translateConstraints(String kind, String translation) 1331 */ 1332 public String[] translateConstraints(String kind, String translation) 1333 { 1334 return this.getSuperStrutsActionState().translateConstraints(kind, translation); 1335 } 1336 1337 /** 1338 * Events to which is being deferred in this action state. 1339 * @see StateFacade#getDeferrableEvents() 1340 */ 1341 public Collection<EventFacade> getDeferrableEvents() 1342 { 1343 return this.getSuperStrutsActionState().getDeferrableEvents(); 1344 } 1345 1346 /** 1347 * Models a situation during which some (usually implicit) invariant condition holds. The states 1348 * of 1349 * protocol state machines are exposed to the users of their context classifiers. A protocol 1350 * state 1351 * represents an exposed stable situation of its context classifier: when an instance of the 1352 * classifier 1353 * is not processing any operation, users of this instance can always know its state 1354 * configuration. 1355 * @see org.andromda.metafacades.uml.StateVertexFacade#getContainer() 1356 */ 1357 public StateFacade getContainer() 1358 { 1359 return this.getSuperStrutsActionState().getContainer(); 1360 } 1361 1362 /** 1363 * A directed relationship between a source vertex and a target vertex. It may be part of a 1364 * compound 1365 * transition, which takes the state machine from one state configuration to another, 1366 * representing the 1367 * complete response of the state machine to an occurrence of an event of a particular type. 1368 * @see org.andromda.metafacades.uml.StateVertexFacade#getIncomings() 1369 */ 1370 public Collection<TransitionFacade> getIncomings() 1371 { 1372 return this.getSuperStrutsActionState().getIncomings(); 1373 } 1374 1375 /** 1376 * A directed relationship between a source vertex and a target vertex. It may be part of a 1377 * compound 1378 * transition, which takes the state machine from one state configuration to another, 1379 * representing the 1380 * complete response of the state machine to an occurrence of an event of a particular type. 1381 * @see org.andromda.metafacades.uml.StateVertexFacade#getOutgoings() 1382 */ 1383 public Collection<TransitionFacade> getOutgoings() 1384 { 1385 return this.getSuperStrutsActionState().getOutgoings(); 1386 } 1387 1388 /** 1389 * The partition (if any) to which this vertex belongs. 1390 * @see org.andromda.metafacades.uml.StateVertexFacade#getPartition() 1391 */ 1392 public PartitionFacade getPartition() 1393 { 1394 return this.getSuperStrutsActionState().getPartition(); 1395 } 1396 1397 /** 1398 * State machines can be used to express the behavior of part of a system. Behavior is modeled 1399 * as a 1400 * traversal of a graph of state nodes interconnected by one or more joined transition arcs that 1401 * are 1402 * triggered by the dispatching of series of (event) occurrences. During this traversal, the 1403 * state 1404 * machine executes a series of activities associated with various elements of the state 1405 * machine. 1406 * @see org.andromda.metafacades.uml.StateVertexFacade#getStateMachine() 1407 */ 1408 public StateMachineFacade getStateMachine() 1409 { 1410 return this.getSuperStrutsActionState().getStateMachine(); 1411 } 1412 1413 // ----------- delegates to FrontEndView ------------ 1414 /** 1415 * All actions that can be triggered on this view. 1416 * @see FrontEndView#getActions() 1417 */ 1418 public List<FrontEndAction> getActions() 1419 { 1420 return this.getSuperFrontEndView().getActions(); 1421 } 1422 1423 /** 1424 * All parameters for each action going out of this view. 1425 * @see FrontEndView#getAllActionParameters() 1426 */ 1427 public List<FrontEndParameter> getAllActionParameters() 1428 { 1429 return this.getSuperFrontEndView().getAllActionParameters(); 1430 } 1431 1432 /** 1433 * All fields from all forms on the given view. 1434 * @see FrontEndView#getAllFormFields() 1435 */ 1436 public List<FrontEndParameter> getAllFormFields() 1437 { 1438 return this.getSuperFrontEndView().getAllFormFields(); 1439 } 1440 1441 /** 1442 * All tables belonging to the front end view. 1443 * @see FrontEndView#getTables() 1444 */ 1445 public List<FrontEndParameter> getTables() 1446 { 1447 return this.getSuperFrontEndView().getTables(); 1448 } 1449 1450 /** 1451 * The use-case of which this view is a member. 1452 * @see FrontEndView#getUseCase() 1453 */ 1454 public FrontEndUseCase getUseCase() 1455 { 1456 return this.getSuperFrontEndView().getUseCase(); 1457 } 1458 1459 /** 1460 * All those variables that will be present as variables in the target view. These are the 1461 * trigger parameters on the incoming transitions. 1462 * @see FrontEndView#getVariables() 1463 */ 1464 public List<FrontEndParameter> getVariables() 1465 { 1466 return this.getSuperFrontEndView().getVariables(); 1467 } 1468 1469 /** 1470 * True if this element carries the FrontEndView stereotype. 1471 * @see FrontEndView#isFrontEndView() 1472 */ 1473 public boolean isFrontEndView() 1474 { 1475 return this.getSuperFrontEndView().isFrontEndView(); 1476 } 1477 1478 /** 1479 * @see org.andromda.core.metafacade.MetafacadeBase#initialize() 1480 */ 1481 @Override 1482 public void initialize() 1483 { 1484 this.getSuperStrutsActionState().initialize(); 1485 this.getSuperFrontEndView().initialize(); 1486 } 1487 1488 /** 1489 * @return Object getSuperStrutsActionState().getValidationOwner() 1490 * @see org.andromda.core.metafacade.MetafacadeBase#getValidationOwner() 1491 */ 1492 @Override 1493 public Object getValidationOwner() 1494 { 1495 Object owner = this.getSuperStrutsActionState().getValidationOwner(); 1496 if (owner == null) 1497 { 1498 owner = this.getSuperFrontEndView().getValidationOwner(); 1499 } 1500 return owner; 1501 } 1502 1503 /** 1504 * @return String getSuperStrutsActionState().getValidationName() 1505 * @see org.andromda.core.metafacade.MetafacadeBase#getValidationName() 1506 */ 1507 @Override 1508 public String getValidationName() 1509 { 1510 String name = this.getSuperStrutsActionState().getValidationName(); 1511 if (name == null) 1512 { 1513 name = this.getSuperFrontEndView().getValidationName(); 1514 } 1515 return name; 1516 } 1517 1518 /** 1519 * @param validationMessages Collection<ModelValidationMessage> 1520 * @see org.andromda.core.metafacade.MetafacadeBase#validateInvariants(Collection validationMessages) 1521 */ 1522 @Override 1523 public void validateInvariants(Collection<ModelValidationMessage> validationMessages) 1524 { 1525 this.getSuperStrutsActionState().validateInvariants(validationMessages); 1526 this.getSuperFrontEndView().validateInvariants(validationMessages); 1527 } 1528 1529 /** 1530 * The property that stores the name of the metafacade. 1531 */ 1532 private static final String NAME_PROPERTY = "name"; 1533 private static final String FQNAME_PROPERTY = "fullyQualifiedName"; 1534 1535 /** 1536 * @see Object#toString() 1537 */ 1538 @Override 1539 public String toString() 1540 { 1541 final StringBuilder toString = new StringBuilder(this.getClass().getName()); 1542 toString.append("["); 1543 try 1544 { 1545 toString.append(Introspector.instance().getProperty(this, FQNAME_PROPERTY)); 1546 } 1547 catch (final Throwable tryAgain) 1548 { 1549 try 1550 { 1551 toString.append(Introspector.instance().getProperty(this, NAME_PROPERTY)); 1552 } 1553 catch (final Throwable ignore) 1554 { 1555 // - just ignore when the metafacade doesn't have a name or fullyQualifiedName property 1556 } 1557 } 1558 toString.append("]"); 1559 return toString.toString(); 1560 } 1561}