git-svn-id: https://192.168.0.254/svn/Proyectos.Incam_SGD/tags/3.7.0.2_original@1 eb19766c-00d9-a042-a3a0-45cb8ec72764
75 lines
1.6 KiB
Perl
75 lines
1.6 KiB
Perl
#!/usr/bin/perl -w
|
|
use strict;
|
|
|
|
=head1 Simple SOAP TCP Server
|
|
|
|
Simple SOAP TCP Server with test class (just to check things are working)
|
|
|
|
Before you run this test server you will need some perl classes, namely:
|
|
SOAP::Lite
|
|
Hook::LexWrap (if you want to see some debugging)
|
|
|
|
Flee off to the CPAN if you need them :)
|
|
|
|
To run type 'perl <filename>' and if you dont get any errors, it's time
|
|
to go write some code to connect.
|
|
=cut
|
|
|
|
use SOAP::Transport::TCP qw(trace);
|
|
use Data::Dumper;
|
|
|
|
|
|
#############
|
|
## if you want to see incoming/outgoing raw xml
|
|
## uncomment the following.
|
|
|
|
#use Hook::LexWrap;
|
|
#wrap *IO::SessionData::read, post => \&show_read;
|
|
#wrap *IO::SessionData::write, post => \&show_write;
|
|
|
|
##
|
|
#############
|
|
|
|
|
|
my $daemon = SOAP::Transport::TCP::Server->new(
|
|
LocalAddr => '127.0.0.1',
|
|
LocalPort => '82',
|
|
Listen => 5,
|
|
Reuse => 1
|
|
);
|
|
|
|
# dispatch
|
|
$daemon->dispatch_to('SOAP_Example_Server');
|
|
$daemon->handle;
|
|
|
|
#############
|
|
## callback functions for Hook::LexWrap;
|
|
##
|
|
|
|
# show incoming xml
|
|
sub show_read {
|
|
print $/,'## read ##',$/;
|
|
print Dumper($_[0]);
|
|
}
|
|
|
|
# show outgoing xml
|
|
sub show_write {
|
|
print $/,'## write ##',$/;
|
|
print Dumper($_[0]);
|
|
}
|
|
################################################################################
|
|
|
|
|
|
|
|
################################################################################
|
|
# SOAP_Example_Server
|
|
# Simple test class, method test returns double what you send to it, thats all!
|
|
################################################################################
|
|
package SOAP_Example_Server;
|
|
|
|
sub echoString {
|
|
return $_[1] x 2;
|
|
}
|
|
|
|
1;
|