restfulie 0.9.3 → 1.0.0.beta1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile +2 -0
- data/Gemfile.lock +2 -2
- data/README.textile +4 -2
- data/Rakefile +12 -13
- data/lib/restfulie/client/base.rb +9 -2
- data/lib/restfulie/client/cache/basic.rb +6 -5
- data/lib/restfulie/client/cache/http_ext.rb +10 -8
- data/lib/restfulie/client/cache/restrictions.rb +1 -6
- data/lib/restfulie/client/dsl.rb +66 -0
- data/lib/restfulie/client/entry_point.rb +34 -9
- data/lib/restfulie/client/ext/atom_ext.rb +4 -2
- data/lib/restfulie/client/ext/json_ext.rb +5 -1
- data/lib/restfulie/client/feature/base.rb +75 -0
- data/lib/restfulie/client/feature/base_request.rb +35 -0
- data/lib/restfulie/client/feature/cache.rb +16 -0
- data/lib/restfulie/client/feature/enhance_response.rb +12 -0
- data/lib/restfulie/client/feature/follow_request.rb +41 -0
- data/lib/restfulie/client/feature/history.rb +26 -0
- data/lib/restfulie/client/feature/history_request.rb +19 -0
- data/lib/restfulie/client/feature/open_search/pattern_matcher.rb +25 -0
- data/lib/restfulie/client/feature/open_search.rb +21 -0
- data/lib/restfulie/client/feature/serialize_body.rb +32 -0
- data/lib/restfulie/client/feature/setup_header.rb +22 -0
- data/lib/restfulie/client/feature/throw_error.rb +41 -0
- data/lib/restfulie/client/feature/verb.rb +119 -0
- data/lib/restfulie/client/feature.rb +5 -0
- data/lib/restfulie/client/http/response_holder.rb +26 -6
- data/lib/restfulie/client/http.rb +1 -21
- data/lib/restfulie/client/master_delegator.rb +31 -0
- data/lib/restfulie/client/mikyung/core.rb +5 -4
- data/lib/restfulie/client/mikyung/steady_state_walker.rb +1 -1
- data/lib/restfulie/client/mikyung.rb +1 -8
- data/lib/restfulie/client.rb +3 -1
- data/lib/restfulie/common/converter/atom/base.rb +2 -0
- data/lib/restfulie/common/converter/form_url_encoded.rb +16 -0
- data/lib/restfulie/common/converter/json/base.rb +5 -2
- data/lib/restfulie/common/converter/open_search/descriptor.rb +32 -0
- data/lib/restfulie/common/converter/open_search.rb +16 -0
- data/lib/restfulie/common/converter/xml/base.rb +3 -1
- data/lib/restfulie/common/converter/xml/builder.rb +3 -2
- data/lib/restfulie/common/converter/xml/helpers.rb +4 -4
- data/lib/restfulie/common/converter/xml/link.rb +5 -0
- data/lib/restfulie/common/converter/xml/links.rb +1 -5
- data/lib/restfulie/common/converter.rb +25 -4
- data/lib/restfulie/common/core_ext/hash.rb +6 -0
- data/lib/restfulie/common/links.rb +9 -0
- data/lib/restfulie/common/representation/atom/base.rb +34 -33
- data/lib/restfulie/common/representation/atom/xml.rb +5 -10
- data/lib/restfulie/common/representation/generic.rb +0 -12
- data/lib/restfulie/common/representation/json/keys_as_methods.rb +2 -0
- data/lib/restfulie/common/representation.rb +2 -9
- data/lib/restfulie/common.rb +2 -1
- data/lib/restfulie/server/action_controller/trait/cacheable.rb +81 -0
- data/lib/restfulie/server/action_controller/trait/created.rb +17 -0
- data/lib/restfulie/server/action_controller/trait/save_prior_to_create.rb +13 -0
- data/lib/restfulie/server/action_controller/trait.rb +9 -0
- data/lib/restfulie/server/action_controller.rb +1 -5
- data/lib/restfulie/server/action_view/template_handlers/tokamak.rb +1 -1
- data/lib/restfulie/server.rb +6 -0
- data/lib/restfulie/version.rb +4 -4
- data/lib/restfulie.rb +21 -3
- metadata +37 -26
- data/lib/restfulie/client/ext/xml_ext.rb +0 -4
- data/lib/restfulie/client/http/link_request_builder.rb +0 -16
- data/lib/restfulie/client/http/request_adapter.rb +0 -213
- data/lib/restfulie/client/http/request_builder.rb +0 -114
- data/lib/restfulie/client/http/request_builder_executor.rb +0 -24
- data/lib/restfulie/client/http/request_executor.rb +0 -17
- data/lib/restfulie/client/http/request_follow.rb +0 -42
- data/lib/restfulie/client/http/request_follow_executor.rb +0 -10
- data/lib/restfulie/client/http/request_history.rb +0 -71
- data/lib/restfulie/client/http/request_history_executor.rb +0 -10
- data/lib/restfulie/client/http/request_marshaller.rb +0 -129
- data/lib/restfulie/client/http/request_marshaller_executor.rb +0 -10
- data/lib/restfulie/client/http/response.rb +0 -23
- data/lib/restfulie/client/http/response_handler.rb +0 -67
- data/lib/restfulie/server/action_controller/cacheable_responder.rb +0 -77
- data/lib/restfulie/server/action_controller/created_responder.rb +0 -19
@@ -84,55 +84,56 @@ module Restfulie
|
|
84
84
|
|
85
85
|
# Author have name, and optional uri and email, this describes a person
|
86
86
|
def authors
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
87
|
+
return @authors if @authors
|
88
|
+
|
89
|
+
@authors = TagCollection.new(@doc)
|
90
|
+
@doc.xpath("xmlns:author").each do |author|
|
91
|
+
@authors << Person.new("author", author)
|
92
92
|
end
|
93
|
+
@authors
|
93
94
|
|
94
|
-
return @authors
|
95
95
|
end
|
96
96
|
|
97
97
|
def contributors
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
98
|
+
return @contributors if @contributors
|
99
|
+
|
100
|
+
@contributors = TagCollection.new(@doc)
|
101
|
+
@doc.xpath("xmlns:author").each do |contributor|
|
102
|
+
@contributors << Person.new("contributor", contributor)
|
103
103
|
end
|
104
|
-
|
105
|
-
return @contributor
|
104
|
+
@contributors
|
106
105
|
end
|
107
106
|
|
107
|
+
include Restfulie::Common::Links
|
108
|
+
|
108
109
|
# It has one required attribute, href, and five optional attributes: rel, type, hreflang, title, and length
|
109
110
|
def links
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
end
|
119
|
-
@doc.xpath("xmlns:link").each do |link|
|
120
|
-
@links << Link.new(link)
|
121
|
-
end
|
111
|
+
return @links if @links
|
112
|
+
|
113
|
+
@links = TagCollection.new(@doc) do |array, symbol, *args|
|
114
|
+
linkset = array.select {|link| link.rel == symbol.to_s }
|
115
|
+
unless linkset.empty?
|
116
|
+
linkset.size == 1 ? linkset.first : linkset
|
117
|
+
else
|
118
|
+
nil
|
119
|
+
end
|
122
120
|
end
|
121
|
+
@doc.xpath("xmlns:link").each do |link|
|
122
|
+
@links << Link.new(link)
|
123
|
+
end
|
124
|
+
@links
|
123
125
|
|
124
|
-
return @links
|
125
126
|
end
|
126
127
|
|
127
128
|
def categories
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
end
|
129
|
+
return @categories if @categories
|
130
|
+
|
131
|
+
@categories = TagCollection.new(@doc)
|
132
|
+
@doc.xpath("xmlns:category").each do |category|
|
133
|
+
@categories << Link.new(category)
|
134
|
+
end
|
135
|
+
@categories
|
134
136
|
|
135
|
-
return @categories
|
136
137
|
end
|
137
138
|
end
|
138
139
|
end
|
@@ -39,12 +39,7 @@ module Restfulie
|
|
39
39
|
end
|
40
40
|
|
41
41
|
def method_missing(method)
|
42
|
-
|
43
|
-
unless value
|
44
|
-
super
|
45
|
-
else
|
46
|
-
value
|
47
|
-
end
|
42
|
+
text(method) || super
|
48
43
|
end
|
49
44
|
|
50
45
|
protected
|
@@ -54,12 +49,12 @@ module Restfulie
|
|
54
49
|
end
|
55
50
|
|
56
51
|
def set_text(node_name, value)
|
57
|
-
|
58
|
-
node = create_element(node_name, value)
|
59
|
-
node.parent = @doc
|
60
|
-
else
|
52
|
+
if (node = @doc.at_xpath("xmlns:#{node_name}"))
|
61
53
|
value = value.xmlschema if value.kind_of?(Time) || value.kind_of?(DateTime)
|
62
54
|
node.content = value
|
55
|
+
else
|
56
|
+
node = create_element(node_name, value)
|
57
|
+
node.parent = @doc
|
63
58
|
end
|
64
59
|
end
|
65
60
|
|
@@ -3,15 +3,6 @@ module Restfulie
|
|
3
3
|
module Representation
|
4
4
|
# Unknown representation's unmarshalling on the client side
|
5
5
|
class Generic
|
6
|
-
def self.media_type_name
|
7
|
-
raise Error::RestfulieError.new("Generic representation does not have a specific media type")
|
8
|
-
end
|
9
|
-
|
10
|
-
cattr_reader :headers
|
11
|
-
@@headers = {
|
12
|
-
:get => { },
|
13
|
-
:post => { }
|
14
|
-
}
|
15
6
|
|
16
7
|
# Because there is no media type registered, return the content itself
|
17
8
|
def unmarshal(content)
|
@@ -25,9 +16,6 @@ module Restfulie
|
|
25
16
|
string
|
26
17
|
end
|
27
18
|
|
28
|
-
def prepare_link_for(link)
|
29
|
-
link
|
30
|
-
end
|
31
19
|
end
|
32
20
|
end
|
33
21
|
end
|
@@ -1,10 +1,3 @@
|
|
1
|
-
module Restfulie
|
2
|
-
|
3
|
-
module Representation
|
4
|
-
autoload :Atom, 'restfulie/common/representation/atom'
|
5
|
-
autoload :Generic, 'restfulie/common/representation/generic'
|
6
|
-
autoload :Json, 'restfulie/common/representation/json'
|
7
|
-
autoload :Links, 'restfulie/common/representation/links'
|
8
|
-
end
|
9
|
-
end
|
1
|
+
module Restfulie::Common::Representation
|
2
|
+
Dir["#{File.dirname(__FILE__)}/representation/*.rb"].each {|f| autoload File.basename(f)[0..-4].camelize.to_sym, f }
|
10
3
|
end
|
data/lib/restfulie/common.rb
CHANGED
@@ -4,14 +4,15 @@ require 'uri'
|
|
4
4
|
require 'rubygems'
|
5
5
|
require 'active_support'
|
6
6
|
require 'action_controller'
|
7
|
-
require 'restfulie/common/core_ext'
|
8
7
|
|
9
8
|
module Restfulie
|
10
9
|
module Common
|
11
10
|
autoload :Error, 'restfulie/common/error'
|
11
|
+
autoload :Links, 'restfulie/common/links'
|
12
12
|
autoload :Logger, 'restfulie/common/logger'
|
13
13
|
autoload :Representation, 'restfulie/common/representation'
|
14
14
|
autoload :Converter, 'restfulie/common/converter'
|
15
15
|
end
|
16
16
|
end
|
17
17
|
|
18
|
+
require 'restfulie/common/core_ext'
|
@@ -0,0 +1,81 @@
|
|
1
|
+
class Expires
|
2
|
+
def do_http_cache(responder, headers)
|
3
|
+
if responder.options[:expires_in]
|
4
|
+
headers << "max-age=#{responder.options[:expires_in]}"
|
5
|
+
true
|
6
|
+
else
|
7
|
+
false
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
class LastModifieds
|
13
|
+
# default implementation that will check whether caching can be applied
|
14
|
+
def accepts?(responder)
|
15
|
+
responder.resources.flatten.select do |resource|
|
16
|
+
resource.respond_to?(:updated_at)
|
17
|
+
end &&
|
18
|
+
responder.controller.response.last_modified.nil? &&
|
19
|
+
!new_record?(responder)
|
20
|
+
end
|
21
|
+
|
22
|
+
def do_http_cache(responder, headers)
|
23
|
+
return false unless accepts?(responder)
|
24
|
+
|
25
|
+
timestamps = responder.resources.flatten.select do |resource|
|
26
|
+
resource.respond_to?(:updated_at)
|
27
|
+
end.map do |resource|
|
28
|
+
(resource.updated_at || Time.now).utc
|
29
|
+
end
|
30
|
+
|
31
|
+
timestamp = timestamps.max
|
32
|
+
|
33
|
+
responder.controller.response.last_modified = timestamp if timestamp
|
34
|
+
end
|
35
|
+
|
36
|
+
def new_record?(responder)
|
37
|
+
responder.resource.respond_to?(:new_record?) && responder.resource.new_record?
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
41
|
+
|
42
|
+
module Restfulie::Server::ActionController
|
43
|
+
module Trait
|
44
|
+
module Cacheable
|
45
|
+
|
46
|
+
CACHES = [::Expires.new, ::LastModifieds.new]
|
47
|
+
|
48
|
+
def to_format
|
49
|
+
headers = cache_control_headers
|
50
|
+
cached = CACHES.inject(false) do |cached, cache|
|
51
|
+
cached || cache.do_http_cache(self, headers)
|
52
|
+
end
|
53
|
+
if ::ActionController::Base.perform_caching && cached
|
54
|
+
set_public_cache_control(headers)
|
55
|
+
controller.response.headers["Cache-Control"] = headers.join(', ')
|
56
|
+
fresh = request.fresh?(controller.response)
|
57
|
+
if fresh
|
58
|
+
head :not_modified
|
59
|
+
else
|
60
|
+
super
|
61
|
+
end
|
62
|
+
else
|
63
|
+
super
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
private
|
68
|
+
|
69
|
+
def set_public_cache_control(headers)
|
70
|
+
headers.delete("private")
|
71
|
+
headers.delete("no-cache")
|
72
|
+
headers << "public"
|
73
|
+
end
|
74
|
+
|
75
|
+
def cache_control_headers
|
76
|
+
(controller.response.headers["Cache-Control"] || "").split(",").map {|k| k.strip }
|
77
|
+
end
|
78
|
+
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Restfulie::Server::ActionController
|
2
|
+
module Trait
|
3
|
+
|
4
|
+
# Adds support to answering as a 201 when the resource has been just created
|
5
|
+
module Created
|
6
|
+
|
7
|
+
def to_format
|
8
|
+
if (options[:status] == 201) || (options[:status] == :created)
|
9
|
+
render :status => 201, :location => controller.url_for(resource), :text => ""
|
10
|
+
else
|
11
|
+
super
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Restfulie::Server::ActionController::Trait::SavePriorToCreate
|
2
|
+
def to_format
|
3
|
+
if (options[:status] == 201) || (options[:status] == :created)==201
|
4
|
+
if resource.save
|
5
|
+
super
|
6
|
+
else
|
7
|
+
render :action => "new"
|
8
|
+
end
|
9
|
+
else
|
10
|
+
super
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -2,11 +2,7 @@ module Restfulie
|
|
2
2
|
module Server
|
3
3
|
module ActionController #:nodoc:
|
4
4
|
if defined?(::ActionController) || defined?(::ApplicationController)
|
5
|
-
autoload
|
6
|
-
autoload :CacheableResponder, 'restfulie/server/action_controller/cacheable_responder'
|
7
|
-
autoload :CreatedResponder, 'restfulie/server/action_controller/created_responder'
|
8
|
-
autoload :RestfulResponder, 'restfulie/server/action_controller/restful_responder'
|
9
|
-
autoload :Base, 'restfulie/server/action_controller/base'
|
5
|
+
Dir["#{File.dirname(__FILE__)}/action_controller/*.rb"].each {|f| autoload File.basename(f)[0..-4].camelize.to_sym, f }
|
10
6
|
end
|
11
7
|
end
|
12
8
|
end
|
@@ -6,7 +6,7 @@ module Restfulie
|
|
6
6
|
include ::ActionView::TemplateHandlers::Compilable
|
7
7
|
|
8
8
|
def compile(template)
|
9
|
-
"@restfulie_type_helpers = Restfulie::
|
9
|
+
"@restfulie_type_helpers = Restfulie::Common::Converter.content_type_for(self.response.content_type).helper; " +
|
10
10
|
"extend @restfulie_type_helpers; " +
|
11
11
|
"extend Restfulie::Server::ActionView::Helpers; " +
|
12
12
|
"code_block = lambda { #{template.source} };" +
|
data/lib/restfulie/server.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'respondie'
|
1
2
|
require 'restfulie/common'
|
2
3
|
|
3
4
|
module Restfulie
|
@@ -16,4 +17,9 @@ class ActionController::Base
|
|
16
17
|
def self.restfulie
|
17
18
|
include Restfulie::Server::ActionController::Base
|
18
19
|
end
|
20
|
+
|
21
|
+
def self.use_trait(&block)
|
22
|
+
Respondie::Builder.new("Restfulie::Server::ActionController::Trait::$trait$", self).instance_eval(&block)
|
23
|
+
end
|
24
|
+
|
19
25
|
end
|
data/lib/restfulie/version.rb
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
module Restfulie
|
2
2
|
module VERSION #:nodoc:
|
3
|
-
MAJOR =
|
4
|
-
MINOR =
|
5
|
-
TINY =
|
3
|
+
MAJOR = 1
|
4
|
+
MINOR = 0
|
5
|
+
TINY = 0
|
6
6
|
|
7
|
-
STRING = [MAJOR, MINOR, TINY].join('.')
|
7
|
+
STRING = [MAJOR, MINOR, TINY].join('.') + ".beta1"
|
8
8
|
|
9
9
|
# Restfulie's version
|
10
10
|
def self.to_s
|
data/lib/restfulie.rb
CHANGED
@@ -5,12 +5,30 @@ require 'restfulie/common'
|
|
5
5
|
require 'restfulie/client'
|
6
6
|
require 'restfulie/server'
|
7
7
|
|
8
|
-
# Shortcut to
|
8
|
+
# Shortcut to RestfulieDsl
|
9
9
|
module Restfulie
|
10
|
-
extend Restfulie::Client::EntryPoint
|
11
10
|
|
12
11
|
# creates a new entry point for executing requests
|
13
12
|
def self.at(uri)
|
14
|
-
|
13
|
+
Restfulie.use.at(uri)
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.using(&block)
|
17
|
+
RestfulieUsing.new.instance_eval(&block)
|
18
|
+
end
|
19
|
+
|
20
|
+
def self.use(&block)
|
21
|
+
if block_given?
|
22
|
+
Restfulie::Client::Dsl.new.instance_eval(&block)
|
23
|
+
else
|
24
|
+
Restfulie::Client::Dsl.new
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
|
30
|
+
class RestfulieUsing
|
31
|
+
def method_missing(sym, *args)
|
32
|
+
@current = "Restfulie::Client::HTTP::#{sym.to_s.classify}".constantize.new(@current || Restfulie::Client::HTTP::RequestAdapter.new, *args)
|
15
33
|
end
|
16
34
|
end
|
metadata
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: restfulie
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 299253597
|
5
|
+
prerelease: true
|
6
6
|
segments:
|
7
|
+
- 1
|
8
|
+
- 0
|
7
9
|
- 0
|
8
|
-
-
|
9
|
-
|
10
|
-
version: 0.9.3
|
10
|
+
- beta1
|
11
|
+
version: 1.0.0.beta1
|
11
12
|
platform: ruby
|
12
13
|
authors:
|
13
14
|
- Guilherme Silveira, Caue Guerra, Luis Cipriani, Everton Ribeiro, George Guimaraes, Paulo Ahagon, Several contributors
|
@@ -15,7 +16,7 @@ autorequire:
|
|
15
16
|
bindir: bin
|
16
17
|
cert_chain: []
|
17
18
|
|
18
|
-
date: 2010-
|
19
|
+
date: 2010-10-31 00:00:00 -02:00
|
19
20
|
default_executable:
|
20
21
|
dependencies:
|
21
22
|
- !ruby/object:Gem::Dependency
|
@@ -98,28 +99,30 @@ files:
|
|
98
99
|
- lib/restfulie/client/cache/restrictions.rb
|
99
100
|
- lib/restfulie/client/cache.rb
|
100
101
|
- lib/restfulie/client/configuration.rb
|
102
|
+
- lib/restfulie/client/dsl.rb
|
101
103
|
- lib/restfulie/client/entry_point.rb
|
102
104
|
- lib/restfulie/client/ext/atom_ext.rb
|
103
105
|
- lib/restfulie/client/ext/http_ext.rb
|
104
106
|
- lib/restfulie/client/ext/json_ext.rb
|
105
|
-
- lib/restfulie/client/
|
107
|
+
- lib/restfulie/client/feature/base.rb
|
108
|
+
- lib/restfulie/client/feature/base_request.rb
|
109
|
+
- lib/restfulie/client/feature/cache.rb
|
110
|
+
- lib/restfulie/client/feature/enhance_response.rb
|
111
|
+
- lib/restfulie/client/feature/follow_request.rb
|
112
|
+
- lib/restfulie/client/feature/history.rb
|
113
|
+
- lib/restfulie/client/feature/history_request.rb
|
114
|
+
- lib/restfulie/client/feature/open_search/pattern_matcher.rb
|
115
|
+
- lib/restfulie/client/feature/open_search.rb
|
116
|
+
- lib/restfulie/client/feature/serialize_body.rb
|
117
|
+
- lib/restfulie/client/feature/setup_header.rb
|
118
|
+
- lib/restfulie/client/feature/throw_error.rb
|
119
|
+
- lib/restfulie/client/feature/verb.rb
|
120
|
+
- lib/restfulie/client/feature.rb
|
106
121
|
- lib/restfulie/client/http/cache.rb
|
107
122
|
- lib/restfulie/client/http/error.rb
|
108
|
-
- lib/restfulie/client/http/link_request_builder.rb
|
109
|
-
- lib/restfulie/client/http/request_adapter.rb
|
110
|
-
- lib/restfulie/client/http/request_builder.rb
|
111
|
-
- lib/restfulie/client/http/request_builder_executor.rb
|
112
|
-
- lib/restfulie/client/http/request_executor.rb
|
113
|
-
- lib/restfulie/client/http/request_follow.rb
|
114
|
-
- lib/restfulie/client/http/request_follow_executor.rb
|
115
|
-
- lib/restfulie/client/http/request_history.rb
|
116
|
-
- lib/restfulie/client/http/request_history_executor.rb
|
117
|
-
- lib/restfulie/client/http/request_marshaller.rb
|
118
|
-
- lib/restfulie/client/http/request_marshaller_executor.rb
|
119
|
-
- lib/restfulie/client/http/response.rb
|
120
|
-
- lib/restfulie/client/http/response_handler.rb
|
121
123
|
- lib/restfulie/client/http/response_holder.rb
|
122
124
|
- lib/restfulie/client/http.rb
|
125
|
+
- lib/restfulie/client/master_delegator.rb
|
123
126
|
- lib/restfulie/client/mikyung/concatenator.rb
|
124
127
|
- lib/restfulie/client/mikyung/core.rb
|
125
128
|
- lib/restfulie/client/mikyung/languages/german.rb
|
@@ -135,10 +138,13 @@ files:
|
|
135
138
|
- lib/restfulie/common/converter/atom/builder.rb
|
136
139
|
- lib/restfulie/common/converter/atom/helpers.rb
|
137
140
|
- lib/restfulie/common/converter/atom.rb
|
141
|
+
- lib/restfulie/common/converter/form_url_encoded.rb
|
138
142
|
- lib/restfulie/common/converter/json/base.rb
|
139
143
|
- lib/restfulie/common/converter/json/builder.rb
|
140
144
|
- lib/restfulie/common/converter/json/helpers.rb
|
141
145
|
- lib/restfulie/common/converter/json.rb
|
146
|
+
- lib/restfulie/common/converter/open_search/descriptor.rb
|
147
|
+
- lib/restfulie/common/converter/open_search.rb
|
142
148
|
- lib/restfulie/common/converter/values.rb
|
143
149
|
- lib/restfulie/common/converter/xml/base.rb
|
144
150
|
- lib/restfulie/common/converter/xml/builder.rb
|
@@ -150,6 +156,7 @@ files:
|
|
150
156
|
- lib/restfulie/common/core_ext/hash.rb
|
151
157
|
- lib/restfulie/common/core_ext.rb
|
152
158
|
- lib/restfulie/common/error.rb
|
159
|
+
- lib/restfulie/common/links.rb
|
153
160
|
- lib/restfulie/common/logger.rb
|
154
161
|
- lib/restfulie/common/representation/atom/base.rb
|
155
162
|
- lib/restfulie/common/representation/atom/category.rb
|
@@ -172,11 +179,13 @@ files:
|
|
172
179
|
- lib/restfulie/common/representation.rb
|
173
180
|
- lib/restfulie/common.rb
|
174
181
|
- lib/restfulie/server/action_controller/base.rb
|
175
|
-
- lib/restfulie/server/action_controller/cacheable_responder.rb
|
176
|
-
- lib/restfulie/server/action_controller/created_responder.rb
|
177
182
|
- lib/restfulie/server/action_controller/params_parser.rb
|
178
183
|
- lib/restfulie/server/action_controller/patch.rb
|
179
184
|
- lib/restfulie/server/action_controller/restful_responder.rb
|
185
|
+
- lib/restfulie/server/action_controller/trait/cacheable.rb
|
186
|
+
- lib/restfulie/server/action_controller/trait/created.rb
|
187
|
+
- lib/restfulie/server/action_controller/trait/save_prior_to_create.rb
|
188
|
+
- lib/restfulie/server/action_controller/trait.rb
|
180
189
|
- lib/restfulie/server/action_controller.rb
|
181
190
|
- lib/restfulie/server/action_view/helpers.rb
|
182
191
|
- lib/restfulie/server/action_view/template_handlers/tokamak.rb
|
@@ -216,12 +225,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
216
225
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
217
226
|
none: false
|
218
227
|
requirements:
|
219
|
-
- - "
|
228
|
+
- - ">"
|
220
229
|
- !ruby/object:Gem::Version
|
221
|
-
hash:
|
230
|
+
hash: 25
|
222
231
|
segments:
|
223
|
-
-
|
224
|
-
|
232
|
+
- 1
|
233
|
+
- 3
|
234
|
+
- 1
|
235
|
+
version: 1.3.1
|
225
236
|
requirements: []
|
226
237
|
|
227
238
|
rubyforge_project:
|