served 0.1.7 → 0.1.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/served/http_client.rb +5 -5
- data/lib/served/resource/base.rb +4 -6
- data/lib/served/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 466e2def975e298806ecdef050c3c735823a3a95
|
4
|
+
data.tar.gz: 5ee4e6779cd2ec8f28c6121bb8e7b4a0a3e11f4d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ee891ea98ac7805ed1b5b39bb689131fd7c2fd46c693725f9eb8b2a43803d0df72e62b379be8293bf4a0291198fff1b1f7a8a4e3a48ba077a4074b18f345771
|
7
|
+
data.tar.gz: 78c97fc01bceaf808b868afee6a26bfc2206481c84e4d52457f97a8bfd2352a2bd8577e749c76a1bc87bf6079c48abcd5d9627caa73d90b441f76735280c7cab
|
data/CHANGELOG.md
ADDED
data/lib/served/http_client.rb
CHANGED
@@ -3,7 +3,7 @@ module Served
|
|
3
3
|
# Provides an interface between HTTParty and the models. Most of the crap in here is self explanatory
|
4
4
|
class HTTPClient
|
5
5
|
HEADERS = { 'Content-type' => 'application/json', 'Accept' => 'application/json' }
|
6
|
-
DEFAULT_TEMPLATE = '{resource}.json{?query*}'
|
6
|
+
DEFAULT_TEMPLATE = '{resource}{/id}.json{?query*}'
|
7
7
|
|
8
8
|
def initialize(host)
|
9
9
|
unless host =~ /{.+}/
|
@@ -12,15 +12,15 @@ module Served
|
|
12
12
|
@template = Addressable::Template.new(host)
|
13
13
|
end
|
14
14
|
|
15
|
-
def get(endpoint, params={})
|
16
|
-
HTTParty.get(@template.expand(query: params, resource: endpoint).to_s,
|
15
|
+
def get(endpoint, id, params={})
|
16
|
+
HTTParty.get(@template.expand(id: id, query: params, resource: endpoint).to_s,
|
17
17
|
headers: HEADERS,
|
18
18
|
timeout: Served.config.timeout
|
19
19
|
)
|
20
20
|
end
|
21
21
|
|
22
|
-
def put(endpoint, body, params={})
|
23
|
-
HTTParty.put(@template.expand(query: params, resource: endpoint).to_s,
|
22
|
+
def put(endpoint, id, body, params={})
|
23
|
+
HTTParty.put(@template.expand(id: id, query: params, resource: endpoint).to_s,
|
24
24
|
body: body,
|
25
25
|
headers: HEADERS,
|
26
26
|
timeout: Served.config.timeout
|
data/lib/served/resource/base.rb
CHANGED
@@ -94,9 +94,6 @@ module Served
|
|
94
94
|
|
95
95
|
alias_method :save!, :save # TODO: differentiate save! and safe much the same AR does.
|
96
96
|
|
97
|
-
# Returns a hash of attributes. If `with_values` is true, it will return only attributes whose values are not nil
|
98
|
-
#
|
99
|
-
# @param [Boolean] with_values whether or not to return all attributes or only those whose values are not nil
|
100
97
|
def attributes
|
101
98
|
Hash[self.class.attributes.keys.collect { |name| [name, send(name)] }]
|
102
99
|
end
|
@@ -104,6 +101,7 @@ module Served
|
|
104
101
|
# Reloads the resource using attributes from the service
|
105
102
|
def reload
|
106
103
|
reload_with_attributes(get)
|
104
|
+
self
|
107
105
|
end
|
108
106
|
|
109
107
|
# renders the model as json
|
@@ -121,17 +119,17 @@ module Served
|
|
121
119
|
private
|
122
120
|
|
123
121
|
def get(params={})
|
124
|
-
handle_response(client.get(
|
122
|
+
handle_response(client.get(resource_name, id, params))
|
125
123
|
end
|
126
124
|
|
127
125
|
def put(params={})
|
128
126
|
body = to_json
|
129
|
-
handle_response(client.put(
|
127
|
+
handle_response(client.put(resource_name, id, body, params))
|
130
128
|
end
|
131
129
|
|
132
130
|
def post(params={})
|
133
131
|
body = to_json
|
134
|
-
handle_response(client.post(
|
132
|
+
handle_response(client.post(resource_name, body, params))
|
135
133
|
end
|
136
134
|
|
137
135
|
def handle_response(response)
|
data/lib/served/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: served
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jarod Reid
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-12-
|
11
|
+
date: 2015-12-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
@@ -105,6 +105,7 @@ files:
|
|
105
105
|
- ".gitignore"
|
106
106
|
- ".rspec"
|
107
107
|
- ".travis.yml"
|
108
|
+
- CHANGELOG.md
|
108
109
|
- CODE_OF_CONDUCT.md
|
109
110
|
- Gemfile
|
110
111
|
- LICENSE.txt
|