Class: Dao::Context
- Inherits:
-
Object
- Object
- Dao::Context
- Defined in:
- lib/dao/api/context.rb
Constant Summary collapse
- Attrs =
%w( api path route endpoint params validator errors status form result data args )
Class Method Summary collapse
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(api, path, route, endpoint, params, *args) ⇒ Context
constructor
A new instance of Context.
Constructor Details
#initialize(api, path, route, endpoint, params, *args) ⇒ Context
Returns a new instance of Context.
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/dao/api/context.rb', line 22 def initialize(api, path, route, endpoint, params, *args) @api = api @path = path @route = route @endpoint = endpoint @params = Params.new @params.update(params) @params.path = @path @params.route = @route @form = @params.form @validator = Validator.new(@params) @validator.validations_search_path.unshift(@api.class) @validations = @validator.validations @params.validator = @validator @errors = @validator.errors @status = @validator.status @result = Result.new @result.path = @path @result.route = @route @result.status = @status @result.mode = @api.mode @result.params = @params @result.errors = @params.errors @data = @result.data @args = @endpoint.arity < 1 ? [@params, @result] : [@params, @result].slice(0, @endpoint.arity) end |
Class Method Details
.for(*args, &block) ⇒ Object
18 19 20 |
# File 'lib/dao/api/context.rb', line 18 def Context.for(*args, &block) new(*args, &block) end |
Instance Method Details
#call ⇒ Object
56 57 58 |
# File 'lib/dao/api/context.rb', line 56 def call @api.instance_exec(*@args, &@endpoint) end |