NAME
XML::Compile::SOAP::Daemon::Dancer2 - simple implementation of a WSDL server within Dancer2
SYNOPSIS
package MyDancer2App;
use Dancer2;
use XML::Compile::SOAP::Daemon::Dancer2;
wsdl_endpoint '/calculator', {
wsdl => 'calculator.wsdl',
xsd => [],
implementation_class => 'Calculator',
operations => {
add => sub {
my ( $soap, $data, $dsl ) = @_;
$dsl->error( $dsl->to_dumper( $data ) );
return +{
Result => $data->{parameters}->{x} + $data->{parameters}->{y},
};
},
}
};
DESCRIPTION
XML::Compile::SOAP::Daemon::Dancer2 is a plugin to add a SOAP endpoint to a Dancer2 app
The plugin is Heavily inspired by XML::Compile::SOAP::Daemon::PSGI
The plugin export a keyword wsdl_endpoint, that takes 2 arguments, a route path and an options hashref.
Options available are: * wsdl: name of the wsdl file (under appdir/wsdl) * xsd: an arrayref of xsd file (under appdir/wsdl) * implementation_class: name of class to implement the operations * operations: hashref with soap operation name as key, sub as value * implementation_class : the class needs to do the role XML::Compile::SOAP::Daemon::Dancer2::Role::Implementation
For each operation, define a sub in the implementation class, soapaction_{operation_name}, each sub will be called with the following parameters: $soap, $data, $dsl
operations: each sub will be called with parameters: $soap, $data, $dsl
AUTHOR
Pierre VIGIER <pierre.vigier@gmail.com>
CONTRIBUTORS
Mohamad Hallal https://github.com/mohdhallal
COPYRIGHT
Copyright 2016- Pierre VIGIER
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.