NAME
XML::Compile::Operation - base-class for possible interactions
INHERITANCE
XML::Compile::Operation is extended by
XML::Compile::SOAP11::Operation
SYNOPSIS
# created by XML::Compile::WSDL11
my $op = $wsdl->operation('GetStockPrices');
DESCRIPTION
These objects are created by XML::Compile::WSDL11, grouping information about a certain specific message interchange between a client and a server.
METHODS
Constructors
XML::Compile::Operation->new(OPTIONS)
Option --Default
action undef
endpoints []
kin <required>
nam <required>
schemas <required>
transport 'HTTP'
. action => STRING
Some string which is refering to the action which is taken. For SOAP protocols, this defines the soapAction header.
. endpoints => ADDRESS|ARRAY
Where to contact the server.
. kin => d
This returns the type of operation this is. There are four kinds, which are returned as strings one-way
, request-response
, sollicit-response
, and notification
. The latter two are initiated by a server, the former two by a client.
. nam => e
. schemas => XML::Compile::Cache
. transport => URI|'HTTP'
HTTP
is short for http://schemas.xmlsoap.org/soap/http/
, which is a constant to indicate that transport should use the HyperText Transfer Protocol.
Accessors
$obj->action
$obj->clientClass
Returns the class name which implements the Client side for this protocol.
$obj->endPoints
Returns the list of alternative URLs for the end-point, which should be defined within the service's port declaration.
$obj->kind
$obj->name
$obj->schemas
$obj->serverClass
Returns the class name which implements the Server side for this protocol.
$obj->version
Handlers
$obj->compileClient(OPTIONS)
Returns one CODE reference which handles the conversion from a perl data-structure into a request message, the transmission of the request, the receipt of the answer, and the decoding of that answer into a Perl data-structure.
$obj->compileHandler(OPTIONS)
Returns a code reference which translates in incoming XML message into Perl a data-structure, then calls the callback. The result of the callback is encoded from Perl into XML and returned.
Option --Default
callback <required>
. callback => CODE
$obj->compileTransporter(OPTIONS)
Option --Default
endpoint <from WSDL>
transport_hook undef
transporter <created>
. endpoint => URI
Overrule the destination address.
. transport_hook => CODE
Passed to XML::Compile::Transport::compileClient(hook). Can be used to create off-line tests and last resort work-arounds. See the DETAILs chapter in the XML::Compile::Transport manual page.
. transporter => CODE
The routine which will be used to exchange the data with the server. This code is created by an XML::Compile::Transport::compileClient() extension. By default, a transporter compatible to the protocol is created. However, in most cases you want to reuse one (HTTP1.1) connection to a server.
Helpers
XML::Compile::Operation->register(URI, ENVNS)
Declare an operation type, but WSDL specific URI and envelope namespace.
SEE ALSO
This module is part of XML-Compile-SOAP distribution version 2.01, built on February 12, 2009. Website: http://perl.overmeer.net/xml-compile/
All modules in this suite: XML::Compile, XML::Compile::SOAP, XML::Compile::SOAP12, XML::Compile::SOAP::Daemon, XML::Compile::Tester, XML::Compile::Cache, XML::Compile::Dumper, XML::Rewrite, and XML::LibXML::Simple.
Please post questions or ideas to the mailinglist at http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/xml-compile For life contact with other developers, visit the #xml-compile
channel on irc.perl.org
.
LICENSE
Copyrights 2007-2009 by Mark Overmeer. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html