Sha256: c809803136d2ae3b347caec3623fa081c6c6baa561ac35b3e986a1dca4e63c0e

Contents?: true

Size: 844 Bytes

Versions: 4

Compression:

Stored size: 844 Bytes

Contents

class Claim
  REDIS_NAMESPACE = 'handlers:claims'
  REDIS_KEY = 'claim'

  class << self
    def all
      redis.hkeys(REDIS_KEY)
    end

    def create(property_name, claimer, environment = 'default')
      return false if self.exists?("#{property_name}_#{environment}")
      redis.hset(REDIS_KEY, "#{property_name}_#{environment}", claimer)
    end

    def read(property_name, environment = 'default')
      redis.hget(REDIS_KEY, "#{property_name}_#{environment}")
    end

    def destroy(property_name, environment = 'default')
      redis.hdel(REDIS_KEY, "#{property_name}_#{environment}")
    end

    def exists?(property_name, environment = 'default')
      redis.hexists(REDIS_KEY, "#{property_name}_#{environment}")
    end

    def redis
      @redis ||= Redis::Namespace.new(REDIS_NAMESPACE, redis: Lita.redis)
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
lita-claims-0.0.4rc1 lib/claim.rb
lita-claims-0.0.3 lib/claim.rb
lita-claims-0.0.2 lib/claim.rb
lita-claims-0.0.1 lib/claim.rb