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;
016:
017: import com.metaboss.enterprise.bo.BOException;
018: import com.oldboss.framework.bo.BOObject;
019:
020: public interface BORelationalEntityTable extends BOObject {
021: /** Retrieves associated entity ref */
022: public String getEntityRef() throws BOException;
023:
024: /** Returns relational domain storage this entity table definition belongs to */
025: public BORelationalDomainStorage getDomainStorage()
026: throws BOException;
027:
028: /** Getter for the alias of the table */
029: public String getTableAlias() throws BOException;
030:
031: /** Getter for the suggested name of the table */
032: public String getNameSuggestion() throws BOException;
033:
034: /** Getter for the overriden name of the table */
035: public String getNameOverride() throws BOException;
036:
037: /** Getter for the suggested name of the column to store entity instance id */
038: public String getInstanceIdColumnNameSuggestion()
039: throws BOException;
040:
041: /** Getter for the overriden name of the column to store entity instance id */
042: public String getInstanceIdColumnNameOverride() throws BOException;
043:
044: /** Getter for the version id column presence flag */
045: public boolean hasVersionIdColumnNameDefinition()
046: throws BOException;
047:
048: /** Getter for the name of the column to store entity version id.
049: * Note that table does not always has a version id column - this depends on the model */
050: public String getVersionIdColumnNameSuggestion() throws BOException;
051:
052: /** Getter for the name of the column to store entity version id.
053: * Note that table does not always has a version id column - this depends on the model */
054: public String getVersionIdColumnNameOverride() throws BOException;
055:
056: /** Getter for the state column presence flag */
057: public boolean hasStateColumnDefinition() throws BOException;
058:
059: /** Getter for the name of the column to store entity state
060: * Note that table does not always has a state column - this depends on the model */
061: public String getStateColumnNameSuggestion() throws BOException;
062:
063: /** Getter for the name of the column to store entity state
064: * Note that table does not always has a state column - this depends on the model */
065: public String getStateColumnNameOverride() throws BOException;
066:
067: /** Getter for the suggested name of the referential constraint of the entity state
068: * Note that table does not always has a state column - this depends on the model */
069: public String getStateRefConstraintNameSuggestion()
070: throws BOException;
071:
072: /** Getter for the overridden name of the referential constraint of the entity state
073: * Note that table does not always has a state column - this depends on the model */
074: public String getStateRefConstraintNameOverride()
075: throws BOException;
076:
077: /** Getter for the name of the primary key constraint
078: * Note that table always has a primary key constraint based on instance id column */
079: public String getPrimaryKeyConstraintNameSuggestion()
080: throws BOException;
081:
082: /** Getter for the name of the primary key constraint
083: * Note that table always has a primary key constraint based on instance id column */
084: public String getPrimaryKeyConstraintNameOverride()
085: throws BOException;
086:
087: /** Getter for the natural primary key constraint name definition presence flag */
088: public boolean hasNaturalPrimaryKeyConstraintNameDefinition()
089: throws BOException;
090:
091: /** Getter for the name of the natural primary key constraint
092: * Note that table does not always has a natural primary key - this depends on the model */
093: public String getNaturalPrimaryKeyConstraintNameSuggestion()
094: throws BOException;
095:
096: /** Getter for the name of the natural primary key constraint
097: * Note that table does not always has natural primary key constraint - this depends on the model */
098: public String getNaturalPrimaryKeyConstraintNameOverride()
099: throws BOException;
100:
101: /** Getter for the list of table attributes */
102: public BORelationalEntityTableAttributeList getTableAttributes()
103: throws BOException;
104:
105: /** Getter for the list of table association role attributes */
106: public BORelationalEntityTableAssociationRoleList getTableAssociationRoles()
107: throws BOException;
108:
109: /** Setter for the alias of the table */
110: public void setTableAlias(String pName) throws BOException;
111:
112: /** Setter for the name of the table */
113: public void setNameSuggestion(String pName) throws BOException;
114:
115: /** Setter for the name of the column to store entity instance id */
116: public void setInstanceIdColumnNameSuggestion(String pName)
117: throws BOException;
118:
119: /** Setter for the version id column presence flag */
120: public void setHasVersionIdColumnNameDefinition(boolean pHasColumn)
121: throws BOException;
122:
123: /** Setter for the name of the column to store entity version id.
124: * Note that table does not always has a version id column - this depends on the model */
125: public void setVersionIdColumnNameSuggestion(String pName)
126: throws BOException;
127:
128: /** Setter for the state column presence flag */
129: public void setHasStateColumnDefinition(boolean pHasColumn)
130: throws BOException;
131:
132: /** Setter for the name of the column to store entity state
133: * Note that table does not always has a state column - this depends on the model */
134: public void setStateColumnNameSuggestion(String pName)
135: throws BOException;
136:
137: /** Setter for the name of the constraint to look after state column referential integrity
138: * Note that table does not always has a state column - this depends on the model */
139: public void setStateRefConstraintNameSuggestion(String pName)
140: throws BOException;
141:
142: /** Setter for the name of the primary key constraint
143: * Note that table always has a primary key constraint based on instance id column */
144: public void setPrimaryKeyConstraintNameSuggestion(String pName)
145: throws BOException;
146:
147: /** Setter for the natural primary key constraint presence flag */
148: public void setHasNaturalPrimaryKeyConstraintNameDefinition(
149: boolean pHasDefinition) throws BOException;
150:
151: /** Setter for the name of the natural primary key constraint
152: * Note that table does not always has a natural primary key constraint - this depends on the model */
153: public void setNaturalPrimaryKeyConstraintNameSuggestion(
154: String pName) throws BOException;
155: }
|