Interface DataTable

All Superinterfaces:
Classifier, CMetadata, MdObjectBase, MdObjectBaseUtil, MdObjectBaseXML, PrimaryType, Remote, Root
All Known Subinterfaces:
ExternalTable, JoinTable, PhysicalTable, QueryTable, RelationalTable, SecuredTable, TableCollection, WorkTable

public interface DataTable extends Classifier
An abstract type that represents an object that contains a set of columns. When creating metadata, use the subtype of DataTable that best describes the entity that you want to represent.

Attributes of DataTable are:

Associations of DataTable are:

Usage

To create an instance of this DataTable, use the factory create methods.
Example: create a DataTable with name "DataTable_Object", in repository "AAAAAAAA".
 // create a store to contain your objects for this change. If you do not have an existing object
 // or store to use.  You may obtain the store from another object by using Object.getObjectStore().
 MdFactory factory; //where "factory" is a valid MdFactory instance
 MdObjectStore objectStore = factory.createObjectStore();
 DataTable myObject = (DataTable) factory.createComplexMetadataObject(objectStore, "DataTable_Object", MetadataObjects.DATATABLE, "AAAAAAAA");
 myObject.updateMetadataAll();  // Write object to server
 objectStore.dispose();  // dispose of the object store if it is no longer needed
 

Behavior

  • Attributes and associations for this object can be retrieved by using the methods in MdOMIUtil.
  • When changes are made to the object, either by setting an attribute or adding objects to a particular association, they can be persisted to the metadata server with the updateMetadataAll method.
  • If an object needs to be deleted, the delete method can be used. This will flag the object as being deleted on the client, and will require an update call to persist the change to the server.

Dependencies

This class depends on objects being contained in an MdObjectStore. Object stores should be disposed of when they are no longer needed as this will help clean up memory. Disposing an object store will dispose of all objects contained within that store.

Since:
9.0
  • Field Details

    • ATTRIBUTE_TABLENAME_NAME

      static final String ATTRIBUTE_TABLENAME_NAME
      Constant used for the name of the TableName attribute.

      TableName: This is the DBMS name for tables in an external database or the SAS dataset name.

      See Also:
    • ATTRIBUTE_NUMROWS_NAME

      static final String ATTRIBUTE_NUMROWS_NAME
      Constant used for the name of the NumRows attribute.

      NumRows: This attribute contains the number of rows of data in the table. It can be filled in at data loading time to indicate to the metadata consumers how many rows of data a table has in it. If the number of rows is unknown, then a -1 is returned.

      See Also:
    • ASSOCIATION_COLUMNHIERARCHIES_NAME

      static final String ASSOCIATION_COLUMNHIERARCHIES_NAME
      Constant used for the name of the ColumnHierarchies association.

      ColumnHierarchies: The column hierarchies defined for this table.  

      See Also:
    • ASSOCIATION_COLUMNS_NAME

      static final String ASSOCIATION_COLUMNS_NAME
      Constant used for the name of the Columns association.

      Columns: The list of columns contained in this table.  

      See Also:
    • ASSOCIATION_FOREIGNKEYS_NAME

      static final String ASSOCIATION_FOREIGNKEYS_NAME
      Constant used for the name of the ForeignKeys association.

      ForeignKeys: The foreign keys associated with a table.  

      See Also:
    • ASSOCIATION_TABLEPACKAGE_NAME

      static final String ASSOCIATION_TABLEPACKAGE_NAME
      Constant used for the name of the TablePackage association.

      TablePackage: The data packages (schema or libraries) that can be used to reference this table.  

      See Also:
    • ASSOCIATION_UNIQUEKEYS_NAME

      static final String ASSOCIATION_UNIQUEKEYS_NAME
      Constant used for the name of the UniqueKeys association.

      UniqueKeys: The list of unique keys associated with a table.  

      See Also:
    • ASSOCIATION_ROLES_NAME

      static final String ASSOCIATION_ROLES_NAME
      Constant used for the name of the Roles association.

      Roles: The roles an object can play. 

      See Also:
    • ASSOCIATION_TABLECOLLECTIONS_NAME

      static final String ASSOCIATION_TABLECOLLECTIONS_NAME
      Constant used for the name of the TableCollections association.

      TableCollections: The table collections where this data table participates. 

      See Also:
  • Method Details

    • initializeRequiredObjects

      void initializeRequiredObjects() throws RemoteException
      (S) This initializes the Required Objects(Roles) which are:
      Specified by:
      initializeRequiredObjects in interface Classifier
      Specified by:
      initializeRequiredObjects in interface MdObjectBaseUtil
      Specified by:
      initializeRequiredObjects in interface PrimaryType
      Specified by:
      initializeRequiredObjects in interface Root
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • initializePredObjects

      void initializePredObjects() throws RemoteException
      (S) Adds the Associated objects to the predObjects which are:
      ColumnHierarchies
      Columns
      ForeignKeys
      TablePackage
      UniqueKeys
      Specified by:
      initializePredObjects in interface Classifier
      Specified by:
      initializePredObjects in interface MdObjectBase
      Specified by:
      initializePredObjects in interface PrimaryType
      Specified by:
      initializePredObjects in interface Root
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getTableName

      String getTableName() throws RemoteException
      Gets the String value of TableName
      Returns:
      The TableName
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getTableNameState

      int getTableNameState() throws RemoteException
      Gets the Metadata State of TableName
      Returns:
      The State.
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getTableNameMaxLength

      int getTableNameMaxLength() throws RemoteException
      Gets the maximum length of TableName
      Returns:
      The max size
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getNumRows

      double getNumRows() throws RemoteException
      Gets the double value of NumRows
      Returns:
      The NumRows
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getNumRowsState

      int getNumRowsState() throws RemoteException
      Gets the Metadata State of NumRows
      Returns:
      The State.
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getColumnHierarchies

      AssociationList getColumnHierarchies() throws RemoteException, MdException
      Gets the AssociationList of ColumnHierarchies
      Returns:
      Returns the AssociationList of ColumnHierarchies which can be of type:
      ColumnHierarchy
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getColumns

      AssociationList getColumns() throws RemoteException, MdException
      Gets the AssociationList of Columns
      Returns:
      Returns the AssociationList of Columns which can be of type:
      Column
      ColumnRange
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getForeignKeys

      AssociationList getForeignKeys() throws RemoteException, MdException
      Gets the AssociationList of ForeignKeys
      Returns:
      Returns the AssociationList of ForeignKeys which can be of type:
      ForeignKey
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getTablePackages

      AssociationList getTablePackages() throws RemoteException, MdException
      Gets the AssociationList of TablePackages
      Returns:
      Returns the AssociationList of TablePackages which can be of type:
      RelationalSchema
      DatabaseSchema
      DataSourceName
      SASLibrary
      SecuredLibrary
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException
    • getTablePackage

      RelationalSchema getTablePackage() throws RemoteException, MdException
      Gets the RelationalSchema for TablePackage
      Returns:
      The RelationalSchema ( null if not set) of TablePackagewhich can be of type:
      RelationalSchema
      DatabaseSchema
      DataSourceName
      SASLibrary
      SecuredLibrary
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getUniqueKeys

      AssociationList getUniqueKeys() throws RemoteException, MdException
      Gets the AssociationList of UniqueKeys
      Returns:
      Returns the AssociationList of UniqueKeys which can be of type:
      UniqueKey
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getRoles

      AssociationList getRoles() throws RemoteException, MdException
      Gets the Association list of Roles
      Returns:
      The AssociationList of Roles which can be of type:
      Role
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getTableCollections

      AssociationList getTableCollections() throws RemoteException, MdException
      Gets the Association list of TableCollections
      Returns:
      The AssociationList of TableCollections which can be of type:
      TableCollection
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getColumnHierarchies

      AssociationList getColumnHierarchies(boolean fGoToServer) throws RemoteException, MdException
      Gets the Associationlist of ColumnHierarchies
      Parameters:
      fGoToServer - boolean Get the value from the server.
      Returns:
      Returns the AssociationList of ColumnHierarchies which can be of type:
      ColumnHierarchy
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getColumns

      AssociationList getColumns(boolean fGoToServer) throws RemoteException, MdException
      Gets the Associationlist of Columns
      Parameters:
      fGoToServer - boolean Get the value from the server.
      Returns:
      Returns the AssociationList of Columns which can be of type:
      Column
      ColumnRange
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getForeignKeys

      AssociationList getForeignKeys(boolean fGoToServer) throws RemoteException, MdException
      Gets the Associationlist of ForeignKeys
      Parameters:
      fGoToServer - boolean Get the value from the server.
      Returns:
      Returns the AssociationList of ForeignKeys which can be of type:
      ForeignKey
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getTablePackages

      AssociationList getTablePackages(boolean fGoToServer) throws RemoteException, MdException
      Gets the Associationlist of TablePackages
      Parameters:
      fGoToServer - boolean Get the value from the server.
      Returns:
      Returns the AssociationList of TablePackages which can be of type:
      RelationalSchema
      DatabaseSchema
      DataSourceName
      SASLibrary
      SecuredLibrary
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getUniqueKeys

      AssociationList getUniqueKeys(boolean fGoToServer) throws RemoteException, MdException
      Gets the Associationlist of UniqueKeys
      Parameters:
      fGoToServer - boolean Get the value from the server.
      Returns:
      Returns the AssociationList of UniqueKeys which can be of type:
      UniqueKey
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getRoles

      AssociationList getRoles(boolean fGoToServer) throws RemoteException, MdException
      Gets the Associationlist of Roles
      Parameters:
      fGoToServer - boolean Get the value from the server.
      Returns:
      Returns the Roles which can be of type:
      Role
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getTableCollections

      AssociationList getTableCollections(boolean fGoToServer) throws RemoteException, MdException
      Gets the Associationlist of TableCollections
      Parameters:
      fGoToServer - boolean Get the value from the server.
      Returns:
      Returns the TableCollections which can be of type:
      TableCollection
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • setTableName

      void setTableName(String inTableName) throws RemoteException
      Sets the TableName value and sets the state to MetadataState.LOCAL.
      Parameters:
      inTableName - String
      Throws:
      RemoteException - If error communicating with remote object.
    • setTableName

      void setTableName(String inTableName, int state) throws RemoteException
      Sets the TableName Metadata State.
      Parameters:
      inTableName - String
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setTableNameState

      void setTableNameState(int state) throws RemoteException
      Sets the Metadata State of TableName.
      Parameters:
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setNumRows

      void setNumRows(double inNumRows) throws RemoteException
      Sets the NumRows value and sets the state to MetadataState.LOCAL.
      Parameters:
      inNumRows - double
      Throws:
      RemoteException - If error communicating with remote object.
    • setNumRows

      void setNumRows(double inNumRows, int state) throws RemoteException
      Sets the NumRows Metadata State.
      Parameters:
      inNumRows - double
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setNumRows

      void setNumRows(String inNumRows) throws RemoteException
      Sets the NumRows value and sets the state to MetadataState.LOCAL
      Parameters:
      inNumRows - String
      Throws:
      RemoteException - If error communicating with remote object.
    • setNumRows

      void setNumRows(String inNumRows, int state) throws RemoteException
      Sets the NumRows value and Metadata State.
      Parameters:
      inNumRows - String
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setNumRowsState

      void setNumRowsState(int state) throws RemoteException
      Sets the Metadata State of NumRows.
      Parameters:
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setColumnHierarchies

      void setColumnHierarchies(AssociationList list) throws RemoteException
      Sets the ColumnHierarchies list to be list. Objects of which can be of type:
      ColumnHierarchy
      Parameters:
      list - AssociationList
      Throws:
      RemoteException - If error communicating with remote object.
    • setColumnHierarchies

      void setColumnHierarchies(AssociationList inObjects, int state) throws RemoteException
      Sets the entire AssociationList to match the passed in Vector, sets the state of the AssociationList
      Parameters:
      inObjects - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setColumns

      void setColumns(AssociationList list) throws RemoteException
      Sets the Columns list to be list. Objects of which can be of type:
      Column
      ColumnRange
      Parameters:
      list - AssociationList
      Throws:
      RemoteException - If error communicating with remote object.
    • setColumns

      void setColumns(AssociationList inObjects, int state) throws RemoteException
      Sets the entire AssociationList to match the passed in Vector, sets the state of the AssociationList
      Parameters:
      inObjects - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setForeignKeys

      void setForeignKeys(AssociationList list) throws RemoteException
      Sets the ForeignKeys list to be list. Objects of which can be of type:
      ForeignKey
      Parameters:
      list - AssociationList
      Throws:
      RemoteException - If error communicating with remote object.
    • setForeignKeys

      void setForeignKeys(AssociationList inObjects, int state) throws RemoteException
      Sets the entire AssociationList to match the passed in Vector, sets the state of the AssociationList
      Parameters:
      inObjects - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setTablePackages

      void setTablePackages(AssociationList list) throws RemoteException
      Sets the TablePackages list to be list. Object of which can be of type:
      RelationalSchema
      DatabaseSchema
      DataSourceName
      SASLibrary
      SecuredLibrary
      Parameters:
      list - AssociationList
      Throws:
      RemoteException - If error communicating with remote object.
    • setTablePackages

      void setTablePackages(AssociationList list, int state) throws RemoteException
      Sets the TablePackages list to be list. Object of which can be of type:
      RelationalSchema
      DatabaseSchema
      DataSourceName
      SASLibrary
      SecuredLibrary
      Parameters:
      list - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setTablePackage

      void setTablePackage(RelationalSchema inObject) throws RemoteException
      Sets the TablePackages list 0th element to be inObject.
      Parameters:
      inObject - RelationalSchema
      Throws:
      RemoteException - If error communicating with remote object.
    • setUniqueKeys

      void setUniqueKeys(AssociationList list) throws RemoteException
      Sets the UniqueKeys list to be list. Objects of which can be of type:
      UniqueKey
      Parameters:
      list - AssociationList
      Throws:
      RemoteException - If error communicating with remote object.
    • setUniqueKeys

      void setUniqueKeys(AssociationList inObjects, int state) throws RemoteException
      Sets the entire AssociationList to match the passed in Vector, sets the state of the AssociationList
      Parameters:
      inObjects - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setRoles

      void setRoles(AssociationList list) throws RemoteException
      Sets the Roles list to be list. Objects of which can be of type:
      Role
      Parameters:
      list - AssociationList
      Throws:
      RemoteException - If error communicating with remote object.
    • setRoles

      void setRoles(AssociationList inObjects, int state) throws RemoteException
      Sets the entire Roles list to match the passed in AssociationList, sets the state of the Roles
      Parameters:
      inObjects - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setTableCollections

      void setTableCollections(AssociationList list) throws RemoteException
      Sets the TableCollections list to be list. Objects of which can be of type:
      TableCollection
      Parameters:
      list - AssociationList
      Throws:
      RemoteException - If error communicating with remote object.
    • setTableCollections

      void setTableCollections(AssociationList inObjects, int state) throws RemoteException
      Sets the entire TableCollections list to match the passed in AssociationList, sets the state of the TableCollections
      Parameters:
      inObjects - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.