Sha256: 1c734fc9a5941d85ca88a30d23b7c798d63dc87b78e5e4fd44ae8588557700a9

Contents?: true

Size: 981 Bytes

Versions: 2

Compression:

Stored size: 981 Bytes

Contents

require 'multi_json'

require 'glip_sdk/rest/cache/groups'

module GlipSdk
  module REST
    class Client
      attr_accessor :api
      attr_accessor :logger
      attr_accessor :groups
      attr_accessor :groups_cache
      attr_accessor :persons
      attr_accessor :posts

      def initialize(rc_sdk)
        @api = rc_sdk
        @logger = @api.config.logger

        @groups_cache = GlipSdk::REST::Cache::Groups.new

        @groups = GlipSdk::REST::Groups.new @api
        @persons = GlipSdk::REST::Persons.new @api
        @posts = GlipSdk::REST::Posts.new @api
      end

      def load_groups_cache(filepath = nil)
        if !filepath.nil? && File.exist?(filepath)
          groups_json = IO.read filepath
          all_groups = MultiJson.decode groups_json
          @groups_cache.load_groups all_groups
        else
          @groups_cache.load_groups @groups.all_groups          
        end

        @posts.groups_cache = @groups_cache
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
glip_sdk-0.0.4 lib/glip_sdk/rest/client.rb
glip_sdk-0.0.3 lib/glip_sdk/rest/client.rb