## Provided Capabilities (1)

Name | Dynamic | Other provider points
--- | --- | ---
org.wildfly.network.outbound-socket-binding | true | /socket-binding-group=*/remote-destination-outbound-socket-binding=*

## Attributes (4)

- fixed-source-port - Whether the port value should remain fixed even if numeric offsets are applied to the other outbound sockets in the socket group.

  Type | BOOLEAN
  Default Value | false
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "BOOLEAN"
          },
          "description" : "Whether the port value should remain fixed even if numeric offsets are applied to the other outbound sockets in the socket group.",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : false,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services",
          "capability-reference" : null
      }

- socket-binding-ref - The name of the local socket-binding which will be used to determine the port to which this outbound socket connects.

  Type | STRING
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "description" : "The name of the local socket-binding which will be used to determine the port to which this outbound socket connects.",
          "expressions-allowed" : true,
          "required" : true,
          "nillable" : false,
          "capability-reference" : "org.wildfly.network.socket-binding",
          "min-length" : 1,
          "max-length" : 2147483647,
          "stability" : "default",
          "access-constraints" : {"sensitive" : {"socket-binding-ref" : {"type" : "core"}}},
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services"
      }

- source-interface - The name of the interface which will be used for the source address of the outbound socket.

  Type | STRING
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "description" : "The name of the interface which will be used for the source address of the outbound socket.",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "capability-reference" : "org.wildfly.network.interface",
          "min-length" : 1,
          "max-length" : 2147483647,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services"
      }

- source-port - The port number which will be used as the source port of the outbound socket.

  Type | INT
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Min | 0
  Max | 65535
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "INT"
          },
          "description" : "The port number which will be used as the source port of the outbound socket.",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "min" : 0,
          "max" : 65535,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services",
          "capability-reference" : null
      }

## Operations (2)

- add - Adds a local destination outbound socket binding to a socket binding group

  Request Parameter | Type | Required | Expressions Allowed | Default value | Description
  --- | --- | --- | --- | --- | ---
  fixed-source-port | BOOLEAN | false | true | false | Whether the port value should remain fixed even if numeric offsets are applied to the other outbound sockets in the socket group.
  socket-binding-ref | STRING | true | true |  | The name of the local socket-binding which will be used to determine the port to which this outbound socket connects.
  source-interface | STRING | false | true |  | The name of the interface which will be used for the source address of the outbound socket.
  source-port | INT | false | true |  | The port number which will be used as the source port of the outbound socket.

  Raw DMR model |
      {
          "operation-name" : "add",
          "description" : "Adds a local destination outbound socket binding to a socket binding group",
          "request-properties" : {
              "fixed-source-port" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "BOOLEAN"
                  },
                  "description" : "Whether the port value should remain fixed even if numeric offsets are applied to the other outbound sockets in the socket group.",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : false,
                  "stability" : "default"
              },
              "socket-binding-ref" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "The name of the local socket-binding which will be used to determine the port to which this outbound socket connects.",
                  "expressions-allowed" : true,
                  "required" : true,
                  "nillable" : false,
                  "capability-reference" : "org.wildfly.network.socket-binding",
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "source-interface" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "The name of the interface which will be used for the source address of the outbound socket.",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "capability-reference" : "org.wildfly.network.interface",
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "source-port" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "INT"
                  },
                  "description" : "The port number which will be used as the source port of the outbound socket.",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "min" : 0,
                  "max" : 65535,
                  "stability" : "default"
              }
          },
          "reply-properties" : {},
          "stability" : "default",
          "read-only" : false,
          "runtime-only" : false
      }

- remove - Removes a local destination outbound socket binding from a socket binding group

  Raw DMR model |
      {
          "operation-name" : "remove",
          "description" : "Removes a local destination outbound socket binding from a socket binding group",
          "request-properties" : {},
          "reply-properties" : {},
          "stability" : "default",
          "read-only" : false,
          "restart-required" : "all-services",
          "runtime-only" : false
      }

## Galleon Features

Galleon features are to be used when creating Galleon feature-packs.

- socket-binding-group.local-destination-outbound-socket-binding

      <feature spec="socket-binding-group.local-destination-outbound-socket-binding">
        <param name="local-destination-outbound-socket-binding" value="{resource name}"/>
        <param name="socket-binding-group" value="{resource name}"/>
        <param name="fixed-source-port" value="{value}"/>
        <param name="socket-binding-ref" value="{value}"/>
        <param name="source-interface" value="{value}"/>
        <param name="source-port" value="{value}"/>
      <feature/>