File: roo_soap_server.rb

package info (click to toggle)
ruby-roo 3.0.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 8,216 kB
  • sloc: ruby: 6,529; xml: 88; makefile: 6
file content (26 lines) | stat: -rw-r--r-- 851 bytes parent folder | download | duplicates (5)
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
require 'roo'
require 'soap/rpc/standaloneServer'

NS = 'spreadsheetserver' # name of your service = namespace
class Server2 < SOAP::RPC::StandaloneServer
  def on_init
    spreadsheet = OpenOffice.new('./Ferien-de.ods')
    add_method(spreadsheet, 'cell', 'row', 'col')
    add_method(spreadsheet, 'officeversion')
    add_method(spreadsheet, 'first_row')
    add_method(spreadsheet, 'last_row')
    add_method(spreadsheet, 'first_column')
    add_method(spreadsheet, 'last_column')
    add_method(spreadsheet, 'sheets')
    # add_method(spreadsheet, 'default_sheet=', 's')
    # method with '...=' did not work? alias method 'set_default_sheet' created
    add_method(spreadsheet, 'set_default_sheet', 's')
  end
end

PORT = 12_321
puts "serving at port #{PORT}"
svr = Server2.new('Roo', NS, '0.0.0.0', PORT)

trap('INT') { svr.shutdown }
svr.start