com.ibm.itim.dataservices.model

Class ProfileLocator

  • java.lang.Object
    • com.ibm.itim.dataservices.model.ProfileLocator


  • public class ProfileLocator
    extends java.lang.Object
    Provides an interface for retrieving profiles (object and service) registered with the provisioning platform. In addition to profiles saved in the data store, profiles that are registered at runtime, including platform default profiles, can be found through this interface.
    See Also:
    ObjectProfile, ServiceProfile
    • Constructor Detail

      • ProfileLocator

        public ProfileLocator()
    • Method Detail

      • registerProfile

        public static void registerProfile(ObjectProfile profile)
        Registers an object profile with the locator. This registration is not persistent and must be re-executed at system re-start. Only one profile is allowed per category.
        Parameters:
        profile - ObjectProfile to register.
      • getProfileByClass

        public static ObjectProfile getProfileByClass(DistinguishedName tenantDN,
                                                      java.lang.String cat,
                                                      java.util.Collection objClasses)
        Returns the profile based on the category of the object and its defining classes.
        Parameters:
        tenantDN - DistinguishedName of the tenant (system root).
        cat - Object category (i.e., person, account, etc.).
        objClasses - Collection of class names (Strings).
        Returns:
        ObjectProfile matching the category and classes, null if none found.
      • getProfileByClass

        public static ObjectProfile getProfileByClass(DistinguishedName tenantDN,
                                                      java.lang.String customClass)
        Returns the profile based on the category of the object and its defining classes.
        Parameters:
        tenantDN - DistinguishedName of the tenant (system root).
        customClass - custom class name of the profile.
        Returns:
        ObjectProfile matching the custom class, null if none found.
      • getProfileByCategory

        public static java.util.Collection getProfileByCategory(DistinguishedName tenantDN,
                                                                java.lang.String cat)
        Returns all object profiles based on an object category.
        Parameters:
        tenantDN - DistinguishedName of the tenant (system root).
        cat - Object category (i.e., person, account, etc.).
        Returns:
        Collection of ObjectProfiles for the category.
      • refresh

        public static void refresh(DistinguishedName tenantDN)
        This method refreshes ProfileTable and ModelProfile.
        Parameters:
        tenantDN -
      • getProfileByName

        public static ObjectProfile getProfileByName(DistinguishedName tenantDN,
                                                     java.lang.String name)
        Returns the object profile with the given name.
        Parameters:
        tenantDN - DistinguishedName of the tenant (system root).
        name - Name of the profile.
        Returns:
        ObjectProfile with the given name.
      • loadProfile

        public static ObjectProfile loadProfile(ObjectProfile profile)
        Returns the object profile with the given name. This method is used to reload the profile after refresh() is called.
        Parameters:
        profile - The profile that will be reloaded after all profiles are refreshed.
        Returns:
        ObjectProfile with the given name.
      • getAllProfiles

        public static java.util.Collection getAllProfiles(DistinguishedName tenantDN)
        Returns all object profiles in the cache.
        Parameters:
        tenantDN - DistinguishedName of the tenant (system root).
        Returns:
        Collection of object profiles (ObjectProfile).
      • getDefaultProfileNames

        public static java.util.Collection getDefaultProfileNames(java.lang.String category)
        Returns the profiles registered at runtime including the platform defaults for the given category.
        Parameters:
        category -
        Returns:
        Collection of object profile names (Strings).
      • getServiceProfileName

        public static java.lang.String getServiceProfileName(DistinguishedName tenantDN,
                                                             java.lang.String customClass)
        This method returns the name of the service profile for which either eraccountclass (Account custom class) or ercustomclass (Service custom class) matches the custom class passed in, else returns null.
        Parameters:
        tenantDN - DistinguishedName of the tenant (system root).
        customClass - Name of Account/Service custom class
        Returns:
        Returns the name of the service profile