com.ibm.itim.apps.recon

Class ReconUnitData

  • java.lang.Object
    • com.ibm.itim.apps.recon.ReconUnitData
  • All Implemented Interfaces:
    java.io.Serializable


    public class ReconUnitData
    extends java.lang.Object
    implements java.io.Serializable
    Represents a reconciliation unit configured for a given resource or service. A resource or service can have multiple reconciliation units configured with different schedule information. So no two reconciliation units for the same resource, can have the same schedule information.

    A new reconciliation unit created with the default constructor has the following default values :-
    • ID - 0
    • Minute - Calendar.MINUTE
    • Hour - Calendar.HOUR
    • Day of Month - Calendar.DAY_OF_MONTH
    • Month - Calendar.MONTH
    • Day of Week - 0
    • Days of Week - null
    • Max Duration - 600 minutes
    • Lock Service - true
    • Recon query mode - STANDARD_RECON
    • Recon query filter - null
    • Recon query base - null
    • Recon query attributes - Empty list, but this implies all attributes applicable for the resource will be reconciled.

    To obtain desired frequency for the recon schedule, following parameters should be given as input.
    • Hourly - hour=-1 minute=0-59 month=0 day of month=0
    • Daily - hour=0-23 minute=0-59 month=0 day of month=-1
    • Weekly - hour=0-23 minute=0-59 month=0 days of week=1-7 with 1=Sunday, 2=Monday,...7=Saturday and multiple values are specified in pipe-separated format (1|2 = Sunday and Monday)
    • Monthly - hour=0-23 minute=0-59 month=-1 day of month=1-31
    • Daily during a specific month - hour=0-23 minute=0-59 month=1-12 day of month=-1
    • Weekly during a specific month - hour=0-23 minute=0-59 month=1-12 day of week=1-7 with 1=Sunday, 2=Monday,...7=Saturday
    • Annually - hour=0-23 minute=0-59 month = 1-12 day of month= 1-31
    To schedule a reconciliation unit on a specific date, input parameters are same as annual schedule.
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field and Description
      static int STANDARD_RECON
      Constant to indicate that the recon query mode is standard.
      static int SUPPORT_DATA_RECON
      Constant to indicate that the recon query mode is supporting data only.
    • Constructor Summary

      Constructors 
      Constructor and Description
      ReconUnitData() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      int getDayOfMonth()
      Returns the day of the month of schedule of this reconciliation unit.
      int getDayOfWeek()
      Returns the day of the week of schedule of this reconciliation unit.
      java.lang.String getDaysOfWeek()
      Returns the days of the week of this reconciliation unit.
      java.lang.String getDescription()
      Gets the description of this reconciliation unit
      int getHour()
      Returns the hour of the schedule of this reconciliation unit.
      long getID()
      Returns the reconciliation unit data id.
      long getLastReconDuration()
      Returns the duration (in milliseconds) of the last reconciliation event.
      long getMaxDuration()
      Returns the max duration the reconciliation process, launched using this reconciliation unit, can run.
      int getMinute()
      Returns the minute of the schedule of this reconciliation unit.
      int getMonth()
      Returns the month of the schedule of this reconciliation unit.
      java.lang.String getName()
      Gets the name of this reconciliation unit
      java.util.Collection getReconQueryAttributes()
      Returns the reconciliation query attributes associated with this reconciliation unit.
      java.lang.String getReconQueryFilter()
      Returns the query filter associated with this reconciliation unit.
      int getReconQueryMode() 
      boolean isLockService()
      Returns true if the service is locked during reconciliation, else returns false.
      void setDayOfMonth(int dayOfMonth)
      Changes the day of the month of schedule of this reconciliation unit.
      void setDayOfWeek(int dayOfWeek)
      Changes the day of the week of schedule of this reconciliation unit.
      void setDaysOfWeek(java.lang.String daysOfWeek)
      Changes the days of the week of schedule of this reconciliation unit.
      void setDescription(java.lang.String description)
      Sets the description of this reconciliation unit
      void setHour(int hour)
      Changes the hour of the schedule of this reconciliation unit.
      void setID(long id)
      Sets the reconciliation unit data id.
      void setLastReconDuration(long lastReconDuration)
      Sets the duration (in milliseconds) of the last reconciliation event
      void setLockService(boolean lockService)
      Indicates whether the service is locked during reconciliation.
      void setMaxDuration(long maxDuration)
      Sets the max duration the reconciliation process, launched using this reconciliation unit, can run.
      void setMinute(int minute)
      Changes the minute of the schedule of this reconciliation unit.
      void setMonth(int month)
      Changes the month of the schedule of this reconciliation unit.
      void setName(java.lang.String name)
      Sets the name of this reconciliation unit
      void setReconQueryAttributes(java.util.Collection reconQueryAttributes)
      Sets the attributes that are to be reconciled from the resource.
      void setReconQueryAttributes(java.util.Collection availableReconAttributes, java.util.Collection excludedReconAttributes)
      Sets the attributes that are to be reconciled from the resource.
      void setReconQueryFilter(java.lang.String filter)
      Sets the reconciliation query filter associated with this reconciliation unit.
      void setReconQueryMode(int reconQueryMode) 
      java.lang.String toString()
      Returns schedule information of this reconciliation unit in string format.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • SUPPORT_DATA_RECON

        public static final int SUPPORT_DATA_RECON
        Constant to indicate that the recon query mode is supporting data only.
        See Also:
        Constant Field Values
      • STANDARD_RECON

        public static final int STANDARD_RECON
        Constant to indicate that the recon query mode is standard.
        See Also:
        Constant Field Values
    • Constructor Detail

      • ReconUnitData

        public ReconUnitData()
    • Method Detail

      • getID

        public long getID()
        Returns the reconciliation unit data id.
        Returns:
        id
      • setID

        public void setID(long id)
        Sets the reconciliation unit data id. When adding a new reconciliation unit, this is an optional parameter and will be auto-generated by ITIM and a unique ID will be assigned to the reconciliation unit. The default value is 0.
        Parameters:
        id -
      • isLockService

        public boolean isLockService()
        Returns true if the service is locked during reconciliation, else returns false. If a service is locked, any provisioning requests fired during reconciliation using this service, will be suspended and will be executed only after reconciliation process completes. So the service will be dedicated only for reconciliation.
        Returns:
        setting of the lock service flag.
      • setLockService

        public void setLockService(boolean lockService)
        Indicates whether the service is locked during reconciliation. A 'true' value, locks the service during reconciliation, and a 'false' value, unlocks the service. Default setting if not set is 'true'.
        Parameters:
        lockService - boolean value.
      • getMaxDuration

        public long getMaxDuration()
        Returns the max duration the reconciliation process, launched using this reconciliation unit, can run. The duration is in minutes.
        Returns:
        Max duration.
      • setMaxDuration

        public void setMaxDuration(long maxDuration)
        Sets the max duration the reconciliation process, launched using this reconciliation unit, can run. The duration should be specified in minutes. Default duration, if not set is 600 minutes.
        Parameters:
        maxDuration - Max duration.
      • getLastReconDuration

        public long getLastReconDuration()
        Returns the duration (in milliseconds) of the last reconciliation event.
      • setLastReconDuration

        public void setLastReconDuration(long lastReconDuration)
        Sets the duration (in milliseconds) of the last reconciliation event
      • getMinute

        public int getMinute()
        Returns the minute of the schedule of this reconciliation unit.
        Returns:
        The configured minute.
      • setMinute

        public void setMinute(int minute)
        Changes the minute of the schedule of this reconciliation unit. If the input minute is invalid, then it is adjusted to nearest valid value. The values to be set if the minute is invalid are:
        i. minute < 0 : set to 0
        ii. minute > 59 : set to 59
        Parameters:
        minute - New minute to configure. Allowed values 0-59.
      • getHour

        public int getHour()
        Returns the hour of the schedule of this reconciliation unit.
        Returns:
        the configured hour. Allowed values 0-23. -1 stands for hourly reconciliation.
      • setHour

        public void setHour(int hour)
        Changes the hour of the schedule of this reconciliation unit. If the input hour is invalid, then it is adjusted to nearest valid value. The values to be set if hour is invalid are:
        i. hour > 23 : set to 23
        ii. hour < -1 : set to -1
        Parameters:
        hour - New hour to configure. Allowed values 0-23. Use -1 to configure hourly reconciliation.
      • getMonth

        public int getMonth()
        Returns the month of the schedule of this reconciliation unit.
        Returns:
        The configured month. Allowed values 1-12. -1 stands for monthly reconciliation, 0 to ignore.
      • setMonth

        public void setMonth(int month)
        Changes the month of the schedule of this reconciliation unit. If the input month is invalid, then it is set to zero. The values to be set if month is invalid are:
        i. month > 12 : set to 0
        ii. month < -1 : set to 0
        Parameters:
        month - New month to configure (-1 if every month, 0 to ignore). Allowed values 1-12 (1 = January, 2 = February, ...). java.util.Calendar constants can be used.
      • getDaysOfWeek

        public java.lang.String getDaysOfWeek()
        Returns the days of the week of this reconciliation unit.
        Returns:
        the configured days of the week or null in case no days of the week specified.
      • getDayOfWeek

        public int getDayOfWeek()
        Returns the day of the week of schedule of this reconciliation unit.
        Returns:
        The configured day of the week.
      • setDaysOfWeek

        public void setDaysOfWeek(java.lang.String daysOfWeek)
        Changes the days of the week of schedule of this reconciliation unit. If the input days of the week is invalid, then it is set to null. Allowed values 1-7 (1 = Sunday, 2 = Monday, ...) and multiple values are specified in pipe-separated format (1|2 = Sunday and Monday) The values to be set if the days of week is invalid are:
        i. daysOfWeek = "1|8": set to null
        ii. daysOfWeek = "0" : set to null
        Parameters:
        daysOfWeek - new days of the week to configure. Allowed values 1-7 (1 = Sunday, 2 = Monday, ...) and multiple values are specified in pipe-separated format (1|2 = Sunday and Monday)
      • setDayOfWeek

        public void setDayOfWeek(int dayOfWeek)
        Changes the day of the week of schedule of this reconciliation unit. If the input day of the week is invalid, then it is set to zero. The values to be set if the day of week is invalid are:
        i. dayOfWeek < 0 : set to 0
        ii. dayOfWeek > 7 : set to 0
        Parameters:
        dayOfWeek - New day of the week to configure This attribute is exclusive with dayOfMonth. Allowed values 1-7 (1 = Sunday, 2 = Monday, ...), 0 to ignore. java.util.Calendar constants can be used.
      • getDayOfMonth

        public int getDayOfMonth()
        Returns the day of the month of schedule of this reconciliation unit.
        Returns:
        The configured day of the month or -1 if every day, 0 to ignore.
      • setDayOfMonth

        public void setDayOfMonth(int dayOfMonth)
        Changes the day of the month of schedule of this reconciliation unit. If the input day is invalid, then it is set to zero. The values to be set if the day of month is invalid are:
        i. dayOfMonth < -1 : set to 0
        ii. dayOfMonth > 31 : set to 0
Parameters:
dayOfMonth - New day of the month to configure. This attribute is exclusive with dayOfWeek. Allowed values 1-31, -1 if every day, 0 to ignore.
  • getReconQueryFilter

    public java.lang.String getReconQueryFilter()
    Returns the query filter associated with this reconciliation unit. The filter is an LDAP search filter and if specified, then accounts satisfying the filter will only be reconciled. A null or empty value indicates all entries will be reconciled.
    Returns:
    Reconciliation query filter.
  • setReconQueryFilter

    public void setReconQueryFilter(java.lang.String filter)
    Sets the reconciliation query filter associated with this reconciliation unit. The filter is an LDAP search filter and if specified, then accounts satisfying the filter will only be reconciled. This is an optional parameter and if a null or empty value is specified then all entries will be reconciled.
    Parameters:
    filter - Reconciliation query filter.
  • getReconQueryAttributes

    public java.util.Collection getReconQueryAttributes()
    Returns the reconciliation query attributes associated with this reconciliation unit.
    Returns:
    A collection of reconciliation query attributes.
  • setReconQueryAttributes

    public void setReconQueryAttributes(java.util.Collection reconQueryAttributes)
    Sets the attributes that are to be reconciled from the resource. This is an optional parameter, and if not set, or a null or empty collection is set, then all attributes of an entry will be reconciled from the resource.
    Parameters:
    reconQueryAttributes - A collection of available reconciliation query attributes.
  • getDescription

    public java.lang.String getDescription()
    Gets the description of this reconciliation unit
    Returns:
    description Description of reconciliation unit
  • setDescription

    public void setDescription(java.lang.String description)
    Sets the description of this reconciliation unit
    Parameters:
    description - Description of reconciliation unit
  • getName

    public java.lang.String getName()
    Gets the name of this reconciliation unit
    Returns:
    name Name of reconciliation unit
  • setName

    public void setName(java.lang.String name)
    Sets the name of this reconciliation unit
    Parameters:
    name - Name of this reconciliation unit
  • setReconQueryAttributes

    public void setReconQueryAttributes(java.util.Collection availableReconAttributes,
                                        java.util.Collection excludedReconAttributes)
    Sets the attributes that are to be reconciled from the resource. This is calculated as - availableReconAttributes - excludedReconAttributes.
    Parameters:
    availableReconAttributes - A collection of all available reconciliation query attribute names.
    excludedReconAttributes - A collection of reconciliation query attributes to be excluded.
  • toString

    public java.lang.String toString()
    Returns schedule information of this reconciliation unit in string format. Since a schedule uniquely identifies a reconciliation unit for a resource, the string representation only contains the schedule information.
    Overrides:
    toString in class java.lang.Object
    Returns:
    String representation of this reconciliation unit.
  • getReconQueryMode

    public int getReconQueryMode()
    Returns:
    the reconQueryMode
  • setReconQueryMode

    public void setReconQueryMode(int reconQueryMode)
    Parameters:
    reconQueryMode - the reconQueryMode to set. Should be either ReconUnitData.SUPPORT_DATA_RECON or ReconUnitData.STANDARD_RECON