Class: Caseblocks::Bucket
- Inherits:
-
Object
- Object
- Caseblocks::Bucket
- Defined in:
- lib/caseblocks/bucket.rb
Overview
Class Method Summary collapse
Instance Method Summary collapse
- #case_type ⇒ Object
- #case_type_id ⇒ Object
- #cases(options = {}) ⇒ Object
- #id ⇒ Object
-
#initialize(bucket_data, client) ⇒ Bucket
constructor
A new instance of Bucket.
- #name ⇒ Object
Constructor Details
#initialize(bucket_data, client) ⇒ Bucket
Returns a new instance of Bucket.
14 15 16 17 |
# File 'lib/caseblocks/bucket.rb', line 14 def initialize(bucket_data, client) @client = client @bucket_data = bucket_data end |
Class Method Details
.all(client) ⇒ Object
4 5 6 7 |
# File 'lib/caseblocks/bucket.rb', line 4 def self.all(client) res = client.request("/case_blocks/buckets.json") res["buckets"].map{|bucket| Caseblocks::Bucket.new(bucket, client)} end |
Instance Method Details
#case_type ⇒ Object
26 27 28 |
# File 'lib/caseblocks/bucket.rb', line 26 def case_type @case_type ||= Caseblocks::CaseType.find(case_type_id, @client) end |
#case_type_id ⇒ Object
30 31 32 |
# File 'lib/caseblocks/bucket.rb', line 30 def case_type_id @bucket_data["case_type_id"] || @bucket_data["work_type_id"] || @bucket_data["people_type_id"] || @bucket_data["organization_type_id"] end |
#cases(options = {}) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/caseblocks/bucket.rb', line 35 def cases(={}) res = @client.request("case_blocks/bucket_stats/#{id}") total_results = res["bucket_summary"]["total"] page = [:page] || 0 page_size = [:page_size] || 10 case_list = [] (0..total_results/page_size).each do |page| query = {:bucket_id => id, :page => page, :page_size => page_size}.map{|k,v| "#{k}=#{v}"}.join("&") case_list += res = @client.request("/case_blocks/#{case_type.code}?#{query}")[case_type.code].map{|c| Caseblocks::Case.new(c, @client) } end case_list end |
#id ⇒ Object
22 23 24 |
# File 'lib/caseblocks/bucket.rb', line 22 def id @bucket_data["id"] end |
#name ⇒ Object
19 20 21 |
# File 'lib/caseblocks/bucket.rb', line 19 def name @bucket_data["name"] end |