Annotation Interface EnableGatewaySenders


This Annotation is responsible for the configuration of multiple GatewaySenders. All properties set with this Annotation will be used as the default values for all GatewaySenders configured within the gatewaySenders property.
Since:
2.2.0
Author:
Udo Kohlmeyer, John Blum
See Also:
  • Element Details

    • alertThreshold

      int alertThreshold
      Configures the time, in milliseconds, that an object can be in the queue to be replicated before the configured GatewwaySenders log an alert. Defaults to GatewaySenderConfiguration.DEFAULT_ALERT_THRESHOLD. Alternatively use the spring.data.gemfire.gateway.sender.alert-threshold property in application.properties.
      Default:
      0
    • batchConflationEnabled

      boolean batchConflationEnabled
      A boolean flag to indicate if the configured GatewaySenders should use conflate entries in each batch. This means, that a batch will never contain duplicate entries, as the batch will always only contain the latest value for a key. Defaults to false. Alternatively use the spring.data.gemfire.gateway.sender.batch-conflation-enabled property in application.properties.
      Default:
      false
    • batchSize

      int batchSize
      Configures the maximum batch size that all configured GatewaySenders sends to the remote site. This property works in conjunction with the batchTimeInterval() setting. A GatewaySender will send when either the batch-size or batch-time-interval is reached. Defaults to 100. Alternatively use the spring.data.gemfire.gateway.sender.batch-size property in application.properties.
      Default:
      100
    • batchTimeInterval

      int batchTimeInterval
      Configures the maximum batch time interval in milliseconds that all configured GatewaySenders wait before attempting to send a batch of queued objects to the remote GatewayReceivers. This property works in conjunction with the batchSize() setting. A GatewaySender will send when either the batch-size or batch-time-interval is reached. Defaults to 1000. Alternatively use the spring.data.gemfire.gateway.sender.batch-time-interval property in application.properties.
      Default:
      1000
    • diskStoreReference

      String diskStoreReference
      Configures the DiskStore used by all configured GatewaySender GatewaySenders} when persisting the GatewaySenders queue data. This setting should be set when the EnableGatewaySender.persistent() property is set to true. Defaults to "". Alternatively use the spring.data.gemfire.gateway.sender.diskstore-reference property in application.properties.
      Default:
      ""
    • diskSynchronous

      boolean diskSynchronous
      A boolean flag indicating whether all configured GatewaySenders should use synchronous DiskStore writes. Defaults to true. Alternatively use the spring.data.gemfire.gateway.sender.disk-synchronous property in application.properties.
      Default:
      true
    • dispatcherThreads

      int dispatcherThreads
      Configures the number of dispatcher threads that all configured GatewaySenders will try to use to dispatch the queued events. Defaults to 5. Alternatively use the spring.data.gemfire.gateway.sender.dispatcher-threads property in application.properties.
      Default:
      5
    • eventFilters

      String[] eventFilters
      Configures the list of GatewayEventFilters to be applied to all configured GatewaySenders. GatewayEventFilters are used to filter out objects from the sending queue before dispatching them to remote GatewayReceivers. Defaults to empty list. Alternatively use the spring.data.gemfire.gateway.sender.event-filters property in application.properties.
      Default:
      {}
    • eventSubstitutionFilter

      String eventSubstitutionFilter
      Configures the GatewayEventSubstitutionFilter used by all configured GatewaySenders. The GatewayEventSubstitutionFilter is used to replace values on objects before they are enqueued for remote replication. Defaults to GatewaySenderConfiguration.DEFAULT_EVENT_SUBSTITUTION_FILTER. Alternatively use the spring.data.gemfire.gateway.sender.event-substitution-filter property in application.properties.
      Default:
      ""
    • gatewaySenders

      EnableGatewaySender[] gatewaySenders
      Default:
      {}
    • manualStart

      boolean manualStart
      A boolean flag indicating whether all configured GatewaySenders should be started automatically.

      Defaults to {@value @EnableGatewaySenderConfiguration.DEFAULT_MANUAL_START}. Alternatively use the spring.data.gemfire.gateway.sender.manual-start property in application.properties.

      Default:
      false
    • maximumQueueMemory

      int maximumQueueMemory
      Configures the maximum size in megabytes that all configured GatewaySenders queue may take in heap memory before overflowing to disk. Defaults to 100. Alternatively use the spring.data.gemfire.gateway.sender.maximum-queue-memory property in application.properties.
      Default:
      100
    • orderPolicy

      OrderPolicyType orderPolicy
      Configures the ordering policy that all configured GatewaySenders will use when queueing entries to be replicated to a remote GatewayReceiver.

      There are three different ordering policies:

      Defaults to OrderPolicyType.KEY. Alternatively use the spring.data.gemfire.gateway.sender.order-policy property in application.properties.
      Default:
      KEY
    • parallel

      boolean parallel
      A boolean} flag indicating whether all configured GatewaySenders should use parallel replication. Parallel replication means that each CacheServer that defines a GatewaySender will send data to a remote GatewayReceiver. Defaults to false. Alternatively use the spring.data.gemfire.gateway.sender.parallel property in application.properties.
      Default:
      false
    • persistent

      boolean persistent
      A boolean flag indicating whether all configured GatewaySenders should use persistence. This setting should be used in conjunction with the disk-store-reference property. Defaults to false. Alternatively use the spring.data.gemfire.gateway.sender.persistent property in application.properties.
      Default:
      false
    • regions

      String[] regions
      Configures the list of Region names that will be configured for all GatewaySenders. An empty list denotes that ALL Regions are to be replicated to the remote GatewayReceiver. Defaults to empty list. Alternatively use the spring.data.gemfire.gateway.sender.region-names property in application.properties.
      Default:
      {}
    • remoteDistributedSystemId

      int remoteDistributedSystemId
      Configures the id of the remote distributed system (cluster) that all configured GatewaySenders will send their data to. Defaults to {@value @EnableGatewaySenderConfiguration.DEFAULT_REMOTE_DISTRIBUTED_SYSTEM_ID}. Alternatively use the spring.data.gemfire.gateway.sender.remote-distributed-system-id property in application.properties.
      Default:
      -1
    • socketBufferSize

      int socketBufferSize
      Configures the socket buffer size in bytes for all configured GatewaySenders. Defaults to 524288. Alternatively use the spring.data.gemfire.gateway.sender.socket-buffer-size property in application.properties.
      Default:
      524288
    • socketReadTimeout

      int socketReadTimeout
      Configures the amount of time in milliseconds that all configured GatewaySenders will wait to receive an acknowledgment from a remote site. By default this is set to 0, which means there is no timeout. The minimum allowed timeout is 30000 (milliseconds). Defaults to 0. Alternatively use the spring.data.gemfire.gateway.sender.socket-read-timeout property in application.properties.
      Default:
      0
    • transportFilters

      String[] transportFilters
      Configures an in-order list of GatewayTransportFilter objects to be applied to all configured GatewaySenders. Defaults to empty list. Alternatively use the spring.data.gemfire.gateway.sender.transport-filters property in application.properties.
      Default:
      {}