Package com.verisign.epp.codec.unhandlednamespaces.v1_0

## Class EPPUnhandledNamespacesMonitorLogger

- java.lang.Object
- - com.verisign.epp.codec.unhandlednamespaces.v1_0.EPPUnhandledNamespacesMonitorLogger

- All Implemented Interfaces:
    `EPPUnhandledNamespacesMonitor`

      public class EPPUnhandledNamespacesMonitorLogger
      extends java.lang.Object
      implements EPPUnhandledNamespacesMonitor

  Monitor for unhandled namespaces by logging the full XML namespaces for the unhandled namespaces. This is the default monitor used for the filter classes (`EPPUnhandledNamespacesResponseFilter` and `EPPUnhandledNamespacesPollMessageFilter`).

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `EPPUnhandledNamespacesMonitorLogger()` | Default constructor with no usage specified.
    `EPPUnhandledNamespacesMonitorLogger​(org.slf4j.Logger aLogger, boolean aUseSuffix)` | Constructor that takes a usage value, which will be included in the logs.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `org.slf4j.Logger` | `getLogger()` | Gets the custom logger to use for logging the unhandled namespaces.
    `boolean` | `isUseSuffix()` | Will the logs include the XML namespace suffix instead of the full XML namespace?
    `void` | `monitorUnhandledNamespaces​(EPPResponse aOrigResponse, EPPResponse aFilteredResponse, boolean aNoOp, java.util.Set<java.lang.String> aUnhandledNamespaces, java.lang.Object aData)` | Method called to monitor for returning unhandled namespace information to clients and to report it to the clients out of band to EPP.
    `void` | `setLogger​(org.slf4j.Logger aLogger)` | Gets the custom logger to use for logging the unhandled namespaces.
    `void` | `setUseSuffix​(boolean useSuffix)` | Sets whether the logs include the XML namespace suffix instead of the full XML namespace.

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### EPPUnhandledNamespacesMonitorLogger

          public EPPUnhandledNamespacesMonitorLogger()

      Default constructor with no usage specified.

    - #### EPPUnhandledNamespacesMonitorLogger

          public EPPUnhandledNamespacesMonitorLogger​(org.slf4j.Logger aLogger,
                                                     boolean aUseSuffix)

      Constructor that takes a usage value, which will be included in the logs.
      Parameters:
        `aLogger` - Logger to use for logging. Set to `null` to use the default logger, which is `EPPUnhandledNamespacesMonitorLogger.class`.
        `aUseSuffix` - Log the unhandled namespace suffix in place of the full XML namespace for condensed logging.

  - ### Method Detail

    - #### isUseSuffix

          public boolean isUseSuffix()

      Will the logs include the XML namespace suffix instead of the full XML namespace?
      Returns:
        `true` if the logs include the XML namespace suffix instead of the full XML namespace; `false` otherwise.

    - #### setUseSuffix

          public void setUseSuffix​(boolean useSuffix)

      Sets whether the logs include the XML namespace suffix instead of the full XML namespace.
      Parameters:
        `useSuffix` - `true` if the logs include the XML namespace suffix instead of the full XML namespace; `false` otherwise.

    - #### getLogger

          public org.slf4j.Logger getLogger()

      Gets the custom logger to use for logging the unhandled namespaces. If unset, the default logger using the `EPPUnhandledNamespacesMonitorLogger` FQCN.
      Returns:
        The custom logger if set; `null` otherwise.

    - #### setLogger

          public void setLogger​(org.slf4j.Logger aLogger)

      Gets the custom logger to use for logging the unhandled namespaces. If unset, the default logger using the `EPPUnhandledNamespacesMonitorLogger` FQCN.
      Parameters:
        `aLogger` - The custom logger to use. Set to `null` to not use a custom logger.

    - #### monitorUnhandledNamespaces

          public void monitorUnhandledNamespaces​(EPPResponse aOrigResponse,
                                                 EPPResponse aFilteredResponse,
                                                 boolean aNoOp,
                                                 java.util.Set<java.lang.String> aUnhandledNamespaces,
                                                 java.lang.Object aData)

      Method called to monitor for returning unhandled namespace information to clients and to report it to the clients out of band to EPP. This method will log the list of unhandled namespaces either using the full XML namespace when `useSuffix` is `false` or using the XML namespace suffix when `useSuffix` is `true`.
      Specified by:
        `monitorUnhandledNamespaces` in interface `EPPUnhandledNamespacesMonitor`
      Parameters:
        `aOrigResponse` - The original EPP response that was created without consideration of the namespaces supported by the client.
        `aFilteredResponse` - The filtered EPP response that includes the filtered the unhandled namespace XML into <extValue> elements.
        `aNoOp` - If set to `true`, the filter classes (`EPPUnhandledNamespacesResponseFilter` and `EPPUnhandledNamespacesPollMessageFilter`) are used only to identify for the use of unhandled namespaces and
        `aUnhandledNamespaces` - The list of unhandled namespace URIs that were filtered into <extValue> elements.
        `aData` - Data object passed to the filter classes (`EPPUnhandledNamespacesResponseFilter` and `EPPUnhandledNamespacesPollMessageFilter`).