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.webservice.metafacades;
6   
7   import org.andromda.metafacades.uml.ServiceOperation;
8   
9   /**
10   * Represents an operation on a web service.
11   *
12   * Metafacade interface to be used by AndroMDA cartridges.
13   */
14  public interface WebServiceOperation
15      extends ServiceOperation
16  {
17      /**
18       * Indicates the metafacade type (used for metafacade mappings).
19       *
20       * @return boolean always <code>true</code>
21       */
22      public boolean isWebServiceOperationMetaType();
23  
24      /**
25       * Returns the customized operation name. Defaults to operation.name, can be overridden with
26       * WebServiceOperation stereotype operationName attribute. Prevents duplicate operation names in
27       * wsdl for overloaded operations.
28       * @return String
29       */
30      public String getOperationName();
31  
32      /**
33       * WebService parameter style: bare or wrapped
34       * @return String
35       */
36      public String getParameterStyle();
37  
38      /**
39       * TODO: Model Documentation for
40       * org.andromda.cartridges.webservice.metafacades.WebServiceOperation.restCacheType
41       * @return String
42       */
43      public String getRestCacheType();
44  
45      /**
46       * @Consumes(media type) annotation. i.e. json, atom, plain/text, xml.
47       * @return String
48       */
49      public String getRestConsumes();
50  
51      /**
52       * Multipart/xml type for this returned part.
53       * @return String
54       */
55      public String getRestPartType();
56  
57      /**
58       * The URL path for the REST webservice. If unspecified, the lowercase
59       * /operation/parametername/{parametername}/ is used.
60       * @return String
61       */
62      public String getRestPath();
63  
64      /**
65       * @Produces(media type) annotation. i.e. json, atom, plain/text, xml.
66       * @return String
67       */
68      public String getRestProduces();
69  
70      /**
71       * Customized REST @Provider annotation, must be implemented in the  generated class.
72       * @return String
73       */
74      public String getRestProvider();
75  
76      /**
77       * HTML request type for this REST service (GET, PUT, POST, QUERY, DELETE), used for method
78       * annotations.
79       * @return String
80       */
81      public String getRestRequestType();
82  
83      /**
84       * Asynchronous service implementation, suspend execution for X ms. Adds @Suspend annotation to
85       * the operation. default=synchronous (suspend=0=wait forever).
86       * @return int
87       */
88      public int getRestSuspend();
89  
90      /**
91       * The URL path to test the REST webservice. Substitutes test values for {parametername} parts
92       * of the service URL.
93       * @return String
94       */
95      public String getRestTestPath();
96  
97      /**
98       * REST security roles allowed. default=All.
99       * @return String
100      */
101     public String getRolesAllowed();
102 
103     /**
104      * The call for the test that tests this operation.
105      * @return String
106      */
107     public String getTestCall();
108 
109     /**
110      * The method call for the test implementation operation.
111      * @return String
112      */
113     public String getTestImplementationCall();
114 
115     /**
116      * The name of the the operation used within the test implementation.
117      * @return String
118      */
119     public String getTestImplementationName();
120 
121     /**
122      * The signature for the test implementation operation.
123      * @return String
124      */
125     public String getTestImplementationSignature();
126 
127     /**
128      * The name for the test that tests this operation.
129      * @return String
130      */
131     public String getTestName();
132 
133     /**
134      * The signature for the test that tests this operation.
135      * @return String
136      */
137     public String getTestSignature();
138 
139     /**
140      * TODO: Model Documentation for
141      * WebServicePackage
142      * @return WebServicePackage
143      */
144     public WebServicePackage getWebServicePackage();
145 
146     /**
147      * Returns true/false depending on whether or not this web service operation is exposed.
148      * @return boolean
149      */
150     public boolean isExposed();
151 
152     /**
153      * Is this operation a JAX-RS REST operation? JAX-WS and JAX-RS can be mixed in the same service
154      * class. If false, all rest attributes and methods are ignored.
155      * @return boolean
156      */
157     public boolean isRest();
158 
159     /**
160      * If this REST service provides application/atom, or any service operations provide
161      * application/atom
162      * @return boolean
163      */
164     public boolean isRestAtom();
165 
166     /**
167      * @Encoded T/F. default=false.
168      * @return boolean
169      */
170     public boolean isRestEncoded();
171 
172     /**
173      * Checks is each service exception reference is some Exception type and has stereotype
174      * WebFault, if CXF.
175      * @return boolean
176      */
177     public boolean isWebFaultOnAllExceptions();
178 }