View Javadoc
1   // license-header java merge-point
2   //
3   // Attention: generated code (by Metafacade.vsl) - do not modify!
4   //
5   package org.andromda.cartridges.jsf2.metafacades;
6   
7   import java.util.Collection;
8   import java.util.List;
9   import java.util.Map;
10  import org.andromda.metafacades.uml.FrontEndUseCase;
11  
12  /**
13   * Represents a JSF use case.
14   *
15   * Metafacade interface to be used by AndroMDA cartridges.
16   */
17  public interface JSFUseCase
18      extends FrontEndUseCase
19  {
20      /**
21       * Indicates the metafacade type (used for metafacade mappings).
22       *
23       * @return boolean always <code>true</code>
24       */
25      public boolean isJSFUseCaseMetaType();
26  
27      /**
28       * The name of the action class that forwards to this use case.
29       * @return String
30       */
31      public String getActionClassName();
32  
33      /**
34       * All forwards in this use case that are represented as actions.
35       * @return List<JSFAction>
36       */
37      public List<JSFAction> getActionForwards();
38  
39      /**
40       * TODO: Model Documentation for
41       * JSFUseCase.getActionRoles
42       * @return String
43       */
44      public String getActionRoles();
45  
46      /**
47       * Constains all forwards includes regular FrontEndForwards and all actiion forwards.
48       * @return List
49       */
50      public List getAllForwards();
51  
52      /**
53       * A map with keys sorted alphabetically, normalized across all different use-cases, views, etc.
54       * @return Map
55       */
56      public Map getAllMessages();
57  
58      /**
59       * All views for the application (not just the ones belonging to this use case).
60       * @return Collection<JSFView>
61       */
62      public Collection<JSFView> getAllViews();
63  
64      /**
65       * The name of the action on the controller that executions this use case.
66       * @return String
67       */
68      public String getControllerAction();
69  
70      /**
71       * The key under which to store the action form passed along in this in this use-case.
72       * @return String
73       */
74      public String getFormKey();
75  
76      /**
77       * The name that will cause a forward to use case.
78       * @return String
79       */
80      public String getForwardName();
81  
82      /**
83       * All forwards contained in this use case.
84       * @return List<JSFForward>
85       */
86      public List<JSFForward> getForwards();
87  
88      /**
89       * The name of the class that stores all the forwards paths.
90       * @return String
91       */
92      public String getForwardsClassName();
93  
94      /**
95       * The fully qualified name of the action class that forwards to this use case.
96       * @return String
97       */
98      public String getFullyQualifiedActionClassName();
99  
100     /**
101      * The fully qualified path to the action class that forwards to this use case.
102      * @return String
103      */
104     public String getFullyQualifiedActionClassPath();
105 
106     /**
107      * The path of the initial target going into this use case.
108      * @return String
109      */
110     public String getInitialTargetPath();
111 
112     /**
113      * TODO: Model Documentation for
114      * JSFUseCase.getNavigationChildren
115      * @return Collection
116      */
117     public Collection getNavigationChildren();
118 
119     /**
120      * TODO: Model Documentation for
121      * JSFUseCase.getNavigationParents
122      * @return Collection
123      */
124     public Collection getNavigationParents();
125 
126     /**
127      * Retrieves all navigation rules for the faces-config.xml
128      * @return Collection
129      */
130     public Collection getNavigationRules();
131 
132     /**
133      * The path to which this use case points.
134      * @return String
135      */
136     public String getPath();
137 
138     /**
139      * The root path for this use case (this is the path the directory containing the use case's
140      * resources).
141      * @return String
142      */
143     public String getPathRoot();
144 
145     /**
146      * The forward name for the portlet 'edit' page.
147      * @return String
148      */
149     public String getPortletEditForwardName();
150 
151     /**
152      * The path to the portlet 'edit' page.
153      * @return String
154      */
155     public String getPortletEditPath();
156 
157     /**
158      * The forward name for the portlet 'help' page.
159      * @return String
160      */
161     public String getPortletHelpForwardName();
162 
163     /**
164      * The path to the 'help' page of the portlet.
165      * @return String
166      */
167     public String getPortletHelpPath();
168 
169     /**
170      * The forward name for the portlet 'view' page.
171      * @return String
172      */
173     public String getPortletViewForwardName();
174 
175     /**
176      * The path to the portlet 'view' page.
177      * @return String
178      */
179     public String getPortletViewPath();
180 
181     /**
182      * Any portlet preferences associated to this use case.
183      * @return JSFPortletPreferences
184      */
185     public JSFPortletPreferences getPreferences();
186 
187     /**
188      * All use cases that are labled as registration use cases.
189      * @return List<JSFUseCase>
190      */
191     public List<JSFUseCase> getRegistrationUseCases();
192 
193     /**
194      * The title message key for this use-case.
195      * @return String
196      */
197     public String getTitleKey();
198 
199     /**
200      * The title message value for this use-case.
201      * @return String
202      */
203     public String getTitleValue();
204 
205     /**
206      * Indicates that at least one client/server parameter found in the collection of existing
207      * use-cases requires validation.
208      * @return boolean
209      */
210     public boolean isApplicationValidationRequired();
211 
212     /**
213      * Indicates whether or not the initial target of this use case is a view or not.
214      * @return boolean
215      */
216     public boolean isInitialTargetView();
217 
218     /**
219      * Indicates whether or not this is a front-end registration use case.  Only one use case can be
220      * labeled as a 'registration' use case.
221      * @return boolean
222      */
223     public boolean isRegistrationUseCase();
224 
225     /**
226      * Indicates whether or not at least one parameter in this use-case require validation.
227      * @return boolean
228      */
229     public boolean isValidationRequired();
230 
231     /**
232      * Indicates whether or not at least one view in the use case has the same name as this use
233      * case.
234      * @return boolean
235      */
236     public boolean isViewHasNameOfUseCase();
237 }