Class: Sugester::SugesterQueue

Inherits:
Object
  • Object
show all
Defined in:
lib/sugester.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(secret, enabled: !Sugester.disabled)) ⇒ SugesterQueue

Returns a new instance of SugesterQueue.



106
107
108
109
110
111
112
113
114
115
# File 'lib/sugester.rb', line 106

def initialize(secret, enabled: !Sugester.disabled)
  @enabled = enabled
  if @enabled
    @secret = secret
    c = config(:config)
    if c
      @sqs = Sugester.safe_exec { Aws::SQS::Client.new c }
    end
  end
end

Class Method Details

.secret_corrupted_warningObject



45
46
47
# File 'lib/sugester.rb', line 45

def self.secret_corrupted_warning
  Sugester.puts_warning "Secret corrupted. Visit sugester to get valid data."
end

Instance Method Details

#activity(client_id, name, options = {}) ⇒ Object



117
118
119
120
121
122
# File 'lib/sugester.rb', line 117

def activity(client_id, name, options = {})
  if @enabled
    Sugester.instance_assert "name", name, String, Symbol
    push :activity, client_id, {name: name}
  end
end

#disabled=(v) ⇒ Object



102
103
104
# File 'lib/sugester.rb', line 102

def disabled= v
  @enabled = !v
end

#payment(client_id, name, price, date_from, date_to) ⇒ Object



134
135
136
137
138
139
140
141
142
143
# File 'lib/sugester.rb', line 134

def payment(client_id, name, price, date_from, date_to)
  if @enabled
    Sugester.instance_assert "date_from", date_from, Time, Date, DateTime
    Sugester.instance_assert "date_to", date_to, Time, Date, DateTime
    Sugester.instance_assert "price", price, Numeric
    Sugester.instance_assert "name", name, String, Symbol

    push :payment, client_id, {price: price, from: date_from, to: date_to, name: name}
  end
end

#property(client_id, options) ⇒ Object



124
125
126
127
128
129
130
131
132
# File 'lib/sugester.rb', line 124

def property(client_id, options)
  if @enabled
    #options.enum do |name, value|
    #  Sugester.instance_assert "name", name, String, Symbol
    #  Sugester.instance_assert "value", value, String, Symbol, Numeric, Time, DateTime, Date
    #end
    push :property, client_id, {options: options}
  end
end