Sha256: 3507dd1b4c08745c23415281a5cecbbbd9d7bf76320bc334e1d92dd7469aafbb
Contents?: true
Size: 835 Bytes
Versions: 1
Compression:
Stored size: 835 Bytes
Contents
module Relax class Action include Contextable attr_reader :name def initialize(endpoint, name, options, &block) @endpoint = endpoint @name = name @options = options extend_context(endpoint) context.evaluate(&block) if block_given? end def execute(values, credentials, *args) args.unshift(values) if values instance = Instance.new(*args) response = performer(instance, credentials).perform context.parse(response) end def method @options[:method] || :get end private :method def url [@endpoint.url, @options[:url]].join end private :url def performer(instance, credentials) values = instance.values(context) Performer.new(method, url, values, credentials) end private :performer end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
relax-0.1.0 | lib/relax/action.rb |