## Provided Capabilities (1)

Name | Dynamic | Other provider points
--- | --- | ---
org.wildfly.clustering.infinispan.cache-configuration.component.partition-handling | true | /subsystem=infinispan/cache-container=*/replicated-cache=*/component=partition-handling /subsystem=infinispan/cache-container=*/scattered-cache=*/component=partition-handling

## Attributes (3)

- enabled - If enabled, the cache will enter degraded mode upon detecting a network partition that threatens the integrity of the cache.
  Deprecated Since 16.0.0
  Deprecated. Partition handling behavior is defined by the when-split attribute.

  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? | no-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "BOOLEAN"
          },
          "description" : "If enabled, the cache will enter degraded mode upon detecting a network partition that threatens the integrity of the cache.",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : false,
          "stability" : "default",
          "deprecated" : {
              "since" : "16.0.0",
              "reason" : "Deprecated. Partition handling behavior is defined by the when-split attribute."
          },
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "no-services",
          "capability-reference" : null
      }

- merge-policy - Defines the policy for resolving cache entry conflicts when merging partitions.

  Type | STRING
  Default Value | NONE
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | resource-services
  Allowed Values | PREFERRED_NON_NULL PREFERRED_ALWAYS NONE REMOVE_ALL
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "description" : "Defines the policy for resolving cache entry conflicts when merging partitions.",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : "NONE",
          "allowed" : [
              "NONE",
              "PREFERRED_ALWAYS",
              "PREFERRED_NON_NULL",
              "REMOVE_ALL"
          ],
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "resource-services",
          "capability-reference" : null
      }

- when-split - Defines the availability of cache entries after a network partition is detected.

  Type | STRING
  Default Value | ALLOW_READ_WRITES
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | resource-services
  Allowed Values | DENY_READ_WRITES ALLOW_READ_WRITES ALLOW_READS
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "description" : "Defines the availability of cache entries after a network partition is detected.",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : "ALLOW_READ_WRITES",
          "allowed" : [
              "DENY_READ_WRITES",
              "ALLOW_READS",
              "ALLOW_READ_WRITES"
          ],
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "resource-services",
          "capability-reference" : null
      }

## Operations (2)

- add - Add a partition handling configuration.

  Request Parameter | Type | Required | Expressions Allowed | Default value | Description
  --- | --- | --- | --- | --- | ---
  enabled | BOOLEAN | false | true | false | If enabled, the cache will enter degraded mode upon detecting a network partition that threatens the integrity of the cache.
  merge-policy | STRING | false | true | NONE | Defines the policy for resolving cache entry conflicts when merging partitions.
  when-split | STRING | false | true | ALLOW_READ_WRITES | Defines the availability of cache entries after a network partition is detected.

  Raw DMR model |
      {
          "operation-name" : "add",
          "description" : "Add a partition handling configuration.",
          "request-properties" : {
              "enabled" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "BOOLEAN"
                  },
                  "description" : "If enabled, the cache will enter degraded mode upon detecting a network partition that threatens the integrity of the cache.",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : false,
                  "stability" : "default",
                  "deprecated" : {
                      "since" : "16.0.0",
                      "reason" : "Deprecated. Partition handling behavior is defined by the when-split attribute."
                  }
              },
              "merge-policy" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "Defines the policy for resolving cache entry conflicts when merging partitions.",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : "NONE",
                  "allowed" : [
                      "NONE",
                      "PREFERRED_ALWAYS",
                      "PREFERRED_NON_NULL",
                      "REMOVE_ALL"
                  ],
                  "stability" : "default"
              },
              "when-split" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "Defines the availability of cache entries after a network partition is detected.",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : "ALLOW_READ_WRITES",
                  "allowed" : [
                      "DENY_READ_WRITES",
                      "ALLOW_READS",
                      "ALLOW_READ_WRITES"
                  ],
                  "stability" : "default"
              }
          },
          "reply-properties" : {},
          "stability" : "default",
          "read-only" : false,
          "runtime-only" : false
      }

- remove - Remove a partition handling configuration.

  Raw DMR model |
      {
          "operation-name" : "remove",
          "description" : "Remove a partition handling configuration.",
          "request-properties" : {},
          "reply-properties" : {},
          "stability" : "default",
          "read-only" : false,
          "restart-required" : "resource-services",
          "runtime-only" : false
      }

## Galleon Features

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

- subsystem.infinispan.cache-container.distributed-cache.component.partition-handling

      <feature spec="subsystem.infinispan.cache-container.distributed-cache.component.partition-handling">
        <param name="cache-container" value="{resource name}"/>
        <param name="distributed-cache" value="{resource name}"/>
        <param name="enabled" value="{value}"/>
        <param name="merge-policy" value="{value}"/>
        <param name="when-split" value="{value}"/>
      <feature/>