1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/actionservice/lib/action_service/base.rb
David Heinemeier Hansson e7a2938029 Added Action Service to the repository
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@658 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-18 10:35:25 +00:00

41 lines
1.1 KiB
Ruby

require 'action_service/support/class_inheritable_options'
require 'action_service/support/signature'
module ActionService # :nodoc:
class ActionServiceError < StandardError # :nodoc:
end
# An Action Service object implements a specified API.
#
# Used by controllers operating in _Delegated_ dispatching mode.
#
# ==== Example
#
# class PersonService < ActionService::Base
# service_api PersonAPI
#
# def find_person(criteria)
# Person.find_all [...]
# end
#
# def delete_person(id)
# Person.find_by_id(id).destroy
# end
# end
#
# class PersonAPI < ActionService::API::Base
# api_method :find_person, :expects => [SearchCriteria], :returns => [[Person]]
# api_method :delete_person, :expects => [:int]
# end
#
# class SearchCriteria < ActionStruct::Base
# member :firstname, :string
# member :lastname, :string
# member :email, :string
# end
class Base
# Whether to report exceptions back to the caller in the protocol's exception
# format
class_inheritable_option :service_exception_reporting, true
end
end