com.sun.identity.sm
Class ServiceSchemaManager

java.lang.Object
  |
  +--com.sun.identity.sm.ServiceSchemaManager

public class ServiceSchemaManager
extends java.lang.Object

The class ServiceSchemaManager provides interfaces to manage the service's schema. It provides access to ServiceSchema, which represents a single "schema" in the service.


Constructor Summary
ServiceSchemaManager(SSOToken token, java.lang.String serviceName, java.lang.String version)
          Creates an instance of ServiceSchemaManager for the given service and version pair.
 
Method Summary
 java.lang.String addListener(ServiceListener listener)
          Register for changes to service's schema.
 boolean equals(java.lang.Object o)
          Checks if the given object equals this object.
 ServiceSchema getDynamicSchema()
          Returns the dynamic service configuration schema.
 ServiceSchema getGlobalSchema()
          Returns the global service configuration schema.
 java.lang.String getI18NFileName()
          Returns the I18N properties file name for the service.
 java.lang.String getI18NJarURL()
          Returns the URL of the JAR file that contains the I18N properties file.
 java.lang.String getName()
          Returns the name of the service.
 ServiceSchema getOrganizationSchema()
          Returns the organization service configuration schema.
 ServiceSchema getPolicySchema()
          Returns the policy service configuration schema.
 java.lang.String getPropertiesViewBeanURL()
          Returns URL of the view bean for the service
 java.io.InputStream getSchema()
          Returns the service schema in XML for this service.
 ServiceSchema getSchema(SchemaType type)
          Returns the configuration schema for the given schema type
 java.util.Set getSchemaTypes()
          Returns the SchemaTypes available with this service
 java.util.Set getServiceAttributeNames(SchemaType type)
          Returns the attribute schemas for the given schema type excluding status and service identifier attributes.
 java.lang.String getServiceHierarchy()
          Returns the service's hierarchy
 ServiceSchema getUserSchema()
          Returns the user service configuration schema.
 java.lang.String getVersion()
          Returns the version of the service.
 void removeListener(java.lang.String listenerID)
          Removes the listener from the service for the given listener ID.
 void replaceSchema(java.io.InputStream xmlServiceSchema)
          Replaces the existing service schema with the given schema defined by the XML inputstream that follows the SMS DTD.
 java.lang.String toString()
          Returns the string representation of the Service Schema
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ServiceSchemaManager

public ServiceSchemaManager(SSOToken token,
                            java.lang.String serviceName,
                            java.lang.String version)
                     throws SMSException,
                            SSOException
Creates an instance of ServiceSchemaManager for the given service and version pair. It requires an user identity, that will used to perform operations with. It is assumed that the application calling this constructor should authenticate the user.
Parameters:
ssoToken - the user identity on whose behalf the operations are performed
serviceName - the name of the service
version - the version of the service
Throws:
SMSException -  
Method Detail

getName

public java.lang.String getName()
Returns the name of the service.
Returns:
the name of the service

getVersion

public java.lang.String getVersion()
Returns the version of the service.
Returns:
the version of the service

getI18NFileName

public java.lang.String getI18NFileName()
Returns the I18N properties file name for the service.
Returns:
the I18N properties file name for the service

getI18NJarURL

public java.lang.String getI18NJarURL()
Returns the URL of the JAR file that contains the I18N properties file. The method could return null, in which case the properties file should be in CLASSPATH.
Returns:
the URL of the JAR file containing the I18N properties file

getServiceHierarchy

public java.lang.String getServiceHierarchy()
Returns the service's hierarchy
Returns:
serviceHiearchy in slash format

getPropertiesViewBeanURL

public java.lang.String getPropertiesViewBeanURL()
Returns URL of the view bean for the service
Returns:
URL for view bean

getSchemaTypes

public java.util.Set getSchemaTypes()
                             throws SMSException
Returns the SchemaTypes available with this service
Returns:
java.util.Set of SchemaTypes in this service

getSchema

public ServiceSchema getSchema(SchemaType type)
                        throws SMSException
Returns the configuration schema for the given schema type
Returns:
service schema

getServiceAttributeNames

public java.util.Set getServiceAttributeNames(SchemaType type)
                                       throws SMSException
Returns the attribute schemas for the given schema type excluding status and service identifier attributes.
Returns:
service schema

getGlobalSchema

public ServiceSchema getGlobalSchema()
                              throws SMSException
Returns the global service configuration schema.
Returns:
the global service configuration schema
Throws:
SMSException -  

getOrganizationSchema

public ServiceSchema getOrganizationSchema()
                                    throws SMSException
Returns the organization service configuration schema.
Returns:
the organization service configuration schema
Throws:
SMSException -  

getDynamicSchema

public ServiceSchema getDynamicSchema()
                               throws SMSException
Returns the dynamic service configuration schema.
Returns:
the dynamic service configuration schema
Throws:
SMSException -  

getUserSchema

public ServiceSchema getUserSchema()
                            throws SMSException
Returns the user service configuration schema.
Returns:
the user service configuration schema
Throws:
SMSException -  

getPolicySchema

public ServiceSchema getPolicySchema()
                              throws SMSException
Returns the policy service configuration schema.
Returns:
the policy service configuration schema
Throws:
SMSException -  

getSchema

public java.io.InputStream getSchema()
                              throws SMSException
Returns the service schema in XML for this service.
Returns:
the service schema in XML for this service
Throws:
SMSException -  

replaceSchema

public void replaceSchema(java.io.InputStream xmlServiceSchema)
                   throws SSOException,
                          SMSException,
                          java.io.IOException
Replaces the existing service schema with the given schema defined by the XML inputstream that follows the SMS DTD.
Parameters:
xmlServiceSchema - the XML format of the service schema
Throws:
SMSException -  

equals

public boolean equals(java.lang.Object o)
Checks if the given object equals this object.
Overrides:
equals in class java.lang.Object

toString

public java.lang.String toString()
Returns the string representation of the Service Schema
Overrides:
toString in class java.lang.Object

addListener

public java.lang.String addListener(ServiceListener listener)
Register for changes to service's schema. The object will be called when schema for this service and version is changed.
Parameters:
serviceListener - callback object that will be invoked when schema changes

removeListener

public void removeListener(java.lang.String listenerID)
Removes the listener from the service for the given listener ID. The ID was issued when the listener was registered.
Parameters:
listenerID - the listener ID issued when the listener was registered