Class: Stoplight::Wiring::StorageSet Private

Inherits:
Data
  • Object
show all
Defined in:
sig/_private/stoplight/wiring/storage_set.rbs,
lib/stoplight/wiring/storage_set.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Immutable container for all storage components required by a Light.

StorageSet groups the four storage interfaces that a circuit breaker needs: metrics tracking, recovery metrics, state persistence, and recovery locking. This allows the storage layer to be constructed once and passed as a unit, making dependencies explicit and simplifying Light construction.

Examples:

storage_set = StorageSetBuilder.new(backend:, windowed: true).build
storage_set.metrics_store      #=> WindowMetrics instance
storage_set.state_store        #=> State instance

See Also:

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



30
# File 'sig/_private/stoplight/wiring/storage_set.rbs', line 30

def initialize: (

Instance Attribute Details

#metrics_storeObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns the value of attribute metrics_store

Returns:

  • (Object)

    the current value of metrics_store



5
6
7
# File 'lib/stoplight/wiring/storage_set.rb', line 5

def metrics_store
  @metrics_store
end

#recovery_lock_storeObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns the value of attribute recovery_lock_store

Returns:

  • (Object)

    the current value of recovery_lock_store



5
6
7
# File 'lib/stoplight/wiring/storage_set.rb', line 5

def recovery_lock_store
  @recovery_lock_store
end

#recovery_metrics_storeObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns the value of attribute recovery_metrics_store

Returns:

  • (Object)

    the current value of recovery_metrics_store



5
6
7
# File 'lib/stoplight/wiring/storage_set.rb', line 5

def recovery_metrics_store
  @recovery_metrics_store
end

#state_storeObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns the value of attribute state_store

Returns:

  • (Object)

    the current value of state_store



5
6
7
# File 'lib/stoplight/wiring/storage_set.rb', line 5

def state_store
  @state_store
end

Class Method Details

.newObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



23
# File 'sig/_private/stoplight/wiring/storage_set.rbs', line 23

def self.new: (