Class: Algolia::Personalization::Client
- Inherits:
-
Object
- Object
- Algolia::Personalization::Client
- Defined in:
- lib/algolia/personalization_client.rb
Direct Known Subclasses
Class Method Summary collapse
-
.create(app_id, api_key) ⇒ Object
Create a new client providing only app ID and API key.
-
.create_with_config(config) ⇒ Object
Create a new client providing only an Personalization::Config object.
Instance Method Summary collapse
-
#get_personalization_strategy(opts = {}) ⇒ Hash
Get the personalization strategy.
-
#initialize(personalization_config, opts = {}) ⇒ Client
constructor
Initializes the Personalization client.
-
#set_personalization_strategy(personalization_strategy, opts = {}) ⇒ Hash
Set the personalization strategy.
Constructor Details
#initialize(personalization_config, opts = {}) ⇒ Client
Initializes the Personalization client
11 12 13 14 15 16 17 |
# File 'lib/algolia/personalization_client.rb', line 11 def initialize(personalization_config, opts = {}) @config = personalization_config adapter = opts[:adapter] || Defaults::ADAPTER logger = opts[:logger] || LoggerHelper.create requester = opts[:http_requester] || Defaults::REQUESTER_CLASS.new(adapter, logger) @transporter = Transport::Transport.new(@config, requester) end |
Class Method Details
.create(app_id, api_key) ⇒ Object
Create a new client providing only app ID and API key
26 27 28 29 |
# File 'lib/algolia/personalization_client.rb', line 26 def self.create(app_id, api_key) config = Personalization::Config.new(application_id: app_id, api_key: api_key) create_with_config(config) end |
.create_with_config(config) ⇒ Object
Create a new client providing only an Personalization::Config object
37 38 39 |
# File 'lib/algolia/personalization_client.rb', line 37 def self.create_with_config(config) new(config) end |
Instance Method Details
#get_personalization_strategy(opts = {}) ⇒ Hash
Get the personalization strategy.
55 56 57 |
# File 'lib/algolia/personalization_client.rb', line 55 def get_personalization_strategy(opts = {}) @transporter.read(:GET, '1/strategies/personalization', {}, opts) end |
#set_personalization_strategy(personalization_strategy, opts = {}) ⇒ Hash
Set the personalization strategy.
47 48 49 |
# File 'lib/algolia/personalization_client.rb', line 47 def set_personalization_strategy(personalization_strategy, opts = {}) @transporter.write(:POST, '1/strategies/personalization', personalization_strategy, opts) end |