windsor 0.0.7 → 0.0.8

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.
@@ -3,7 +3,7 @@ class WindsorController < ApplicationController
3
3
  rescue_from JSON::ParserError, :with => :unsupported_media_type
4
4
 
5
5
  before_filter :get_resource, :except => [:index, :create]
6
- before_filter :scope, :set_attributes, :check_implemented
6
+ before_filter :view_scope, :create_scope, :set_attributes, :check_implemented
7
7
 
8
8
  attr_accessor :exceptional_attributes
9
9
  attr_accessor :attributes_all_or_none
@@ -17,9 +17,9 @@ class WindsorController < ApplicationController
17
17
  current_page_index = params[:page].to_i - 1
18
18
  offset = @max_page_size * current_page_index
19
19
  end
20
- final_scope = scope.merge(request.query_parameters)
21
- items = model_class.where(final_scope).limit(@max_page_size).offset(offset).to_a
22
- total_items = model_class.where(final_scope).count
20
+ scope = view_scope.merge(request.query_parameters)
21
+ items = model_class.where(scope).limit(@max_page_size).offset(offset).to_a
22
+ total_items = model_class.where(scope).count
23
23
 
24
24
  object = {
25
25
  get_controller_name => items,
@@ -33,7 +33,7 @@ class WindsorController < ApplicationController
33
33
  existing_attributes = enabled_attributes(hashity_hash(model_class.new)).map { |item| item.to_s }
34
34
  request_body = prune_extra_attributes(request_body, existing_attributes)
35
35
 
36
- model_object = model_class.new(request_body.merge(scope))
36
+ model_object = model_class.new(request_body.merge(create_scope))
37
37
  if model_object.save
38
38
  headers["Location"] = get_self_link({"id" => model_object.id})
39
39
  render_json model_object, :created
@@ -185,6 +185,14 @@ class WindsorController < ApplicationController
185
185
  return pagination
186
186
  end
187
187
 
188
+ def view_scope
189
+ {}
190
+ end
191
+
192
+ def create_scope
193
+ {}
194
+ end
195
+
188
196
  private
189
197
 
190
198
  def request_uri
@@ -210,7 +218,7 @@ class WindsorController < ApplicationController
210
218
  end
211
219
 
212
220
  def get_resource
213
- @model_object = model_class.where(scope).find(params[:id])
221
+ @model_object = model_class.where(view_scope).find(params[:id])
214
222
  end
215
223
 
216
224
  def check_implemented
@@ -220,10 +228,6 @@ class WindsorController < ApplicationController
220
228
  end
221
229
  end
222
230
 
223
- def scope
224
- {}
225
- end
226
-
227
231
  def add_link(object, href, rel)
228
232
  unless object['links'].is_a?(Hash)
229
233
  object['links'] = {}
@@ -1,3 +1,3 @@
1
1
  module Windsor
2
- VERSION = "0.0.7"
2
+ VERSION = "0.0.8"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: windsor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -14,7 +14,7 @@ date: 2012-10-24 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rails
17
- requirement: &2160243860 !ruby/object:Gem::Requirement
17
+ requirement: &2168564200 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: 3.1.0
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *2160243860
25
+ version_requirements: *2168564200
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: sqlite3
28
- requirement: &2160242520 !ruby/object:Gem::Requirement
28
+ requirement: &2168560600 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
- version_requirements: *2160242520
36
+ version_requirements: *2168560600
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: rspec
39
- requirement: &2160241120 !ruby/object:Gem::Requirement
39
+ requirement: &2168582240 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,7 +44,7 @@ dependencies:
44
44
  version: '0'
45
45
  type: :development
46
46
  prerelease: false
47
- version_requirements: *2160241120
47
+ version_requirements: *2168582240
48
48
  description: Windsor is a plugin for building RESTful APIs in Rails.
49
49
  email:
50
50
  - sam@samdecesare.com