use POE;
use POE::Component::Server::SOAP;

POE::Component::Server::SOAP->new(
        'ALIAS'         =>      'MySOAP',
        'ADDRESS'       =>      'localhost',
        'PORT'          =>      32080,
);

POE::Session->create(
        'inline_states' =>      {
                '_start'        =>      \&setup_service,
                '_stop'         =>      \&shutdown_service,
                'hi'            =>      \&hi,
        },
);

$poe_kernel->run;
exit 0;

sub setup_service {
        my $kernel = $_[KERNEL];
        $kernel->alias_set( 'Demo' );
        $kernel->post( 'MySOAP', 'ADDMETHOD', 'Demo', 'hi' );
}

sub shutdown_service {
        $_[KERNEL]->post( 'MySOAP', 'DELMETHOD', 'Demo', 'hi');
}

sub hi {
        my $response = $_[ARG0];
        my $params = $response->soapbody;
        $response->content( "Hello" );
        $_[KERNEL]->post( 'MySOAP', 'DONE', $response );
}


1;
