Interface ResponsibleParty

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

public interface ResponsibleParty extends SecondaryType
This metadata type associates a responsibility with an identity. Later, this ResponsibleParty object can be associated with one or more resources. A ResponsibleParty object must be created in the same SAS Metadata Repository as the Person or IdentityGroup object of the identity that it describes. New methods have been added to the SAS Open Metadata Interface that create and get ResponsibleParty objects in the appropriate repository, regardless of whether the requesting identity has WriteMetadata permission to that repository or not. For more information, see AddResponsibleParty and GetResponsibleParty in the SAS 9.2 Open Metadata Interface: Reference and Usage.

ResponsibleParty objects

  • May be associated with only a single identity.
  • Are considered to be contained by the identity.
  • Are deleted when the associated identity is deleted.
  • May not be edited or extended after creation.
  • May have a SAS supplied or user-defined role.
  • Have the name of the associated identity.
  • Inherit security from its associated identity
  • Do not imply security based roles.
  • Are stored in the same repository as the identity object by default (Foundation).
  • Responsibility not Role should be used when options are presented to end-users. Role can imply security roles.

Attributes of ResponsibleParty are:

Associations of ResponsibleParty are:

Usage

To create an instance of this ResponsibleParty, use the factory create methods.
Example: create a ResponsibleParty with name "ResponsibleParty_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();
 ResponsibleParty myObject = (ResponsibleParty) factory.createComplexMetadataObject(objectStore, "ResponsibleParty_Object", MetadataObjects.RESPONSIBLEPARTY, "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_ROLE_NAME

      static final String ATTRIBUTE_ROLE_NAME
      Constant used for the name of the Role attribute.

      Role: The responsibility the associated identity has in relation to the associated objects. Begining in SAS 9.2, the list of SAS-supported roles will be maintained and localized within a utility jar. Supported roles include: OWNER USER ADMINISTRATOR CHANGEDBY

      See Also:
    • ASSOCIATION_OBJECTS_NAME

      static final String ASSOCIATION_OBJECTS_NAME
      Constant used for the name of the Objects association.

      Objects: The responsibility as defined by the Role attribute may apply to one or many objects. An application with a requirement to determine all of the objects for which a person has been assigned a particular responsibility would find the ResponsibleParty object where Role is the responsibility in question and query the Objects association to obtain the list of objects.  

      See Also:
    • ASSOCIATION_PERSONS_NAME

      static final String ASSOCIATION_PERSONS_NAME
      Constant used for the name of the Persons association.

      Persons: The list of persons that have been assigned the responsibility defined in this object.  

      See Also:
  • Method Details

    • initializeRequiredObjects

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

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

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

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

      AssociationList getObjects() throws RemoteException, MdException
      Gets the AssociationList of Objects
      Returns:
      Returns the AssociationList of Objects which can be of type:
      All types
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getPersons

      AssociationList getPersons() throws RemoteException, MdException
      Gets the AssociationList of Persons
      Returns:
      Returns the AssociationList of Persons which can be of type:
      Identity
      IdentityGroup
      Person
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getObjects

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

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

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

      void setRole(String inRole, int state) throws RemoteException
      Sets the Role Metadata State.
      Parameters:
      inRole - String
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setRoleState

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

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

      void setObjects(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.
    • setPersons

      void setPersons(AssociationList list) throws RemoteException
      Sets the Persons list to be list. Objects of which can be of type:
      Identity
      IdentityGroup
      Person
      Parameters:
      list - AssociationList
      Throws:
      RemoteException - If error communicating with remote object.
    • setPersons

      void setPersons(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.