com.sun.identity.idm
Class AMIdentityRepository

java.lang.Object
  |
  +--com.sun.identity.idm.AMIdentityRepository

public final class AMIdentityRepository
extends java.lang.Object

The class AMIdentityRepository represents an object to access the repositories in which user/role/group and other identity data is configured. This class provides access to methods which will search, create and delete identities. An instance of this class can be obtained in the following manner:

          AMIdentityRepository = new AMIdentityRepository(ssoToken, orgName);
 


Field Summary
static Debug debug
           
static java.util.Map listeners
           
 
Constructor Summary
AMIdentityRepository(SSOToken ssotoken, java.lang.String orgName)
          Constructor for the AMIdentityRepository object.
 
Method Summary
 int addEventListener(IdEventListener listener)
          Adds a listener, which should receive notifications for all changes that occured in this organization.
 java.util.Set createIdentities(IdType type, java.util.Map identityNamesAndAttrs)
          Creates multiple objects of the same type.
 AMIdentity createIdentity(IdType type, java.lang.String idName, java.util.Map attrMap)
          Creates a single object of a type.
 void deleteIdentities(IdType type, java.util.Set identities)
          Deletes identities.
 java.util.Set getAllowedIdOperations(IdType type)
          Returns the set of Operations for a given IdType, IdOperations that can be performed on an Identity.
 AMIdentity getRealmIdentity()
          Returns a handle of the Identity object representing this realm for services related operations only.
 IdSearchResults getSpecialIdentities(IdType type)
          Return the special identities for this realm for a given type.
 java.util.Set getSupportedIdTypes()
          Returns the set of supported object types IdType for this deployment.
 void removeEventListener(int identifier)
          Removes listener as the application is no longer interested in receiving notifications.
 IdSearchResults searchIdentities(IdType type, java.lang.String pattern, IdSearchControl ctrl)
          Searches for identities of certain types from each plugin and returns a combined result
 IdSearchResults searchIdentities(IdType type, java.lang.String pattern, java.util.Map avPairs, boolean recursive, int maxResults, int maxTime, java.util.Set returnAttributes, boolean returnAllAttributes)
          Deprecated. This method is deprecated. Use searchIdentities(IdType type,String pattern,IdSearchControl ctrl)
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

debug

public static Debug debug

listeners

public static java.util.Map listeners
Constructor Detail

AMIdentityRepository

public AMIdentityRepository(SSOToken ssotoken,
                            java.lang.String orgName)
                     throws IdRepoException,
                            SSOException
Constructor for the AMIdentityRepository object. If a null is passed for the organization identifier orgName, then the "root" organization is assumed.
Parameters:
ssotoken - Single sign on token of the user
orgName - Name of the organization (can be a Fully qualified DN)
Throws:
IdRepoException - if there are repository related error conditions.
SSOException - if user's single sign on token is invalid.
Method Detail

getSupportedIdTypes

public java.util.Set getSupportedIdTypes()
                                  throws IdRepoException,
                                         SSOException
Returns the set of supported object types IdType for this deployment. This is not organization specific.
Returns:
Set of supported IdType objects.
Throws:
IdRepoException - if there are repository related error conditions.
SSOException - if user's single sign on token is invalid.

getAllowedIdOperations

public java.util.Set getAllowedIdOperations(IdType type)
                                     throws IdRepoException,
                                            SSOException
Returns the set of Operations for a given IdType, IdOperations that can be performed on an Identity. This varies for each organization (and each plugin?).
Parameters:
type - Type of identity
Returns:
Set of IdOperation objects.
Throws:
IdRepoException - if there are repository related error conditions.
SSOException - if user's single sign on token is invalid.

getSpecialIdentities

public IdSearchResults getSpecialIdentities(IdType type)
                                     throws IdRepoException,
                                            SSOException
Return the special identities for this realm for a given type. These identities cannot be deleted and hence have to be shown in the admin console as non-deletable.
Parameters:
type - Type of the identity
Returns:
IdSearchResult
Throws:
IdRepoException - if there is a datastore exception
SSOException - if the user's single sign on token is not valid.

searchIdentities

public IdSearchResults searchIdentities(IdType type,
                                        java.lang.String pattern,
                                        java.util.Map avPairs,
                                        boolean recursive,
                                        int maxResults,
                                        int maxTime,
                                        java.util.Set returnAttributes,
                                        boolean returnAllAttributes)
                                 throws IdRepoException,
                                        SSOException
Deprecated. This method is deprecated. Use searchIdentities(IdType type,String pattern,IdSearchControl ctrl)

Searches for identities of a certain type. The iterator returns AMIdentity objects for use by the application.
Parameters:
type - Type of identity being searched for.
pattern - Search pattern, like "a*" or "*".
avPairs - Map of attribute-values which can further help qualify the search pattern.
recursive - If true, then the search is performed on the entire subtree (if applicable)
maxResults - Maximum number of results to be returned. A -1 means no limit on the result set.
maxTime - Maximum amount of time after which the search should return with partial results.
returnAttributes - Set of attributes to be read when performing the search.
returnAllAttributes - If true, then read all the attributes of the entries.
Returns:
results containing AMIdentity objects.
Throws:
IdRepoException - if there are repository related error conditions.
SSOException - if user's single sign on token is invalid.

searchIdentities

public IdSearchResults searchIdentities(IdType type,
                                        java.lang.String pattern,
                                        IdSearchControl ctrl)
                                 throws IdRepoException,
                                        SSOException
Searches for identities of certain types from each plugin and returns a combined result
Parameters:
type - Type of identity being searched for.
pattern - Patter to be used when searching.
ctrl - IdSearchControl which can be used to set up various search controls on the search to be performed.
Returns:
Returns the combines results in an object IdSearchResults.
Throws:
IdRepoException - if there are repository related error conditions.
SSOException - if user's single sign on token is invalid.
See Also:
IdSearchControl, IdSearchResults

getRealmIdentity

public AMIdentity getRealmIdentity()
                            throws IdRepoException,
                                   SSOException
Returns a handle of the Identity object representing this realm for services related operations only. This AMIdentity object can be used to assign and unassign services containing dynamic attributes to this realm
Returns:
a handle of the Identity object.
Throws:
IdRepoException - if there are repository related error conditions.
SSOException - if user's single sign on token is invalid.

createIdentity

public AMIdentity createIdentity(IdType type,
                                 java.lang.String idName,
                                 java.util.Map attrMap)
                          throws IdRepoException,
                                 SSOException
Creates a single object of a type. The object is created in all the plugins that support creation of this type of object.
Parameters:
type - Type of object to be created.
idName - Name of object
attrMap - Map of attribute-values to be set when creating the entry.
Returns:
Identity object representing the newly created entry.
Throws:
IdRepoException - if there are repository related error conditions.
SSOException - if user's single sign on token is invalid.

createIdentities

public java.util.Set createIdentities(IdType type,
                                      java.util.Map identityNamesAndAttrs)
                               throws IdRepoException,
                                      SSOException
Creates multiple objects of the same type. The objects are created in all the IdRepo plugins that support creation of these objects.
Parameters:
type - Type of object to be created
identityNamesAndAttrs - Names of the identities and their
Returns:
Set of created Identities.
Throws:
IdRepoException - if there are repository related error conditions.
SSOException - if user's single sign on token is invalid.

deleteIdentities

public void deleteIdentities(IdType type,
                             java.util.Set identities)
                      throws IdRepoException,
                             SSOException
Deletes identities. The Set passed is a Set of identity names.
Parameters:
type - Type of Identity to be deleted.
identities - Set of AMIDentity objects to be deleted
Throws:
IdRepoException - if there are repository related error conditions.
SSOException - if user's single sign on token is invalid.

addEventListener

public int addEventListener(IdEventListener listener)
Adds a listener, which should receive notifications for all changes that occured in this organization.
Parameters:
listener - The callback which implements AMEventListener.
Returns:
Integer identifier for this listener.

removeEventListener

public void removeEventListener(int identifier)
Removes listener as the application is no longer interested in receiving notifications.
Parameters:
identifier - Integer identifying the listener.


Copyright 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.