1# frozen_string_literal: true
2
3class Customer
4 def initialize(customer_id, jid)
5 @customer_id = customer_id
6 @jid = jid
7 end
8
9 def customer_id
10 @customer_id = REDIS.get(redis_key_jid)
11 end
12
13 def save!
14 unless REDIS.set(redis_key_jid, @customer_id) == "OK"
15 raise "Saving new jid,customer to redis failed"
16 end
17
18 return if REDIS.set(redis_key_customer_id, normalized_jid) == "OK"
19
20 raise "Saving new customer,jid to redis failed"
21 end
22
23 def trust_level
24 REDIS.get(redis_trust_level)
25 end
26
27protected
28
29 def normalized_jid
30 @jid.to_s.downcase
31 end
32
33 def redis_trust_level
34 "jmp_customer_trust_level-#{@customer_id}"
35 end
36
37 def redis_key_jid
38 "jmp_customer_id-#{normalized_jid}"
39 end
40
41 def redis_key_customer_id
42 "jmp_customer_jid-#{@customer_id}"
43 end
44end