Class EPPRegistrySystemInfo

java.lang.Object
com.verisign.epp.codec.registry.v02.EPPRegistrySystemInfo
All Implemented Interfaces:
EPPCodecComponent, Serializable, Cloneable

public class EPPRegistrySystemInfo extends Object implements EPPCodecComponent
Represents the detailed information of a registry system object. Upon receiving an <info> command, with a <registry:system> element in it, the server puts a <registry:system> element in the response.

Each element in the list contains the following info:
  • <registry:maxConnections> - The OPTIONAL attribute that contains the maximum number of connections that the client can establish with the registry system.
  • <registry:idleTimeout> - The OPTIONAL attribute that contains the idle timeout for a connection in milliseconds. If a connection does not receive a command within idleTimeout milliseconds, the server will close the connection.
  • <registry:absoluteTimeout> - The OPTIONAL attribute that contains the absolute timeout for a connection in milliseconds. The absolute timeout represents the maximum duration in milliseconds that a connection can be established. The server will close a connection that has been established for more than milliseconds milliseconds.
  • <registry:commandTimeout> - The OPTIONAL attribute that contains the command timeout for a connection in milliseconds. The server will close a connection that has an active command that exceeds commandTimeout milliseconds.
  • <registry:transLimit> - The OPTIONAL attribute that contains the maximum number of transactions that can be submitted on the connection per the "perMs" attribute milliseconds. It is up to server policy what to do with the connection when the client exceeds the transLimit.
See Also:
  • Field Details

  • Constructor Details

    • EPPRegistrySystemInfo

      public EPPRegistrySystemInfo()
      Default constructor.
    • EPPRegistrySystemInfo

      public EPPRegistrySystemInfo(Integer aMaxConnections, Integer aIdleTimeout, Integer aAbsoluteTimeout, Integer aCommandTimeout, Integer aTransLimit, Integer aPerMs)
      Constructor that takes all registry system attributes.
      Parameters:
      aMaxConnections - Maximum number of connections that the client can establish with the registry system. Set to null if undefined.
      aIdleTimeout - Idle timeout for a connection in milliseconds. Set to null if undefined.
      aAbsoluteTimeout - Absolute timeout for a connection in milliseconds. Set to null if undefined.
      aCommandTimeout - Command timeout for a connection in milliseconds. Set to null if undefined.
      aTransLimit - Maximum number of transactions that can be submitted on the connection per the "perMs" attribute milliseconds. Set to null if undefined.
      aPerMs - Number of milliseconds associated with the transLimit attribute. Set to null if undefined.
  • Method Details

    • hasMaxConnections

      public boolean hasMaxConnections()
      Is the maximum connections set?
      Returns:
      true if the maximum connections is defined; false otherwise.
    • getMaxConnections

      public Integer getMaxConnections()
      Gets the maximum number of connections.
      Returns:
      the maximum connections if defined; null otherwise.
    • setMaxConnections

      public void setMaxConnections(Integer aMaxConnections)
      Sets the maximum number of connections.
      Parameters:
      aMaxConnections - the maximum number of connections to set. Set to null if undefined.
    • hasIdleTimeout

      public boolean hasIdleTimeout()
      Is the idle timeout set?
      Returns:
      true if the idle timeout is defined; false otherwise.
    • getIdleTimeout

      public Integer getIdleTimeout()
      Gets the idle timeout in milliseconds.
      Returns:
      the idle timeout in milliseconds if defined; null otherwise.
    • setIdleTimeout

      public void setIdleTimeout(Integer aIdleTimeout)
      Sets the idle timeout in milliseconds.
      Parameters:
      aIdleTimeout - the idle timeout in milliseconds. Set to null if undefined.
    • hasAbsoluteTimeout

      public boolean hasAbsoluteTimeout()
      Is the absolute timeout set?
      Returns:
      true if the absolute timeout is defined; false otherwise.
    • getAbsoluteTimeout

      public Integer getAbsoluteTimeout()
      Gets the absolute timeout in milliseconds.
      Returns:
      the absolute timeout in milliseconds if defined; null otherwise.
    • setAbsoluteTimeout

      public void setAbsoluteTimeout(Integer aAbsoluteTimeout)
      Sets the absolute timeout in milliseconds.
      Parameters:
      aAbsoluteTimeout - the absolute timeout in milliseconds to set. Set to null if undefined.
    • hasCommandTimeout

      public boolean hasCommandTimeout()
      Is the command timeout set?
      Returns:
      true if the command timeout is defined; false otherwise.
    • getCommandTimeout

      public Integer getCommandTimeout()
      Gets the command timeout in milliseconds.
      Returns:
      the command timeout in milliseconds if defined; null otherwise.
    • setCommandTimeout

      public void setCommandTimeout(Integer aCommandTimeout)
      Sets the command timeout in milliseconds.
      Parameters:
      aCommandTimeout - the command timeout to set. Set to null if undefined.
    • hasTransLimit

      public boolean hasTransLimit()
      Is the transaction limit is set?
      Returns:
      true if the transaction limit is defined; false otherwise.
    • getTransLimit

      public Integer getTransLimit()
      Gets the transaction limit. If the transaction limit is set, the perMs attribute must be set.
      Returns:
      the transaction limit if defined; null otherwise.
    • setTransLimit

      public void setTransLimit(Integer aTransLimit)
      Sets the transaction limit. If the transaction limit is set, the perMs attribute must be set.
      Parameters:
      aTransLimit - the transaction limit to set. Set to null if undefined.
    • setTransLimit

      public void setTransLimit(Integer aTransLimit, Integer aPerMs)
      Sets the transaction limit with the perMs milliseconds.
      Parameters:
      aTransLimit - the transaction limit to set. Set to null if undefined.
      aPerMs - Milliseconds that the transaction limit is associated with. Set to null if undefined.
    • hasPerMs

      public boolean hasPerMs()
      Is the per milliseconds attribute set?
      Returns:
      true if the per milliseconds attribute is defined; false otherwise.
    • getPerMs

      public Integer getPerMs()
      Gets the milliseconds that the transaction limit is associated with.
      Returns:
      the per milliseconds if defined; null otherwise.
    • setPerMs

      public void setPerMs(Integer aPerMs)
      Sets the milliseconds that the transaction limit is associated with.
      Parameters:
      aPerMs - per milliseconds to set. Set to null if undefined.
    • encode

      public Element encode(Document aDocument) throws EPPEncodeException
      Encode a DOM Element tree from the attributes of the EPPRegistrySystemInfo 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 EPPRegistrySystemInfo instance.
      Throws:
      EPPEncodeException - - Unable to encode EPPRegistrySystemInfo instance.
    • decode

      public void decode(Element aElement) throws EPPDecodeException
      Decode the EPPRegistrySystemInfo attributes from the aElement DOM Element tree.
      Specified by:
      decode in interface EPPCodecComponent
      Parameters:
      aElement - Root DOM Element to decode EPPRegistrySystemInfo from.
      Throws:
      EPPDecodeException - Unable to decode aElement
    • equals

      public boolean equals(Object aObject)
      implements a deep EPPRegistrySystemInfo compare.
      Overrides:
      equals in class Object
      Parameters:
      aObject - EPPRegistrySystemInfo instance to compare with
      Returns:
      true if this object is the same as the aObject argument; false otherwise
    • clone

      public Object clone() throws CloneNotSupportedException
      Clone EPPRegistrySystemInfo.
      Specified by:
      clone in interface EPPCodecComponent
      Overrides:
      clone in class Object
      Returns:
      clone of EPPRegistrySystemInfo
      Throws:
      CloneNotSupportedException - standard Object.clone exception
    • toString

      public String toString()
      Implementation of Object.toString, which will result in an indented XML String representation of the concrete EPPCodecComponent.
      Overrides:
      toString in class Object
      Returns:
      Indented XML String if successful; ERROR otherwise.
    • getNamespace

      public String getNamespace()
      Returns the XML namespace associated with the EPPCodecComponent.
      Specified by:
      getNamespace in interface EPPCodecComponent
      Returns:
      XML namespace for the EPPCodecComponent.