Module: Subflag::Rails
- Defined in:
- lib/subflag/rails.rb,
lib/subflag/rails/client.rb,
lib/subflag/rails/engine.rb,
lib/subflag/rails/helpers.rb,
lib/subflag/rails/railtie.rb,
lib/subflag/rails/version.rb,
lib/subflag/rails/targeting.rb,
lib/subflag/rails/models/flag.rb,
lib/subflag/rails/test_helpers.rb,
lib/subflag/rails/test_helpers.rb,
lib/subflag/rails/configuration.rb,
lib/subflag/rails/flag_accessor.rb,
lib/subflag/rails/request_cache.rb,
lib/subflag/rails/context_builder.rb,
lib/subflag/rails/targeting_engine.rb,
lib/subflag/rails/evaluation_result.rb,
lib/subflag/rails/backends/memory_provider.rb,
lib/subflag/rails/backends/subflag_provider.rb,
app/controllers/subflag/rails/flags_controller.rb,
lib/subflag/rails/backends/active_record_provider.rb,
app/controllers/subflag/rails/application_controller.rb
Defined Under Namespace
Modules: Backends, Helpers, RequestCache, Targeting, TargetingEngine, TestHelpers Classes: ApplicationController, Client, Configuration, ContextBuilder, Engine, EvaluationResult, Flag, FlagAccessor, FlagsController, PrefetchedFlag, Railtie, StubbedClient
Constant Summary collapse
- VERSION =
"0.6.6"
Class Method Summary collapse
-
.client ⇒ Client
Access the client for flag evaluation.
-
.configuration ⇒ Configuration
Access the configuration.
-
.configure {|Configuration| ... } ⇒ Object
Configure Subflag for Rails.
-
.prefetch_flags(user: nil, context: nil) ⇒ Array<Hash>
Prefetch all flags for a user/context in a single API call.
-
.provider ⇒ Object
Access the current provider instance.
-
.reset! ⇒ Object
Reset configuration (primarily for testing).
Class Method Details
.client ⇒ Client
Access the client for flag evaluation
58 59 60 |
# File 'lib/subflag/rails.rb', line 58 def client @client ||= Client.new end |
.configuration ⇒ Configuration
Access the configuration
24 25 26 |
# File 'lib/subflag/rails.rb', line 24 def configuration @configuration ||= Configuration.new end |
.configure {|Configuration| ... } ⇒ Object
Configure Subflag for Rails
50 51 52 53 |
# File 'lib/subflag/rails.rb', line 50 def configure yield(configuration) setup_provider end |
.prefetch_flags(user: nil, context: nil) ⇒ Array<Hash>
Prefetch all flags for a user/context in a single API call
Call this early in a request to fetch all flags at once. Subsequent flag lookups will use the cached values.
88 89 90 |
# File 'lib/subflag/rails.rb', line 88 def prefetch_flags(user: nil, context: nil) client.prefetch_all(user: user, context: context) end |
.provider ⇒ Object
68 69 70 |
# File 'lib/subflag/rails.rb', line 68 def provider @provider end |
.reset! ⇒ Object
Reset configuration (primarily for testing)
93 94 95 96 97 |
# File 'lib/subflag/rails.rb', line 93 def reset! @configuration = Configuration.new @client = nil @provider = nil end |