summaryrefslogtreecommitdiff
path: root/sample/soap/scopesample/server.cgi
blob: ebe13eb13157a6d4a4eb69b2b983963c39c1d242 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/env ruby

require 'soap/rpc/cgistub'
require 'servant'

class Server < SOAP::RPC::CGIStub
  class DummyServant
    def push(value)
      "Not supported"
    end

    def pop
      "Not supported"
    end
  end

  def initialize(*arg)
    super
    add_rpc_servant(Servant.new, 'http://tempuri.org/requestScopeService')

    # Application scope servant is not supported in CGI environment.
    # See server.rb to support application scope servant.
    dummy = DummyServant.new
    add_method_with_namespace('http://tempuri.org/applicationScopeService', dummy, 'push', 'value')
    add_method_with_namespace('http://tempuri.org/applicationScopeService', dummy, 'pop')
  end
end

status = Server.new('Server', nil).start