1 // license-header java merge-point
2 //
3 // Attention: generated code (by Metafacade.vsl) - do not modify!
4 //
5 package org.andromda.cartridges.jsf.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 }