Class: OpenFeature::OFREP::Provider

Inherits:
Object
  • Object
show all
Defined in:
lib/openfeature/ofrep/provider.rb

Constant Summary collapse

PROVIDER_NAME =
"OFREP Provider"

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(configuration:) ⇒ Provider

Returns a new instance of Provider.



15
16
17
18
19
# File 'lib/openfeature/ofrep/provider.rb', line 15

def initialize(configuration:)
  @metadata = SDK::Provider::ProviderMetadata.new(name: PROVIDER_NAME)
  @configuration = configuration
  @client = Client.new(configuration: configuration)
end

Instance Attribute Details

#metadataObject (readonly)

Returns the value of attribute metadata.



13
14
15
# File 'lib/openfeature/ofrep/provider.rb', line 13

def 
  @metadata
end

Instance Method Details

#fetch_boolean_value(flag_key:, default_value:, evaluation_context: nil) ⇒ Object



21
22
23
# File 'lib/openfeature/ofrep/provider.rb', line 21

def fetch_boolean_value(flag_key:, default_value:, evaluation_context: nil)
  evaluate(flag_key: flag_key, default_value: default_value, evaluation_context: evaluation_context, allowed_classes: [TrueClass, FalseClass])
end

#fetch_float_value(flag_key:, default_value:, evaluation_context: nil) ⇒ Object



37
38
39
# File 'lib/openfeature/ofrep/provider.rb', line 37

def fetch_float_value(flag_key:, default_value:, evaluation_context: nil)
  evaluate(flag_key: flag_key, default_value: default_value, evaluation_context: evaluation_context, allowed_classes: [Float])
end

#fetch_integer_value(flag_key:, default_value:, evaluation_context: nil) ⇒ Object



33
34
35
# File 'lib/openfeature/ofrep/provider.rb', line 33

def fetch_integer_value(flag_key:, default_value:, evaluation_context: nil)
  evaluate(flag_key: flag_key, default_value: default_value, evaluation_context: evaluation_context, allowed_classes: [Integer])
end

#fetch_number_value(flag_key:, default_value:, evaluation_context: nil) ⇒ Object



29
30
31
# File 'lib/openfeature/ofrep/provider.rb', line 29

def fetch_number_value(flag_key:, default_value:, evaluation_context: nil)
  evaluate(flag_key: flag_key, default_value: default_value, evaluation_context: evaluation_context, allowed_classes: [Integer, Float])
end

#fetch_object_value(flag_key:, default_value:, evaluation_context: nil) ⇒ Object



41
42
43
# File 'lib/openfeature/ofrep/provider.rb', line 41

def fetch_object_value(flag_key:, default_value:, evaluation_context: nil)
  evaluate(flag_key: flag_key, default_value: default_value, evaluation_context: evaluation_context, allowed_classes: [Array, Hash])
end

#fetch_string_value(flag_key:, default_value:, evaluation_context: nil) ⇒ Object



25
26
27
# File 'lib/openfeature/ofrep/provider.rb', line 25

def fetch_string_value(flag_key:, default_value:, evaluation_context: nil)
  evaluate(flag_key: flag_key, default_value: default_value, evaluation_context: evaluation_context, allowed_classes: [String])
end