Package com.avaya.clientservices.common

## Class SignalingServer

- java.lang.Object
- - com.avaya.clientservices.common.SignalingServer

-     public class SignalingServer
      extends java.lang.Object

  Represents a signaling server to communicate with.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `SignalingServer.FailbackPolicy` | Enumerated type to define how failing back to a server with a higher priority than the current server is handled.
    `static class` | `SignalingServer.TransportType` | Supported transport types.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SignalingServer​(SignalingServer.TransportType transport, java.lang.String hostname, int port, SignalingServer.FailbackPolicy failbackPolicy)` | Construct a SIPSignalingServer object.
    `SignalingServer​(SignalingServer.TransportType transport, java.lang.String hostname, int port, SignalingServer.FailbackPolicy failbackPolicy, java.lang.String[] preloadedRoutes, boolean permanentMemberOfRegistrationGroup)` | Construct a SIPSignalingServer object.
    `SignalingServer​(java.lang.String hostname, SignalingServer.FailbackPolicy failbackPolicy)` | Construct a SIPSignalingServer object.
    `SignalingServer​(java.lang.String hostname, java.util.Map<SignalingServer.TransportType,​java.lang.Integer> transportTypeToPortMap, SignalingServer.FailbackPolicy failbackPolicy, java.lang.String[] preloadedRoutes, boolean permanentMemberOfRegistrationGroup)` | Construct a SIPSignalingServer object.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `equals​(java.lang.Object o)` |
    `SignalingServer.FailbackPolicy` | `getFailbackPolicy()` |
    `java.lang.String` | `getHostname()` | Get the hostname of the server.
    `java.lang.String[]` | `getPreloadedRoutes()` |
    `java.util.Map<SignalingServer.TransportType,​java.lang.Integer>` | `getTransportTypeToPortMap()` | Each address should be of the format transportType://serverName:port.
    `int` | `hashCode()` |
    `boolean` | `isPermanentMemberOfRegistrationGroup()` |
    `java.lang.String` | `toString()` |

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

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### SignalingServer

          public SignalingServer​(java.lang.String hostname,
                                 SignalingServer.FailbackPolicy failbackPolicy)

      Construct a SIPSignalingServer object.
      Parameters:
        `hostname` - This can specify the server FQDN or IP address.
        `failbackPolicy` - The failback policy for the server.

    - #### SignalingServer

          public SignalingServer​(SignalingServer.TransportType transport,
                                 java.lang.String hostname,
                                 int port,
                                 SignalingServer.FailbackPolicy failbackPolicy)

      Construct a SIPSignalingServer object.
      Parameters:
        `transport` - The type of transport to use to contact the server.
        `hostname` - This can specify the server FQDN or IP address.
        `port` - The port number (if known), otherwise use 0.
        `failbackPolicy` - The failback policy for the server.

    - #### SignalingServer

          public SignalingServer​(SignalingServer.TransportType transport,
                                 java.lang.String hostname,
                                 int port,
                                 SignalingServer.FailbackPolicy failbackPolicy,
                                 java.lang.String[] preloadedRoutes,
                                 boolean permanentMemberOfRegistrationGroup)

      Construct a SIPSignalingServer object.
      Parameters:
        `transport` - The type of transport to use to contact the server.
        `hostname` - This can specify the server FQDN or IP address.
        `port` - The port number (if known), otherwise use 0.
        `failbackPolicy` - The failback policy for the server.
        `preloadedRoutes` - An ordered list of URIs (in a string format) that should be used as routing information for ALL outgoing requests.
        `permanentMemberOfRegistrationGroup` - Indicates if this server is a permanent member in a RegistrationGroup used only when SignalingServers are put in RegistrationGroup else not used. although its not property of SignalingServer we have kept this member in SignalingSever for convenience.

    - #### SignalingServer

          public SignalingServer​(java.lang.String hostname,
                                 java.util.Map<SignalingServer.TransportType,​java.lang.Integer> transportTypeToPortMap,
                                 SignalingServer.FailbackPolicy failbackPolicy,
                                 java.lang.String[] preloadedRoutes,
                                 boolean permanentMemberOfRegistrationGroup)

      Construct a SIPSignalingServer object.
      Parameters:
        `hostname` - This can specify the server FQDN or IP address.
        `transportTypeToPortMap` - Map of Transport type to server port.
        `failbackPolicy` - The failback policy for the server.
        `preloadedRoutes` - An ordered list of URIs (in a string format) that should be used as routing information for ALL outgoing requests.
        `permanentMemberOfRegistrationGroup` - Indicates if this server is a permanent member in a RegistrationGroup used only when SignalingServers are put in RegistrationGroup else not used. although its not property of SignalingServer we have kept this member in SignalingSever for convenience.

  - ### Method Detail

    - #### getHostname

          public java.lang.String getHostname()

      Get the hostname of the server.

      This may by a fully qualified domain name or an IP address.

      Returns:
        The server's hostname.

    - #### getFailbackPolicy

          public SignalingServer.FailbackPolicy getFailbackPolicy()

    - #### getTransportTypeToPortMap

          public java.util.Map<SignalingServer.TransportType,​java.lang.Integer> getTransportTypeToPortMap()

      Each address should be of the format transportType://serverName:port. The serverName can be an IP Address or an FQDN The Transport type can be one of strings "tcp" , "tls", "udp". It is case insensitive. The port is an unsigned integer.
      Returns:
        Map of the transport type and the port number.

    - #### getPreloadedRoutes

          public java.lang.String[] getPreloadedRoutes()

    - #### isPermanentMemberOfRegistrationGroup

          public boolean isPermanentMemberOfRegistrationGroup()

    - #### equals

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

      Overrides:
        `equals` in class `java.lang.Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`