aboutsummaryrefslogtreecommitdiffstats
path: root/actionwebservice/lib/action_web_service/dispatcher/action_controller_dispatcher.rb
diff options
context:
space:
mode:
authorLeon Breedt <bitserf@gmail.com>2005-06-25 06:27:39 +0000
committerLeon Breedt <bitserf@gmail.com>2005-06-25 06:27:39 +0000
commitebb6fb09280f828258432223fd543de9dfda6370 (patch)
tree27a5aba70164b1a9d0264d8c04b4df14f49317e5 /actionwebservice/lib/action_web_service/dispatcher/action_controller_dispatcher.rb
parentaf33a6a6b193f4470d2c072d6fa197b72c74001b (diff)
downloadrails-ebb6fb09280f828258432223fd543de9dfda6370.tar.gz
rails-ebb6fb09280f828258432223fd543de9dfda6370.tar.bz2
rails-ebb6fb09280f828258432223fd543de9dfda6370.zip
fix WSDL generation, change the way protocols are instantiated, and add
the ability to override the namespace used in WSDL instead of always forcing 'urn:ActionWebService' git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1501 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionwebservice/lib/action_web_service/dispatcher/action_controller_dispatcher.rb')
-rw-r--r--actionwebservice/lib/action_web_service/dispatcher/action_controller_dispatcher.rb7
1 files changed, 4 insertions, 3 deletions
diff --git a/actionwebservice/lib/action_web_service/dispatcher/action_controller_dispatcher.rb b/actionwebservice/lib/action_web_service/dispatcher/action_controller_dispatcher.rb
index 21e3ccedbf..d3d74be289 100644
--- a/actionwebservice/lib/action_web_service/dispatcher/action_controller_dispatcher.rb
+++ b/actionwebservice/lib/action_web_service/dispatcher/action_controller_dispatcher.rb
@@ -6,9 +6,11 @@ module ActionWebService # :nodoc:
module ActionController # :nodoc:
def self.append_features(base) # :nodoc:
super
+ base.extend(ClassMethods)
base.class_eval do
class << self
alias_method :inherited_without_action_controller, :inherited
+ alias_method :inherited, :inherited_with_action_controller
end
alias_method :web_service_direct_invoke_without_controller, :web_service_direct_invoke
end
@@ -24,12 +26,11 @@ module ActionWebService # :nodoc:
klass.class_eval 'def api; dispatch_web_service_request; end'
end
end
- base.extend(ClassMethods)
base.send(:include, ActionWebService::Dispatcher::ActionController::InstanceMethods)
end
module ClassMethods # :nodoc:
- def inherited(child)
+ def inherited_with_action_controller(child)
inherited_without_action_controller(child)
child.send(:include, ActionWebService::Dispatcher::ActionController::WsdlAction)
end
@@ -174,7 +175,7 @@ module ActionWebService # :nodoc:
xml = ''
dispatching_mode = web_service_dispatching_mode
global_service_name = wsdl_service_name
- namespace = 'urn:ActionWebService'
+ namespace = wsdl_namespace || 'urn:ActionWebService'
soap_action_base = "/#{controller_name}"
marshaler = ActionWebService::Protocol::Soap::SoapMarshaler.new(namespace)