Module: Arbor::API

Included in:
Client
Defined in:
lib/arbor/api.rb

Instance Method Summary collapse

Instance Method Details

#changelog(type, from_revision = 0) ⇒ Object



21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/arbor/api.rb', line 21

def changelog(type, from_revision = 0)
  resource = parse_resource_name(type)

  data = get("/rest-v2/#{resource.dasherize.tr('/', '_')}/changelog?from-revision=#{from_revision}")

  data['changes'].each do |c|
    c['entityType'] = "change"
    @highest_revision = [highest_revision, BigDecimal.new(c['toRevision'])].max
  end

  unmarshall_data(data, 'changes')
end

#query(type, query = nil) ⇒ Object



12
13
14
15
16
17
18
19
# File 'lib/arbor/api.rb', line 12

def query(type, query = nil)
  resource = parse_resource_name(type)
  query_string = query.build_query_string if query

  data = get("/rest-v2/#{resource.dasherize.tr('/', '_')}?#{query_string}")

  unmarshall_data(data, resource)
end

#retrieve(type, id) ⇒ Object



5
6
7
8
9
10
# File 'lib/arbor/api.rb', line 5

def retrieve(type, id)
  resource = parse_resource_name(type)
  data = get("/rest-v2/#{resource.dasherize}/#{id}")

  unmarshall_data(data, resource)
end