1 // license-header java merge-point
2 //
3 // Attention: generated code (by Metafacade.vsl) - do not modify!
4 //
5 package org.andromda.cartridges.ejb3.metafacades;
6
7 import org.andromda.metafacades.uml.EntityQueryOperation;
8
9 /**
10 * Represents an EJB finder method.
11 *
12 * Metafacade interface to be used by AndroMDA cartridges.
13 */
14 public interface EJB3FinderMethodFacade
15 extends EntityQueryOperation
16 {
17 /**
18 * Indicates the metafacade type (used for metafacade mappings).
19 *
20 * @return boolean always <code>true</code>
21 */
22 public boolean isEJB3FinderMethodFacadeMetaType();
23
24 /**
25 * The query string for this EJB entity finder.
26 * @return String
27 */
28 public String getQuery();
29
30 /**
31 * Gets the query; taking the entity of which should be included in the query (not counting
32 * queries that are explicitly modeled in OCL).
33 * @param entity EJB3EntityFacade
34 * @return String
35 */
36 public String getQuery(EJB3EntityFacade entity);
37
38 /**
39 * Gets the transaction type for this finder (i.e. REQUIRED, etc)
40 * @return String
41 */
42 public String getTransactionType();
43
44 /**
45 * Returns true if query is specified using OCL or created by AndroMDA itself. Return false if
46 * specified using tagged value.
47 * @return boolean
48 */
49 public boolean isNamedQuery();
50
51 /**
52 * Indicates whether or not the query parameters used for the body of the finder should be named
53 * ':someParam' or unnamed '?'.
54 * @return boolean
55 */
56 public boolean isUseNamedParameters();
57
58 /**
59 * Returns true if this query has the andromda_ejb_query_useCache tagged value true or the
60 * application wide namespace property hibernateUseQueryCache is enabled.
61 * @return boolean
62 */
63 public boolean isUseQueryCache();
64 }