summaryrefslogtreecommitdiffstats
path: root/examples/roo_soap_server.rb
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2017-06-12 03:37:11 -0400
committerLibravatarUnit 193 <unit193@ubuntu.com>2017-06-12 03:37:11 -0400
commit8280a21a23d44aa90177e2bc041d0b8dc8556f4b (patch)
treedadef7ee085c0e990a5070bd41b6a5b98c97f4fd /examples/roo_soap_server.rb
Import Upstream version 2.7.1upstream/2.7.1
Diffstat (limited to 'examples/roo_soap_server.rb')
-rw-r--r--examples/roo_soap_server.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/examples/roo_soap_server.rb b/examples/roo_soap_server.rb
new file mode 100644
index 0000000..0ef6477
--- /dev/null
+++ b/examples/roo_soap_server.rb
@@ -0,0 +1,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