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 org.andromda.metafacades.uml.DependencyFacade;
10 import org.andromda.metafacades.uml.FrontEndController;
11
12 /**
13 * Represents a controller for a JSF application.
14 *
15 * Metafacade interface to be used by AndroMDA cartridges.
16 */
17 public interface JSFController
18 extends FrontEndController
19 {
20 /**
21 * Indicates the metafacade type (used for metafacade mappings).
22 *
23 * @return boolean always <code>true</code>
24 */
25 public boolean isJSFControllerMetaType();
26
27 /**
28 * All services the controller needs.
29 * @return Collection
30 */
31 public Collection getAllServices();
32
33 /**
34 * The bean name of this controller (this is what is stored in the JSF configuration file).
35 * @return String
36 */
37 public String getBeanName();
38
39 /**
40 * The calculated serial version UID for this controller.
41 * @return String
42 */
43 public String getControllerSerialVersionUID();
44
45 /**
46 * The fully qualified implementation name of this controller.
47 * @return String
48 */
49 public String getFullyQualifiedImplementationName();
50
51 /**
52 * The fully qualified path to the controller implemention file.
53 * @return String
54 */
55 public String getFullyQualifiedImplementationPath();
56
57 /**
58 * The implementation name of this controller.
59 * @return String
60 */
61 public String getImplementationName();
62
63 /**
64 * References to packages containing services this controller depends
65 * @return List<DependencyFacade>
66 */
67 public List<DependencyFacade> getServicesPackagesReferences();
68
69 /**
70 * All dependencies to VOs to be kept in the session.
71 * @return List<DependencyFacade>
72 */
73 public List<DependencyFacade> getSessionObjectReferences();
74 }