Package com.verisign.epp.codec.registry.v02

## Class EPPRegistryBatchSchedule

- java.lang.Object
- - com.verisign.epp.codec.registry.v02.EPPRegistryBatchSchedule

- All Implemented Interfaces:
    `EPPCodecComponent`, `java.io.Serializable`, `java.lang.Cloneable`

      public class EPPRegistryBatchSchedule
      extends java.lang.Object
      implements EPPCodecComponent

  `EPPRegistryBatchSchedule` defines a batch schedule that uses the <registry:schedule> element, with the required "frequency" attribute that defines the frequency of execution. The "frequency" attribute has the possible values of "daily", "weekly", and "monthy". The time zone is defined using the XML schema "time" type conventions of UTC and offsets from UTC, or using the OPTIONAL "tz" attribute that defines the named time zone. For example, the named Eastern time zone can be specified using the setting "tz=EST5EDT".
  See Also:
    `EPPRegistryDomain`, Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `EPPRegistryBatchSchedule.DayOfWeek` | Possible values for the `dayOfWeek` attribute.
    `static class` | `EPPRegistryBatchSchedule.Frequency` | Possible values for the `frequency` attribute.

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static java.lang.String` | `ATTR_DAY_OF_MONTH` | XML attribute name for the `dayOfMonth` attribute.
    `static java.lang.String` | `ATTR_DAY_OF_WEEK` | XML attribute name for the `dayOfWeek` attribute.
    `static java.lang.String` | `ATTR_FREQUENCY` | XML attribute name for the `frequency` attribute.
    `static java.lang.String` | `ATTR_TZ` | XML attribute name for the `tz` attribute.
    `static java.lang.String` | `ELM_LOCALNAME` | XML local name for `EPPRegistryBatchSchedule`.
    `static java.lang.String` | `ELM_NAME` | XML root tag for `EPPRegistryBatchSchedule`.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `EPPRegistryBatchSchedule()` | Default constructor.
    `EPPRegistryBatchSchedule​(EPPRegistryBatchSchedule.Frequency aFrequency, java.lang.String aTime)` | Construct an instance of `EPPRegistryBatchSchedule` with the required frequency and time.
    `EPPRegistryBatchSchedule​(java.lang.String aTime, EPPRegistryBatchSchedule.DayOfWeek aDayOfWeek, java.lang.String aTimeZone)` | Construct an instance of `EPPRegistryBatchSchedule` that is used for a day of week schedule.
    `EPPRegistryBatchSchedule​(java.lang.String aTime, java.lang.Integer aDayOfMonth, java.lang.String aTimeZone)` | Construct an instance of `EPPRegistryBatchSchedule` that is used for a day of month schedule.
    `EPPRegistryBatchSchedule​(java.lang.String aTime, java.lang.String aTimeZone)` | Construct an instance of `EPPRegistryBatchSchedule` that is used for a daily schedule.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.Object` | `clone()` | Clone `EPPRegistryBatchSchedule`.
    `void` | `decode​(org.w3c.dom.Element aElement)` | Decode the `EPPRegistryBatchSchedule` attributes from the aElement DOM Element tree.
    `org.w3c.dom.Element` | `encode​(org.w3c.dom.Document aDocument)` | Encode a DOM Element tree from the attributes of the `EPPRegistryDomain` instance.
    `boolean` | `equals​(java.lang.Object aObject)` | implements a deep `EPPRegistryBatchSchedule` compare.
    `java.lang.Integer` | `getDayOfMonth()` | Gets the optional day of month.
    `EPPRegistryBatchSchedule.DayOfWeek` | `getDayOfWeek()` | Gets the optional day of week.
    `EPPRegistryBatchSchedule.Frequency` | `getFrequency()` | Gets the schedule execution frequency.
    `java.lang.String` | `getNamespace()` | Returns the XML namespace associated with the `EPPCodecComponent`.
    `java.lang.String` | `getTime()` | Gets the schedule execution time using the XML schema "time" type format.
    `java.lang.String` | `getTimeZone()` | Gets the optional schedule execution named time zone, such as "EST5EDT".
    `boolean` | `hasDayOfMonth()` | Is the day of month defined?
    `boolean` | `hasDayOfWeek()` | Is the day of week defined?
    `boolean` | `hasTimeZone()` | Is the schedule execution named time zone defined?
    `void` | `setDayOfMonth​(java.lang.Integer aDayOfMonth)` | Sets the optional day of month.
    `void` | `setDayOfWeek​(EPPRegistryBatchSchedule.DayOfWeek aDayOfWeek)` | Sets the optional day of week.
    `void` | `setFrequency​(EPPRegistryBatchSchedule.Frequency aFrequency)` | Sets the schedule execution frequency.
    `void` | `setTime​(java.lang.String aTime)` | Sets the schedule execution time using the XML schema "time" type format.
    `void` | `setTimeZone​(java.lang.String aTimeZone)` | Sets the optional schedule execution named time zone, such as "EST5EDT".
    `java.lang.String` | `toString()` | Implementation of `Object.toString`, which will result in an indented XML `String` representation of the concrete `EPPCodecComponent`.

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### ELM_LOCALNAME

          public static final java.lang.String ELM_LOCALNAME

      XML local name for `EPPRegistryBatchSchedule`.
      See Also:
        Constant Field Values

    - #### ELM_NAME

          public static final java.lang.String ELM_NAME

      XML root tag for `EPPRegistryBatchSchedule`.
      See Also:
        Constant Field Values

    - #### ATTR_FREQUENCY

          public static final java.lang.String ATTR_FREQUENCY

      XML attribute name for the `frequency` attribute.
      See Also:
        Constant Field Values

    - #### ATTR_TZ

          public static final java.lang.String ATTR_TZ

      XML attribute name for the `tz` attribute.
      See Also:
        Constant Field Values

    - #### ATTR_DAY_OF_WEEK

          public static final java.lang.String ATTR_DAY_OF_WEEK

      XML attribute name for the `dayOfWeek` attribute.
      See Also:
        Constant Field Values

    - #### ATTR_DAY_OF_MONTH

          public static final java.lang.String ATTR_DAY_OF_MONTH

      XML attribute name for the `dayOfMonth` attribute.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### EPPRegistryBatchSchedule

          public EPPRegistryBatchSchedule()

      Default constructor. Must call `setFrequency(Frequency)` and `setTime(String)` before calling the `encode(org.w3c.dom.Document)` method.

    - #### EPPRegistryBatchSchedule

          public EPPRegistryBatchSchedule​(EPPRegistryBatchSchedule.Frequency aFrequency,
                                          java.lang.String aTime)

      Construct an instance of `EPPRegistryBatchSchedule` with the required frequency and time.
      Parameters:
        `aFrequency` - The frequency of the schedule
        `aTime` - The time of the schedule following the XML schema "time" type format

    - #### EPPRegistryBatchSchedule

          public EPPRegistryBatchSchedule​(java.lang.String aTime,
                                          java.lang.String aTimeZone)

      Construct an instance of `EPPRegistryBatchSchedule` that is used for a daily schedule.
      Parameters:
        `aTime` - The time of the schedule following the XML schema "time" type format
        `aTimeZone` - The named time zone of the time, represented by the `aTime` parameter. An example of a named time zone is "EST5EDT". Set to `null` if undefined.

    - #### EPPRegistryBatchSchedule

          public EPPRegistryBatchSchedule​(java.lang.String aTime,
                                          EPPRegistryBatchSchedule.DayOfWeek aDayOfWeek,
                                          java.lang.String aTimeZone)

      Construct an instance of `EPPRegistryBatchSchedule` that is used for a day of week schedule.
      Parameters:
        `aTime` - The time of the schedule following the XML schema "time" type format
        `aDayOfWeek` - A day of the week
        `aTimeZone` - Optional named time zone of the time, represented by the `aTime` parameter. An example of a named time zone is "EST5EDT". Set to `null` if undefined.

    - #### EPPRegistryBatchSchedule

          public EPPRegistryBatchSchedule​(java.lang.String aTime,
                                          java.lang.Integer aDayOfMonth,
                                          java.lang.String aTimeZone)

      Construct an instance of `EPPRegistryBatchSchedule` that is used for a day of month schedule.
      Parameters:
        `aTime` - The time of the schedule following the XML schema "time" type format
        `aDayOfMonth` - The day of month in the range of 1 - 31. Execution will not occur in the current month if the `aDayOfMonth` value is out-of-range for the current month (e.g, 29 - 31).
        `aTimeZone` - Optional named time zone of the time, represented by the `aTime` parameter. An example of a named time zone is "EST5EDT". Set to `null` if undefined.

  - ### Method Detail

    - #### encode

          public org.w3c.dom.Element encode​(org.w3c.dom.Document aDocument)
                                     throws EPPEncodeException

      Encode a DOM Element tree from the attributes of the `EPPRegistryDomain` instance.
      Specified by:
        `encode` in interface `EPPCodecComponent`
      Parameters:
        `aDocument` - DOM Document that is being built. Used as an Element factory.
      Returns:
        Element Root DOM Element representing the `EPPRegistryDomain` instance.
      Throws:
        `EPPEncodeException` - - Unable to encode `EPPRegistryBatchSchedule` instance.

    - #### decode

          public void decode​(org.w3c.dom.Element aElement)
                      throws EPPDecodeException

      Decode the `EPPRegistryBatchSchedule` attributes from the aElement DOM Element tree.
      Specified by:
        `decode` in interface `EPPCodecComponent`
      Parameters:
        `aElement` - Root DOM Element to decode `EPPRegistryBatchSchedule` from.
      Throws:
        `EPPDecodeException` - Unable to decode aElement

    - #### clone

          public java.lang.Object clone()
                                 throws java.lang.CloneNotSupportedException

      Clone `EPPRegistryBatchSchedule`.
      Specified by:
        `clone` in interface `EPPCodecComponent`
      Overrides:
        `clone` in class `java.lang.Object`
      Returns:
        clone of `EPPRegistryBatchSchedule`
      Throws:
        `java.lang.CloneNotSupportedException` - standard Object.clone exception

    - #### equals

          public boolean equals​(java.lang.Object aObject)

      implements a deep `EPPRegistryBatchSchedule` compare.
      Overrides:
        `equals` in class `java.lang.Object`
      Parameters:
        `aObject` - `EPPRegistryBatchSchedule` instance to compare with
      Returns:
        `true` if this object is the same as the aObject argument; `false` otherwise

    - #### toString

          public java.lang.String toString()

      Implementation of `Object.toString`, which will result in an indented XML `String` representation of the concrete `EPPCodecComponent`.
      Overrides:
        `toString` in class `java.lang.Object`
      Returns:
        Indented XML `String` if successful; `ERROR` otherwise.

    - #### getFrequency

          public EPPRegistryBatchSchedule.Frequency getFrequency()

      Gets the schedule execution frequency.
      Returns:
        The schedule execution frequency if defined; `null` otherwise.

    - #### setFrequency

          public void setFrequency​(EPPRegistryBatchSchedule.Frequency aFrequency)

      Sets the schedule execution frequency.
      Parameters:
        `aFrequency` - The schedule execution frequency

    - #### getTime

          public java.lang.String getTime()

      Gets the schedule execution time using the XML schema "time" type format. Examples include "14:00:00" for a time without a time zone offset, "07:00:00-05:00" for a time with a 5 hour offset from UTC or EST time zone, and "17:00:00Z" for 5 PM UTC.
      Returns:
        The schedule execution time if defined; `null` otherwise.

    - #### setTime

          public void setTime​(java.lang.String aTime)

      Sets the schedule execution time using the XML schema "time" type format. Examples include "14:00:00" for a time without a time zone offset, "07:00:00-05:00" for a time with a 5 hour offset from UTC or EST time zone, and "17:00:00Z" for 5 PM UTC.
      Parameters:
        `aTime` - The schedule execution time

    - #### hasTimeZone

          public boolean hasTimeZone()

      Is the schedule execution named time zone defined?
      Returns:
        `true` if the schedule execution named time zone is defined; `false` otherwise.

    - #### getTimeZone

          public java.lang.String getTimeZone()

      Gets the optional schedule execution named time zone, such as "EST5EDT".
      Returns:
        The schedule execution named time zone if defined; `null` otherwise.

    - #### setTimeZone

          public void setTimeZone​(java.lang.String aTimeZone)

      Sets the optional schedule execution named time zone, such as "EST5EDT".
      Parameters:
        `aTimeZone` - The schedule execution named time zone

    - #### hasDayOfWeek

          public boolean hasDayOfWeek()

      Is the day of week defined?
      Returns:
        `true` if the day of week defined; `false` otherwise.

    - #### getDayOfWeek

          public EPPRegistryBatchSchedule.DayOfWeek getDayOfWeek()

      Gets the optional day of week.
      Returns:
        The day of week if defined; `null` otherwise.

    - #### setDayOfWeek

          public void setDayOfWeek​(EPPRegistryBatchSchedule.DayOfWeek aDayOfWeek)

      Sets the optional day of week.
      Parameters:
        `aDayOfWeek` - The day of week. Set to `null` if undefined.

    - #### hasDayOfMonth

          public boolean hasDayOfMonth()

      Is the day of month defined?
      Returns:
        `true` if the day of month defined; `false` otherwise.

    - #### getDayOfMonth

          public java.lang.Integer getDayOfMonth()

      Gets the optional day of month.
      Returns:
        The day of month if defined; `null` otherwise.

    - #### setDayOfMonth

          public void setDayOfMonth​(java.lang.Integer aDayOfMonth)

      Sets the optional day of month.
      Parameters:
        `aDayOfMonth` - The day of month. Set to `null` if undefined.

    - #### getNamespace

          public java.lang.String getNamespace()

      Returns the XML namespace associated with the `EPPCodecComponent`.
      Specified by:
        `getNamespace` in interface `EPPCodecComponent`
      Returns:
        XML namespace for the `EPPCodecComponent`.