#!/bin/sh # # include environment # . setenv.sh # # specified patterns # inclusions=$1 # # skipped patterns # exclusions=$(xsltproc $EXAMPLES_DIR/exclusions.xsl toolkit.xml) # # generate bespoke wsdl # xsltproc \ --stringparam exclude "$exclusions" \ --stringparam include "$inclusions" \ $EXAMPLES_DIR/examples2wsdl.xsl \ $EXAMPLES_DIR/examples.xml > examples.wsdl # # generate server functions # ruby $SOAP4R_DIR/bin/wsdl2ruby.rb \ --wsdl examples.wsdl \ --type server --force # # implement echo functions # mv defaultServant.rb defaultServant.rb.old perl -nle ' if (/^\s*p \[.*\]\s*$/) { $p = $_; $p =~ s/^\s*p \[(.*)\]\s*$/$1/; } if (/NotImplementedError/) { print " return $p" } else { print } ' < defaultServant.rb.old > defaultServant.rb # # capture databinding code snippets # perl -e ' print "
";
while ()
{
my $line = $_;
if ($line =~ /^\# \{/) {
my ($f, $ns, $type) = split(/[{}\s]+/, $line);
print " ";
print "$type";
print "";
}
#$line =~ s/</sg;
#$line =~ s/>/>/sg;
#$line =~ s/&/&/sg;
print $line;
}
print "";
' < default.rb > snippets.html
#
# to run the service:
#
ruby Service.rb