com.ibm.websphere.management.configservice

Class ConfigServiceProxy

  • java.lang.Object
    • com.ibm.websphere.management.configservice.ConfigServiceProxy
  • All Implemented Interfaces:
    ConfigService


    public class ConfigServiceProxy
    extends java.lang.Object
    implements ConfigService
    This class implements a proxy object of the remote ConfigService MBean in the server. As config service is implemented as a MBean in the server, all the method calls on the MBean have to go through invoke method which is cumbersome and error prone. This the a helper class to allow user using remote config service component more easily.
    • Method Summary

      Methods 
      Modifier and Type Method and Description
      void addElement(Session inSession, javax.management.ObjectName configData, java.lang.String attribute, java.lang.Object element, int position)
      Add an element into a collection type attribute of a config data.
      void clearServerPortCache(Session session)
      Clear the cache in the session used for a server port resolution
      javax.management.ObjectName createConfigData(Session inSession, javax.management.ObjectName parent, java.lang.String attributeName, java.lang.String type, javax.management.AttributeList attrList)
      create a Config Data.
      javax.management.ObjectName createConfigDataByTemplate(Session inSession, javax.management.ObjectName parent, java.lang.String attributeName, javax.management.AttributeList attrList, javax.management.ObjectName template)
      Create a config data based on specified template.
      void deleteConfigData(Session inSession, javax.management.ObjectName configData)
      Delete the specified config data and its children.
      void discard(Session session)
      Discard changes made in the session since the last save or discard call.
      AdminClient getAdminClient()
      return the AdminClient object that this proxy uses to communicate with remote server.
      java.lang.Object getAttribute(Session inSession, javax.management.ObjectName configData, java.lang.String attribute)
      Get the attribute value of the specified config data.
      java.lang.Object getAttribute(Session session, javax.management.ObjectName configData, java.lang.String attribute, boolean recursive)
      Get the attribute value of the specified config data.
      javax.management.AttributeList getAttributes(Session inSession, javax.management.ObjectName configData, java.lang.String[] attributes, boolean recursive)
      Get the attribute values of the config data.
      javax.management.AttributeList getAttributesMetaInfo(java.lang.String configDataType)
      Get the meta information about the attributes of specified config data type.
      java.util.Map getConflictDocuments(Session session)
      Get the list of documents that have conflict updates made by other sessions.
      javax.management.ObjectName[] getRelationship(Session inSession, javax.management.ObjectName configData, java.lang.String relationship)
      Get the relationship value of the specified config object and relationship name.
      javax.management.AttributeList getRelationships(Session inSession, javax.management.ObjectName configData, java.lang.String[] relationshipNames)
      Get the named relationship values of specified config object.
      javax.management.AttributeList getRelationshipsMetaInfo(java.lang.String configObjectType)
      Get the meta information about the relationships of specified config data type, such as the type of the relationship value, the multiplicity of the relationship value etc.
      java.lang.String[] getSupportedConfigObjectTypes()
      returns the list of supported Config object types.
      java.lang.String[] getUnsavedChanges(Session session)
      Get all the documents that changed in the session after last save or discard call.
      javax.management.ObjectName[] queryConfigObjects(Session inSession, javax.management.ObjectName scope, javax.management.ObjectName name, javax.management.QueryExp query)
      The query method for config data in the config repository.
      javax.management.ObjectName[] queryConfigObjectsAtCurrentScope(Session inSession, javax.management.ObjectName scope, java.lang.String type)
      The query method for config data in the config repository
      javax.management.ObjectName[] queryTemplates(Session inSession, java.lang.String type)
      The query method for templates.
      void removeElement(Session inSession, javax.management.ObjectName configData, java.lang.String attribute, java.lang.Object element)
      Remove an element from collection type attribute of a config data.
      void resetAttributes(Session inSession, javax.management.ObjectName configData, javax.management.AttributeList attrList)
      Reset the attributes for the config data.
      javax.management.ObjectName[] resolve(Session inSession, javax.management.ObjectName scope, java.lang.String containmentPath)
      Resolve the config object based on the specified containment path.
      javax.management.ObjectName[] resolve(Session inSession, java.lang.String containmentPath)
      Resolve the config object based on the specified containment path.
      void save(Session session, boolean overwriteOnConflict)
      Save the changes made in the session to config repository.
      void setAttributes(Session inSession, javax.management.ObjectName configData, javax.management.AttributeList attrList)
      Modify attributes of the specified config data.
      void setProperties(Session session, java.util.HashMap props)
      Set properties that associates with the specified session.
      void unsetAttributes(Session inSession, javax.management.ObjectName configData, java.lang.String[] attributes)
      Clear the specified attributes from the config data.
      ValidationResult validate(Session session, javax.management.ObjectName scope)
      Validate the configuration within the specified scope.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ConfigServiceProxy

        public ConfigServiceProxy(AdminClient adminClient)
                           throws javax.management.InstanceNotFoundException,
                                  ConnectorException
        Constructor a proxy object.
        Parameters:
        adminClient - an AdminClient object that this proxy uses to communicate with remote server.
        Throws:
        javax.management.InstanceNotFoundException
        ConnectorException
    • Method Detail

      • getAdminClient

        public AdminClient getAdminClient()
        return the AdminClient object that this proxy uses to communicate with remote server.
      • getAttributesMetaInfo

        public javax.management.AttributeList getAttributesMetaInfo(java.lang.String configDataType)
                                                             throws ConfigServiceException,
                                                                    ConnectorException
        Description copied from interface: ConfigService
        Get the meta information about the attributes of specified config data type. Follwing are list of attributes encoded in the returned meta info attribute list.
        • SystemAttributes._ATTRIBUTE_METAINFO_NAME
        • SystemAttributes._ATTRIBUTE_METAINFO_TYPE
        • SystemAttributes._ATTRIBUTE_METAINFO_IS_COLLECTION
        • SystemAttributes._ATTRIBUTE_METAINFO_IS_REQUIRED
        • SystemAttributes._ATTRIBUTE_METAINFO_DEFAULT_VALUE
        • SystemAttributes._ATTRIBUTE_METAINFO_ENUM_INFO
        • SystemAttributes._ATTRIBUTE_METAINFO_IS_OBJECT
        • SystemAttributes._ATTRIBUTE_METAINFO_IS_REFERENCE
        Specified by:
        getAttributesMetaInfo in interface ConfigService
        Parameters:
        configDataType - the type of the config data.
        Returns:
        the attribute information in a format of AttributeList. The attribute name is the attribute name and the attribute value is the detailed attribute meta information in a form of AttributeList.
        Throws:
        ConfigServiceException
        ConnectorException
      • getRelationshipsMetaInfo

        public javax.management.AttributeList getRelationshipsMetaInfo(java.lang.String configObjectType)
                                                                throws ConfigServiceException,
                                                                       ConnectorException
        Description copied from interface: ConfigService
        Get the meta information about the relationships of specified config data type, such as the type of the relationship value, the multiplicity of the relationship value etc.
        Specified by:
        getRelationshipsMetaInfo in interface ConfigService
        Parameters:
        configObjectType - config ojbect type. It must be one of the types returned from getSupportedConfigObjectTypes method.
        Returns:
        the relationship information in a format of AttributeList. The attribute name is the relationship name and the attribute value is the detailed information regarding to this relationship in a form of AttributeList. Here are list of attributes in the relationship meta info:
        • SystemAttributes._ATTRIBUTE_METAINFO_NAME
        • SystemAttributes._ATTRIBUTE_METAINFO_TYPE
        • SystemAttributes._ATTRIBUTE_METAINFO_IS_COLLECTION
        Throws:
        ConfigServiceException
        ConnectorException
      • queryConfigObjects

        public javax.management.ObjectName[] queryConfigObjects(Session inSession,
                                                       javax.management.ObjectName scope,
                                                       javax.management.ObjectName name,
                                                       javax.management.QueryExp query)
                                                         throws ConfigServiceException,
                                                                ConnectorException
        Description copied from interface: ConfigService
        The query method for config data in the config repository.
        Specified by:
        queryConfigObjects in interface ConfigService
        scope - the scope of query. It may be an ObjectName of a cell, node or server. Whole repository will be queried if scope is null.
        name - the object name pattern that identifies MBeans to be returned. SystemAttributes._WEBSPHERE_CONFIG_DATA_TYPE is required to minimize the scope of query. SystemAttributes._WEBSPHERE_CONFIG_DATA_TYPE must be one the supported config object types it presents
        query - The query expression to be applied for selecting config ojbects. If null is specified, no query expression will be applied for selecting config objects. Current implementation only supports null input.
        Returns:
        ObjecNames of config data that match the specified query criteria. Returns an empty array if no matching config data are found.
        Throws:
        ConfigServiceException
        ConnectorException
      • queryConfigObjectsAtCurrentScope

        public javax.management.ObjectName[] queryConfigObjectsAtCurrentScope(Session inSession,
                                                                     javax.management.ObjectName scope,
                                                                     java.lang.String type)
                                                                       throws ConfigServiceException,
                                                                              ConnectorException
        Description copied from interface: ConfigService
        The query method for config data in the config repository
        Specified by:
        queryConfigObjectsAtCurrentScope in interface ConfigService
        scope - the scope of query. It may be an ObjectName of a cell, node, server or cluster. It only queries the given scope
        type - the config object type. It must be one the supported config object type.
        Returns:
        ObjecNames of config data that match the specified query criteria. Returns an empty array if no matching config data are found.
        Throws:
        ConfigServiceException
        ConnectorException
      • resolve

        public javax.management.ObjectName[] resolve(Session inSession,
                                            java.lang.String containmentPath)
                                              throws ConfigServiceException,
                                                     ConnectorException
        Description copied from interface: ConfigService
        Resolve the config object based on the specified containment path.
        Specified by:
        resolve in interface ConfigService
        Parameters:
        inSession - the seesion id.
        containmentPath - the containment path of config data. The format this arguemnt is type=name:type=name:... For example, Node=node1:Server=process1:Application=myAppServer. The type is the config data type, name if the config data name. The name field is optional. If name is not specified, then only type is matched. The name field may be double quoted. If the name field is not quoted, then the space around of value field will be trimed.
        Returns:
        an array of matched config data.
        Throws:
        ConfigServiceException
        ConnectorException
      • resolve

        public javax.management.ObjectName[] resolve(Session inSession,
                                            javax.management.ObjectName scope,
                                            java.lang.String containmentPath)
                                              throws ConfigServiceException,
                                                     ConnectorException
        Description copied from interface: ConfigService
        Resolve the config object based on the specified containment path.
        Specified by:
        resolve in interface ConfigService
        Parameters:
        inSession - the seesion id.
        scope - the scope of resolve. It may be an ObjectName of a cell, node or server. Whole repository will be queried if scope is null
        containmentPath - the containment path of config data. The format this arguemnt is type=name:type=name:... For example, Node=node1:Server=process1:Application=myAppServer. The type is the config data type, name if the config data name. The name field is optional. If name is not specified, then only type is matched. The name field may be double quoted. If the name field is not quoted, then the space around of value field will be trimed.
        Returns:
        an array of matched config data.
        Throws:
        ConfigServiceException
        ConnectorException
      • createConfigDataByTemplate

        public javax.management.ObjectName createConfigDataByTemplate(Session inSession,
                                                             javax.management.ObjectName parent,
                                                             java.lang.String attributeName,
                                                             javax.management.AttributeList attrList,
                                                             javax.management.ObjectName template)
                                                               throws ConfigServiceException,
                                                                      ConnectorException
        Description copied from interface: ConfigService
        Create a config data based on specified template. If the attribute is a collection type attribute, this method will create the object and add the created object at the end of list. Note unlike the createConfigData method, we don't allow user specify type in this method as the type of template will be the type of created object.
        Specified by:
        createConfigDataByTemplate in interface ConfigService
        Parameters:
        inSession - the seesion id.
        parent - the ObjectName of the parent config data.
        attributeName - - the name of the relationship or attribute name between the parent and child config data.
        attrList - - the AttributeList of created config object.
        template - - the template to be used during creation. Use system default template if null is supplied. The template can be one of the template returned from queryTemplates call, but it can be a config object or data in the repository.
        Returns:
        the config data id of created config data.
        Throws:
        ConfigServiceException
        ConnectorException
      • createConfigData

        public javax.management.ObjectName createConfigData(Session inSession,
                                                   javax.management.ObjectName parent,
                                                   java.lang.String attributeName,
                                                   java.lang.String type,
                                                   javax.management.AttributeList attrList)
                                                     throws ConfigServiceException,
                                                            ConnectorException
        Description copied from interface: ConfigService
        create a Config Data. If the attribute is a collection type attribute, this method will create the object and add the newly created object at the end of list.
        Specified by:
        createConfigData in interface ConfigService
        Parameters:
        inSession - the seesion id.
        parent - the id of the parent config data.
        attributeName - the name of the relationship or attribute between the parent and child config data.
        type - the type of created config data. The type can be the type of the attribute specified in the attribute meta info, it can also be one of the subtypes listed in the attribute _ATTRIBUTE_METAINFO_SUBTYPES in the meta info of the attribute.
        attrList - the AttributeList of created config object.
        Returns:
        the config data id of created config object or config data.
        Throws:
        ConfigServiceException
        ConnectorException
      • setAttributes

        public void setAttributes(Session inSession,
                         javax.management.ObjectName configData,
                         javax.management.AttributeList attrList)
                           throws ConfigServiceException,
                                  ConnectorException
        Description copied from interface: ConfigService
        Modify attributes of the specified config data. Note this method does not change the attributes that are not specified in the attribute list.

        Specified by:
        setAttributes in interface ConfigService
        Parameters:
        inSession - the seesion id.
        configData - - the ObjectName of the config data.
        attrList - - the AttributeList that contains the list of attributes to be modified.
        Throws:
        ConfigServiceException
        ConnectorException
      • addElement

        public void addElement(Session inSession,
                      javax.management.ObjectName configData,
                      java.lang.String attribute,
                      java.lang.Object element,
                      int position)
                        throws ConfigServiceException,
                               ConnectorException
        Description copied from interface: ConfigService
        Add an element into a collection type attribute of a config data.
        Specified by:
        addElement in interface ConfigService
        Parameters:
        inSession - the seesion id.
        configData - the ObjectName of the config data.
        attribute - the name of the attribute.
        element - the value of the element. It might be a primary data type, an attribute list or a object reference.
        position - the position added in the list. Element will be appended at the end if -1.
        Throws:
        ConfigServiceException
        ConnectorException
      • removeElement

        public void removeElement(Session inSession,
                         javax.management.ObjectName configData,
                         java.lang.String attribute,
                         java.lang.Object element)
                           throws ConfigServiceException,
                                  ConnectorException
        Description copied from interface: ConfigService
        Remove an element from collection type attribute of a config data.
        Specified by:
        removeElement in interface ConfigService
        Parameters:
        inSession - the seesion id
        configData - the ObjectName of the config data.
        attribute - the name of the attribute.
        element - the ObjectName of the element. In case of primitive data type, it should be the element value itself.
        Throws:
        ConfigServiceException
        ConnectorException
      • resetAttributes

        public void resetAttributes(Session inSession,
                           javax.management.ObjectName configData,
                           javax.management.AttributeList attrList)
                             throws ConfigServiceException,
                                    ConnectorException
        Description copied from interface: ConfigService
        Reset the attributes for the config data. This method is basically do the same thing as the setAttributes call except that this method clears all the attributes value before call the setAttributes method.
        Specified by:
        resetAttributes in interface ConfigService
        Parameters:
        inSession - the seesion id.
        configData - the ObjectName of the config object.
        attrList - the value of attribute list.
        Throws:
        ConfigServiceException
        ConnectorException
      • getAttributes

        public javax.management.AttributeList getAttributes(Session inSession,
                                                   javax.management.ObjectName configData,
                                                   java.lang.String[] attributes,
                                                   boolean recursive)
                                                     throws ConfigServiceException,
                                                            ConnectorException
        Description copied from interface: ConfigService
        Get the attribute values of the config data.
        Specified by:
        getAttributes in interface ConfigService
        Parameters:
        inSession - the seesion id.
        configData - ObjectName of config data.
        attributes - an array of attribute names whose value should be returned. null means all the attributes.
        recursive - returns a nested attribute list as the value of nested config data attribute if set to be true; return the ObjectName of nested config data as the value of nested config data attribute if set to be false.
        Returns:
        the attribute values of specified attributes in a form of AttributeList.
        Throws:
        ConfigServiceException
        ConnectorException
      • getAttribute

        public java.lang.Object getAttribute(Session session,
                                    javax.management.ObjectName configData,
                                    java.lang.String attribute,
                                    boolean recursive)
                                      throws ConfigServiceException,
                                             ConnectorException
        Description copied from interface: ConfigService
        Get the attribute value of the specified config data.
        Specified by:
        getAttribute in interface ConfigService
        Parameters:
        session - the seesion id.
        configData - the ObjectName of the config data.
        attribute - an attribute name.
        recursive - returns a attribute values as the value of nested config data attribute if set to be true; return the Object of config data if set to be false.
        Returns:
        the attribute values of specified attribute.
        Throws:
        ConfigServiceException
        ConnectorException
      • getRelationships

        public javax.management.AttributeList getRelationships(Session inSession,
                                                      javax.management.ObjectName configData,
                                                      java.lang.String[] relationshipNames)
                                                        throws ConfigServiceException,
                                                               ConnectorException
        Description copied from interface: ConfigService
        Get the named relationship values of specified config object.

        This method skips invalid relationship name instead of throwing exception like getAttributes.

        Specified by:
        getRelationships in interface ConfigService
        Parameters:
        inSession - the seesion id.
        configData - ObjectName of the config data.
        relationshipNames - an array of the relationship names.
        Returns:
        the value of the specified relationship on the object as an AttributeList. The name of the Attribute is a relationship name and the value of the the Attribute is the value of the relationship which is represented in a form of ObjectName.
        Throws:
        ConfigServiceException
        ConnectorException
      • getRelationship

        public javax.management.ObjectName[] getRelationship(Session inSession,
                                                    javax.management.ObjectName configData,
                                                    java.lang.String relationship)
                                                      throws ConfigServiceException,
                                                             ConnectorException
        Description copied from interface: ConfigService
        Get the relationship value of the specified config object and relationship name.
        Specified by:
        getRelationship in interface ConfigService
        Parameters:
        inSession - the seesion id.
        configData - ObjectName of the config data.
        relationship - the name of the relationship.
        Returns:
        the value of the specified relationship on the object. The value of the relationship is represented as an array of ObjectName.
        Throws:
        ConfigServiceException
        ConnectorException
IBM WebSphere Application ServerTM
Release 9.0