001: // THIS SOFTWARE IS PROVIDED BY SOFTARIS PTY.LTD. AND OTHER METABOSS
002: // CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING,
003: // BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
004: // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SOFTARIS PTY.LTD.
005: // OR OTHER METABOSS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
006: // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
007: // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
008: // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
009: // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
010: // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
011: // EVEN IF SOFTARIS PTY.LTD. OR OTHER METABOSS CONTRIBUTORS ARE ADVISED OF THE
012: // POSSIBILITY OF SUCH DAMAGE.
013: //
014: // Copyright 2000-2005 © Softaris Pty.Ltd. All Rights Reserved.
015: package com.metaboss.sdlctools.domains.storagemodel.storage;
016:
017: import com.metaboss.enterprise.ps.PSException;
018:
019: public interface PSRelationalDomainStorage {
020: /** Naming URL of the component */
021: public static final String COMPONENT_URL = "component:/com.metaboss.sdlctools.domains.storagemodel.storage.PSRelationalDomainStorage";
022:
023: /** Inserts details of the new relational domain storage */
024: public void insertDomainStorage(STDomainStorage pNewDomainStorage)
025: throws PSException;
026:
027: /** Returns references to all entity tables stored for the domain in this storage */
028: public String[] getEntityTableRefs(
029: STDomainStorageKey pDomainStorageRef) throws PSException;
030:
031: /** Returns details of the particular relational entity table storage */
032: public STRelationalEntityTable getEntityTable(
033: STDomainStorageKey pDomainStorageRef, String pEntityRef)
034: throws PSException;
035:
036: /** Inserts details of the particular relational entity table storage */
037: public void insertEntityTable(STDomainStorageKey pDomainStorageRef,
038: STRelationalEntityTable pEntityTableDetails)
039: throws PSException;
040:
041: /** Updates details of the particular relational entity table storage */
042: public void updateEntityTable(STDomainStorageKey pDomainStorageRef,
043: STRelationalEntityTable pEntityTableDetails)
044: throws PSException;
045:
046: /** Deletes details of the particular relational entity table storage */
047: public void deleteEntityTable(STDomainStorageKey pDomainStorageRef,
048: String pEntityRef) throws PSException;
049:
050: /** Returns references to all entity table attributes stored for the domain in this storage */
051: public String[] getEntityTableAttributeRefs(
052: STDomainStorageKey pDomainStorageRef, String pEntityRef)
053: throws PSException;
054:
055: /** Returns details of the particular relational entity table attribute storage */
056: public STRelationalEntityTableAttribute getEntityTableAttribute(
057: STDomainStorageKey pDomainStorageRef, String pEntityRef,
058: String pAttributeRef) throws PSException;
059:
060: /** Inserts details of the particular relational entity table attribute storage */
061: public void insertEntityTableAttribute(
062: STDomainStorageKey pDomainStorageRef,
063: String pEntityRef,
064: STRelationalEntityTableAttribute pEntityTableAttributeDetails)
065: throws PSException;
066:
067: /** Updates details of the particular relational entity table attribute storage */
068: public void updateEntityTableAttribute(
069: STDomainStorageKey pDomainStorageRef,
070: String pEntityRef,
071: STRelationalEntityTableAttribute pEntityTableAttributeDetails)
072: throws PSException;
073:
074: /** Deletes details of the particular relational entity table attribute storage */
075: public void deleteEntityTableAttribute(
076: STDomainStorageKey pDomainStorageRef, String pEntityRef,
077: String pAttributeRef) throws PSException;
078:
079: /** Returns references to all entity table associations stored for the domain in this storage */
080: public String[] getEntityTableAssociationRoleRefs(
081: STDomainStorageKey pDomainStorageRef, String pEntityRef)
082: throws PSException;
083:
084: /** Returns details of the particular relational entity table association storage */
085: public STRelationalEntityTableAssociationRole getEntityTableAssociationRole(
086: STDomainStorageKey pDomainStorageRef, String pEntityRef,
087: String pAssociationRoleRef) throws PSException;
088:
089: /** Inserts details of the particular relational entity table association storage */
090: public void insertEntityTableAssociationRole(
091: STDomainStorageKey pDomainStorageRef,
092: String pEntityRef,
093: STRelationalEntityTableAssociationRole pEntityTableAssociationRoleDetails)
094: throws PSException;
095:
096: /** Updates details of the particular relational entity table association storage */
097: public void updateEntityTableAssociationRole(
098: STDomainStorageKey pDomainStorageRef,
099: String pEntityRef,
100: STRelationalEntityTableAssociationRole pEntityTableAssociationRoleDetails)
101: throws PSException;
102:
103: /** Deletes details of the particular relational entity table association storage */
104: public void deleteEntityTableAssociationRole(
105: STDomainStorageKey pDomainStorageRef, String pEntityRef,
106: String pAssociationRoleRef) throws PSException;
107:
108: /** Returns references to all association tables stored for the domain in this storage */
109: public String[] getAssociationTableRefs(
110: STDomainStorageKey pDomainStorageRef) throws PSException;
111:
112: /** Returns details of the particular relational association table storage */
113: public STRelationalAssociationTable getAssociationTable(
114: STDomainStorageKey pDomainStorageRef, String pAssociationRef)
115: throws PSException;
116:
117: /** Inserts details of the particular relational association table storage */
118: public void insertAssociationTable(
119: STDomainStorageKey pDomainStorageRef,
120: STRelationalAssociationTable pAssociationTableDetails)
121: throws PSException;
122:
123: /** Updates details of the particular relational association table storage */
124: public void updateAssociationTable(
125: STDomainStorageKey pDomainStorageRef,
126: STRelationalAssociationTable pAssociationTableDetails)
127: throws PSException;
128:
129: /** Deletes details of the particular relational association table storage */
130: public void deleteAssociationTable(
131: STDomainStorageKey pDomainStorageRef, String pAssociationRef)
132: throws PSException;
133:
134: /** Returns references to all reference tables stored for the domain in this storage */
135: public String[] getReferenceTableRefs(
136: STDomainStorageKey pDomainStorageRef) throws PSException;
137:
138: /** Returns details of the particular relational reference table storage */
139: public STRelationalReferenceTable getReferenceTable(
140: STDomainStorageKey pDomainStorageRef, String pDataTypeRef)
141: throws PSException;
142:
143: /** Inserts details of the particular relational reference table storage */
144: public void insertReferenceTable(
145: STDomainStorageKey pDomainStorageRef,
146: STRelationalReferenceTable pReferenceTableDetails)
147: throws PSException;
148:
149: /** Updates details of the particular relational reference table storage */
150: public void updateReferenceTable(
151: STDomainStorageKey pDomainStorageRef,
152: STRelationalReferenceTable pReferenceTableDetails)
153: throws PSException;
154:
155: /** Deletes details of the particular relational reference table storage */
156: public void deleteReferenceTable(
157: STDomainStorageKey pDomainStorageRef, String pDataTypeRef)
158: throws PSException;
159: }
|