Package com.verisign.epp.codec.maintenance.v1_0

## Class EPPMaintenanceSystem

- java.lang.Object
- - com.verisign.epp.codec.maintenance.v1_0.EPPMaintenanceSystem

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

      public class EPPMaintenanceSystem
      extends java.lang.Object
      implements EPPCodecComponent

  `EPPMaintenanceSystem` indicates what impacted system with the following attributes:
  - name - Name of the affected system, such as 'EPP', 'WHOIS', 'DNS', 'Portal', etc..
  - host - Indicates the affected maintained system based on host name or host address.
  - impact - Indicates the impact level, which is either 'full' or 'partial'.
  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `EPPMaintenanceSystem.Impact` | Impact enumerated values.

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static java.lang.String` | `ELM_LOCALNAME` | XML local name for `EPPMaintenanceSystem`.
    `static java.lang.String` | `ELM_NAME` | XML root tag for `EPPMaintenance`.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `EPPMaintenanceSystem()` | Default constructor for `EPPMaintenanceSystem`.
    `EPPMaintenanceSystem​(java.lang.String aName, java.lang.String aHost, EPPMaintenanceSystem.Impact aImpact)` | Constructor for `EPPMaintenanceSystem` with all of the attributes as parameters.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.Object` | `clone()` | Clone `EPPMaintenanceSystem`.
    `void` | `decode​(org.w3c.dom.Element aElement)` | Decode the `EPPMaintenanceSystem` 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 `EPPMaintenanceSystem` instance.
    `boolean` | `equals​(java.lang.Object aObject)` | implements a deep `EPPMaintenanceSystem` compare.
    `java.lang.String` | `getHost()` | Gets the OPTIONAL affected maintained system host.
    `EPPMaintenanceSystem.Impact` | `getImpact()` | Gets the impact level.
    `java.lang.String` | `getName()` | Gets the name of the affected system, such as 'EPP', 'WHOIS', 'DNS', 'PORTAL', etc..
    `java.lang.String` | `getNamespace()` | Returns the XML namespace associated with the `EPPCodecComponent`.
    `boolean` | `hasHost()` | Is the system host defined?
    `void` | `setHost​(java.lang.String aHost)` | Sets the OPTIONAL affected maintained system host.
    `void` | `setImpact​(EPPMaintenanceSystem.Impact impact)` | Sets the impact level.
    `void` | `setName​(java.lang.String aName)` | Sets the name of the affected system, such as 'EPP', 'WHOIS', 'DNS', 'PORTAL', etc..
    `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 `EPPMaintenanceSystem`.
      See Also:
        Constant Field Values

    - #### ELM_NAME

          public static final java.lang.String ELM_NAME

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

  - ### Constructor Detail

    - #### EPPMaintenanceSystem

          public EPPMaintenanceSystem()

      Default constructor for `EPPMaintenanceSystem`. The required attributes need to be set. The `impact` attribute defaults to `EPPMaintenanceSystem.Impact.partial`.

    - #### EPPMaintenanceSystem

          public EPPMaintenanceSystem​(java.lang.String aName,
                                      java.lang.String aHost,
                                      EPPMaintenanceSystem.Impact aImpact)

      Constructor for `EPPMaintenanceSystem` with all of the attributes as parameters.
      Parameters:
        `aName` - Name of the affected system, such as 'EPP', 'WHOIS', 'DNS', 'PORTAL', etc..
        `aHost` - Host of the system
        `aImpact` - Impact of system maintenance

  - ### Method Detail

    - #### getName

          public java.lang.String getName()

      Gets the name of the affected system, such as 'EPP', 'WHOIS', 'DNS', 'PORTAL', etc..
      Returns:
        Name of the affected system if set; `null` otherwise.

    - #### setName

          public void setName​(java.lang.String aName)

      Sets the name of the affected system, such as 'EPP', 'WHOIS', 'DNS', 'PORTAL', etc..
      Parameters:
        `aName` - Name of the affected system

    - #### hasHost

          public boolean hasHost()

      Is the system host defined?
      Returns:
        `true` if the system host is defined; `false` otherwise.

    - #### getHost

          public java.lang.String getHost()

      Gets the OPTIONAL affected maintained system host.
      Returns:
        The affected maintained system host if defined; `null` otherwise.

    - #### setHost

          public void setHost​(java.lang.String aHost)

      Sets the OPTIONAL affected maintained system host.
      Parameters:
        `aHost` - affected maintained system host.

    - #### getImpact

          public EPPMaintenanceSystem.Impact getImpact()

      Gets the impact level.
      Returns:
        Returns the impact level with the default set to `EPPMaintenanceSystem.Impact.partial`.

    - #### setImpact

          public void setImpact​(EPPMaintenanceSystem.Impact impact)

      Sets the impact level.
      Parameters:
        `impact` - level of the system maintenance

    - #### encode

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

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

    - #### decode

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

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

    - #### equals

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

      implements a deep `EPPMaintenanceSystem` compare.
      Overrides:
        `equals` in class `java.lang.Object`
      Parameters:
        `aObject` - `EPPMaintenanceSystem` instance to compare with
      Returns:
        `true` of `aObject` is equal to instance; `false` otherwise.

    - #### clone

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

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

    - #### 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.

    - #### 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`.