01: // THIS SOFTWARE IS PROVIDED BY SOFTARIS PTY.LTD. AND OTHER METABOSS
02: // CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING,
03: // BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
04: // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SOFTARIS PTY.LTD.
05: // OR OTHER METABOSS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
06: // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
07: // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
08: // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
09: // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
10: // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
11: // EVEN IF SOFTARIS PTY.LTD. OR OTHER METABOSS CONTRIBUTORS ARE ADVISED OF THE
12: // POSSIBILITY OF SUCH DAMAGE.
13: //
14: // Copyright 2000-2005 © Softaris Pty.Ltd. All Rights Reserved.
15: package com.metaboss.sdlctools.domains.enterprisemodel;
16:
17: import com.metaboss.enterprise.bo.BOException;
18: import com.oldboss.framework.bo.BOObject;
19:
20: public interface BOEntityAssociationRoleList extends BOObject {
21: /** Retrieves an association object by it's element's name in the entity.
22: * @return association role object or null if this entity does not directly have this
23: * role. This excludes any roles possibly defined in supertypes (if this entity is
24: * a subtype) */
25: public BOAssociationRole getAssociationRole(
26: String pAssociationRoleRef) throws BOException;
27:
28: /** @return true if this entity has specified association role object
29: * This excludes any roles possibly defined in supertypes (if this entity is
30: * a subtype) */
31: public boolean contains(BOAssociationRole pAssociationRole)
32: throws BOException;
33:
34: /** Retrieves all association roles defined in this entity only.
35: * This excludes any roles possibly defined in supertypes (if this entity is
36: * a subtype) */
37: public BOAssociationRole[] getAllAssociationRoles()
38: throws BOException;
39:
40: /** Retrieves all association roles defined in this entity, including any roles
41: * possibly defined in supertypes */
42: public BOAssociationRole[] getCombinedAssociationRoles()
43: throws BOException;
44:
45: /** Retrieves optional association role with the owner - entity which has containment association with this entity
46: * This method takes into account entity supertype. At the moment there could only be one owner
47: * of the entity type including all subtypes.
48: * @return owner association role or null if this is top level entity owned by domain */
49: public BOAssociationRole getOwnerAssociationRole()
50: throws BOException;
51: }
|