Interface KeyAssociation

All Superinterfaces:
CMetadata, MdObjectBase, MdObjectBaseUtil, MdObjectBaseXML, Remote, Root, SecondaryType

public interface KeyAssociation extends SecondaryType
Represents the relationship between two columns in a foreign key, unique key relationship. For example, if table a has a unique key of columns a1 and a2, and table b has a foreign key, of columns b1 and b2, into table a, there is a keyassociation between the columns that relate to each other, for ex. b1 to a1 and b2 to a2.

Attributes of KeyAssociation are:

Associations of KeyAssociation are:

Usage

To create an instance of this KeyAssociation, use the factory create methods.
Example: create a KeyAssociation with name "KeyAssociation_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();
 KeyAssociation myObject = (KeyAssociation) factory.createComplexMetadataObject(objectStore, "KeyAssociation_Object", MetadataObjects.KEYASSOCIATION, "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

    • ASSOCIATION_FOREIGNKEYCOLUMN_NAME

      static final String ASSOCIATION_FOREIGNKEYCOLUMN_NAME
      Constant used for the name of the ForeignKeyColumn association.

      ForeignKeyColumn: The columns that comprise a foreign key. Through this object, the foreign key columns are associated with the columns that comprise a particular unique key.  

      See Also:
    • ASSOCIATION_UNIQUEKEYCOLUMN_NAME

      static final String ASSOCIATION_UNIQUEKEYCOLUMN_NAME
      Constant used for the name of the UniqueKeyColumn association.

      UniqueKeyColumn: The column that is part of a unique key that is associated through this object with a column that is part of a foreign key.  

      See Also:
    • ASSOCIATION_OWNINGFOREIGNKEY_NAME

      static final String ASSOCIATION_OWNINGFOREIGNKEY_NAME
      Constant used for the name of the OwningForeignKey association.

      OwningForeignKey: The foreign key associated with this object. 

      See Also:
  • Method Details

    • initializeRequiredObjects

      void initializeRequiredObjects() throws RemoteException
      (S) This initializes the Required Objects(Roles) which are:
      OwningForeignKey
      Specified by:
      initializeRequiredObjects in interface MdObjectBaseUtil
      Specified by:
      initializeRequiredObjects in interface Root
      Specified by:
      initializeRequiredObjects in interface SecondaryType
      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:
      ForeignKeyColumn
      UniqueKeyColumn
      Specified by:
      initializePredObjects in interface MdObjectBase
      Specified by:
      initializePredObjects in interface Root
      Specified by:
      initializePredObjects in interface SecondaryType
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getForeignKeyColumns

      AssociationList getForeignKeyColumns() throws RemoteException, MdException
      Gets the AssociationList of ForeignKeyColumns
      Returns:
      Returns the AssociationList of ForeignKeyColumns which can be of type:
      Column
      ColumnRange
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException
    • getForeignKeyColumn

      Column getForeignKeyColumn() throws RemoteException, MdException
      Gets the Column for ForeignKeyColumn
      Returns:
      The Column ( null if not set) of ForeignKeyColumnwhich 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.
    • getUniqueKeyColumns

      AssociationList getUniqueKeyColumns() throws RemoteException, MdException
      Gets the AssociationList of UniqueKeyColumns
      Returns:
      Returns the AssociationList of UniqueKeyColumns which can be of type:
      Column
      ColumnRange
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException
    • getUniqueKeyColumn

      Column getUniqueKeyColumn() throws RemoteException, MdException
      Gets the Column for UniqueKeyColumn
      Returns:
      The Column ( null if not set) of UniqueKeyColumnwhich 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.
    • getOwningForeignKeys

      AssociationList getOwningForeignKeys() throws RemoteException, MdException
      Gets the Association list of OwningForeignKeys
      Returns:
      The AssociationList of OwningForeignKeys 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.
    • getOwningForeignKey

      ForeignKey getOwningForeignKey() throws RemoteException, MdException
      Gets the ForeignKey for OwningForeignKey
      Returns:
      The ForeignKey ( null if not set ) of OwningForeignKey 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.
    • getForeignKeyColumns

      AssociationList getForeignKeyColumns(boolean fGoToServer) throws RemoteException, MdException
      Gets the Associationlist of ForeignKeyColumns
      Parameters:
      fGoToServer - boolean Get the value from the server.
      Returns:
      Returns the AssociationList of ForeignKeyColumns 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.
    • getUniqueKeyColumns

      AssociationList getUniqueKeyColumns(boolean fGoToServer) throws RemoteException, MdException
      Gets the Associationlist of UniqueKeyColumns
      Parameters:
      fGoToServer - boolean Get the value from the server.
      Returns:
      Returns the AssociationList of UniqueKeyColumns 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.
    • getOwningForeignKeys

      AssociationList getOwningForeignKeys(boolean fGoToServer) throws RemoteException, MdException
      Gets the Associationlist of OwningForeignKeys
      Parameters:
      fGoToServer - boolean Get the value from the server.
      Returns:
      Returns the OwningForeignKeys 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.
    • setForeignKeyColumns

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

      void setForeignKeyColumns(AssociationList list, int state) throws RemoteException
      Sets the ForeignKeyColumns list to be list. Object of which can be of type:
      Column
      ColumnRange
      Parameters:
      list - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setForeignKeyColumn

      void setForeignKeyColumn(Column inObject) throws RemoteException
      Sets the ForeignKeyColumns list 0th element to be inObject.
      Parameters:
      inObject - Column
      Throws:
      RemoteException - If error communicating with remote object.
    • setUniqueKeyColumns

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

      void setUniqueKeyColumns(AssociationList list, int state) throws RemoteException
      Sets the UniqueKeyColumns list to be list. Object of which can be of type:
      Column
      ColumnRange
      Parameters:
      list - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setUniqueKeyColumn

      void setUniqueKeyColumn(Column inObject) throws RemoteException
      Sets the UniqueKeyColumns list 0th element to be inObject.
      Parameters:
      inObject - Column
      Throws:
      RemoteException - If error communicating with remote object.
    • setOwningForeignKeys

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

      void setOwningForeignKeys(AssociationList list, int state) throws RemoteException
      Sets the OwningForeignKeys list to be list. Objects of which can be of type:
      ForeignKey
      Parameters:
      list - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setOwningForeignKey

      void setOwningForeignKey(ForeignKey inObject) throws RemoteException
      Sets the OwningForeignKeys list 0th element to be inObject.
      Parameters:
      inObject - ForeignKey
      Throws:
      RemoteException - If error communicating with remote object.