Class SMSObject

  • Direct Known Subclasses:
    SMSJAXRPCObject, SMSObjectDB

    public abstract class SMSObject
    extends Object
    Abstract class that needs to be implemented to store configuration data in a data store. An implementation of this can be configured via AMConfig.properties by setting the property com.sun.identity.sm.sms_object_class_name to the fully qualified class name (i.e., including the package name) without the .class extension. Only one instance of this class will be instantiated within a single JVM, hence the function must be reentrant. The implementation of this class must provide an empty constructor that will be used to create an instance of this class.
    • Constructor Detail

      • SMSObject

        public SMSObject()
    • Method Detail

      • initialize

        public void initialize​(Map initParams)
                        throws SMSException
        Initialization parameters that are configured via system properties or can be dynamically set during run-time.
        Throws:
        SMSException
      • searchSubOrgNames

        public abstract Set<String> searchSubOrgNames​(SSOToken token,
                                                      String dn,
                                                      String filter,
                                                      int numOfEntries,
                                                      boolean sortResults,
                                                      boolean ascendingOrder,
                                                      boolean recursive)
                                               throws SMSException,
                                                      SSOException
        Returns the suborganization names. Returns a set of SMSEntry objects that are suborganization names. The paramter numOfEntries identifies the number of entries to return, if 0 returns all the entries.
        Throws:
        SMSException
        SSOException
      • searchOrganizationNames

        public abstract Set<String> searchOrganizationNames​(SSOToken token,
                                                            String dn,
                                                            int numOfEntries,
                                                            boolean sortResults,
                                                            boolean ascendingOrder,
                                                            String serviceName,
                                                            String attrName,
                                                            Set values)
                                                     throws SMSException,
                                                            SSOException
        Returns the organization names. Returns a set of SMSEntry objects that are organization names. The paramter numOfEntries identifies the number of entries to return, if 0 returns all the entries.
        Throws:
        SMSException
        SSOException
      • subEntries

        public abstract Set<String> subEntries​(SSOToken token,
                                               String dn,
                                               String filter,
                                               int numOfEntries,
                                               boolean sortResults,
                                               boolean ascendingOrder)
                                        throws SMSException,
                                               SSOException
        Returns the sub-entries. Returns a set of SMSEntry objects that are sub-entries. The paramter numOfEntries identifies the number of entries to return, if 0 returns all the entries.
        Throws:
        SMSException
        SSOException
      • schemaSubEntries

        public abstract Set<String> schemaSubEntries​(SSOToken token,
                                                     String dn,
                                                     String filter,
                                                     String sidFilter,
                                                     int numOfEntries,
                                                     boolean sortResults,
                                                     boolean ascendingOrder)
                                              throws SMSException,
                                                     SSOException
        Returns the sub-entries. Returns a set of SMSEntry objects that are sub-entries. The paramter numOfEntries identifies the number of entries to return, if 0 returns all the entries.
        Throws:
        SMSException
        SSOException
      • entryExists

        public abstract boolean entryExists​(SSOToken token,
                                            String objName)
        Checks if the provided DN exists. Used by PolicyManager.
      • deregisterCallbackHandler

        public void deregisterCallbackHandler​(String listenerID)
        De-Registration of Notification Callbacks
      • getRootSuffix

        public abstract String getRootSuffix()
        Returns the root suffix (i.e., base DN) for the SMS objects. All SMSEntries will end with this root suffix.
      • getAMSdkBaseDN

        public abstract String getAMSdkBaseDN()
        Returns the AMSDK BaseDN for the UM objects.
      • getNamingAttribute

        public String getNamingAttribute()
        Returns the naming attribute
      • getOrgNamingAttribute

        public String getOrgNamingAttribute()
        Returns the organization naming attribute
      • getAttributeNames

        public String[] getAttributeNames()
        Returns all the SMS attribute names
      • getSearchFilter

        public String getSearchFilter()
        Returns search (LDAP) filter to search for SMS objects
      • getServiceIdSearchFilter

        public String getServiceIdSearchFilter()
        Returns search (LDAP) filter to search for SMS objects
      • debug

        public Debug debug()
      • cacheResults

        public boolean cacheResults()
      • shutdown

        public void shutdown()