Interface Aggregation

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

public interface Aggregation extends PrimaryType
A summary of detail data that is stored with or referred to by a cube. Aggregations support rapid and efficient answers to business questions. Developers are discouraged from creating or consuming Cube metadata directly with the SAS Open Metadata Interface. Instead, Cubes should be defined by using either SAS OLAP Cube Studio or PROC OLAP. For more information, see the documentation for SAS OLAP Cube Studio and PROC OLAP.

Attributes of Aggregation are:

Associations of Aggregation are:

Usage

To create an instance of this Aggregation, use the factory create methods.
Example: create a Aggregation with name "Aggregation_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();
 Aggregation myObject = (Aggregation) factory.createComplexMetadataObject(objectStore, "Aggregation_Object", MetadataObjects.AGGREGATION, "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_TYPE_NAME

      static final String ATTRIBUTE_TYPE_NAME
      Constant used for the name of the Type attribute.

      Type: This describes the persistence mechanism for the aggregation. Valid values are: MOLAP, ROLAP.

      See Also:
    • ATTRIBUTE_NWAY_NAME

      static final String ATTRIBUTE_NWAY_NAME
      Constant used for the name of the Nway attribute.

      Nway: Set to true, this attribute indicates the aggregation is the NWAY aggregation for the cube. The default is false.

      See Also:
    • ASSOCIATION_LEVELS_NAME

      static final String ASSOCIATION_LEVELS_NAME
      Constant used for the name of the Levels association.

      Levels: The levels associated with this aggregation.  

      See Also:
    • ASSOCIATION_AGGREGATIONTABLES_NAME

      static final String ASSOCIATION_AGGREGATIONTABLES_NAME
      Constant used for the name of the AggregationTables association.

      AggregationTables: The tables that contain columns used in the aggregations. 

      See Also:
    • ASSOCIATION_OWNINGCUBE_NAME

      static final String ASSOCIATION_OWNINGCUBE_NAME
      Constant used for the name of the OwningCube association.

      OwningCube: The cube that contains this aggregation. 

      See Also:
  • Method Details

    • initializeRequiredObjects

      void initializeRequiredObjects() throws RemoteException
      (S) This initializes the Required Objects(Roles) which are:
      OwningCube
      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:
      Levels
      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.
    • getType

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

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

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

      int getNway() throws RemoteException
      Gets the int value of Nway
      Returns:
      The Nway
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getNwayState

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

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

      AssociationList getAggregationTables() throws RemoteException, MdException
      Gets the Association list of AggregationTables
      Returns:
      The AssociationList of AggregationTables which can be of type:
      PhysicalTable
      WorkTable
      SecuredTable
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getOwningCubes

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

      Cube getOwningCube() throws RemoteException, MdException
      Gets the Cube for OwningCube
      Returns:
      The Cube ( null if not set ) of OwningCube which can be of type:
      Cube
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getLevels

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

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

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

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

      void setType(String inType, int state) throws RemoteException
      Sets the Type Metadata State.
      Parameters:
      inType - String
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setTypeState

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

      void setNway(int inNway) throws RemoteException
      Sets the Nway value and sets the state to MetadataState.LOCAL.
      Parameters:
      inNway - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setNway

      void setNway(int inNway, int state) throws RemoteException
      Sets the Nway Metadata State.
      Parameters:
      inNway - int
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setNway

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

      void setNway(String inNway, int state) throws RemoteException
      Sets the Nway value and Metadata State.
      Parameters:
      inNway - String
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setNwayState

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

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

      void setLevels(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.
    • setAggregationTables

      void setAggregationTables(AssociationList list) throws RemoteException
      Sets the AggregationTables list to be list. Objects of which can be of type:
      PhysicalTable
      WorkTable
      SecuredTable
      Parameters:
      list - AssociationList
      Throws:
      RemoteException - If error communicating with remote object.
    • setAggregationTables

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

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

      void setOwningCubes(AssociationList list, int state) throws RemoteException
      Sets the OwningCubes list to be list. Objects of which can be of type:
      Cube
      Parameters:
      list - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setOwningCube

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