- Apache::RPC::Server - A subclass of RPC::XML::Server tuned for mod_perl
- Apache::RPC::Status - A status monitor similar to Apache::Status for RPC
- RPC::XML - A set of classes for core data, message and XML handling
- RPC::XML::Client - An XML-RPC client class
- RPC::XML::Function - Object class for RPC routines that do not check signatures
- RPC::XML::Method - Object encapsulation of server-side RPC methods
- RPC::XML::Parser - A container class for XML::Parser
- RPC::XML::Procedure - Object encapsulation of server-side RPC procedures
- RPC::XML::Server - A sample server implementation based on RPC::XML
- RPC::XML::array in lib/RPC/XML.pm
- RPC::XML::base64 in lib/RPC/XML.pm
- RPC::XML::boolean in lib/RPC/XML.pm
- RPC::XML::datatype in lib/RPC/XML.pm
- RPC::XML::datetime_iso8601 in lib/RPC/XML.pm
- RPC::XML::double in lib/RPC/XML.pm
- RPC::XML::fault in lib/RPC/XML.pm
- RPC::XML::i4 in lib/RPC/XML.pm
- RPC::XML::int in lib/RPC/XML.pm
- RPC::XML::Method in lib/RPC/XML/Procedure.pm
- RPC::XML::request in lib/RPC/XML.pm
- RPC::XML::response in lib/RPC/XML.pm
- RPC::XML::simple_type in lib/RPC/XML.pm
- RPC::XML::string in lib/RPC/XML.pm
- RPC::XML::struct in lib/RPC/XML.pm
Changes for version 0.60
- t/00_load.t: t/01_pod.t: t/02_pod_coverage.t: t/10_data.t: t/11_base64_fh.t: t/15_serialize.t: t/20_parser.t: t/30_method.t: t/40_server.t: t/50_client.t: t/60_net_server.t: Related to the main change of RT ticket #30849, fixes potential problem in the creation of temporary file names if a test script is run directly from the "t" directory. While at it, added a line with the Subversion "Id" keyword and set the "svn:keywords" property on all test scripts. The code-fix is based on suggestions from Jörg Meltzer
- lib/RPC/XML/Client.pm: Per RT ticket #30849, fix problem caused by having colons in temp-file names. Fix largely from patch suggested by Jörg Meltzer
- lib/RPC/XML/Server.pm: Applied a modified form of a patch submitted by Mike Rylander
to make things work under SSL.
- lib/RPC/XML/Server.pm: t/41_server_hang.t: Fixed the bug in RPC::XML::Server::process_request() could lead to an infinite loop if the client shuts down the socket before the full request is sent. Added a test script specific to this bug, to catch it if it reappears.
- lib/RPC/XML.pm: t/10_data.t: Per RT ticket #30042, made a do-nothing branch in RPC::XML::smart_encode actually die with an error when a reference-type is passed in that cannot be converted. Added two tests to cover this, and took the opportunity to convert 10_data.t to Test::More.
- t/40_server.t: t/50_client.t: Applied a patch from Chris Darroch to make the spawning of servers work in some corner-cases that were failing. All that was required was explicit specification of 'localhost' in the instantiation.
- lib/RPC/XML/Parser.pm: t/20_parser.t: Applied a patch from Masatake Daimon (大門正岳) to improve the performance of the parser by reducing the (vast) number of string-concat operations. During this change, re-wrote the parser tests to use Test::More and have better diagnostics.
- lib/RPC/XML/Server.pm: t/40_server.t: Per RT ticket #29351, fixed a bug that caused a server to incorrectly report the location and cause of an XML parsing error in the request. The actual bug and solution were different than initially reported in the ticket.
- lib/RPC/XML.pm: t/10_data.t: Per RT ticket #31818, fix to the XML serialization of double values to conform to the XML-RPC spec, as it does not allow for exponential notation. This also required changes to the tests, as values were no longer being auto-truncated at 5 decimal places. Also finished cleaning up the t/10_data.t test suite with diagnostic messages on the tests that had not previously gotten them.
- lib/RPC/XML.pm: t/20_parser.t: In response to concerns raised by a report of parsing problems, added XML entity encoding for ' and " (' and ") to the base RPC::XML module, and added a test to the parser suite to make sure it is correctly turning all core XML entities back into characters during the parsing process.
- lib/Apache/RPC/Server.pm: lib/RPC/XML/Server.pm: t/40_server.t: RT ticket #34557: Provide access to client-side connection info to methods called on the server, by placing the data from get_peeraddr() (as abstracted through existing methods in HTTP::Daemon::ClientConn and Apache::Connection) into localized keys on the server object, as is already done with the method_name and signature pseudo-keys. Tests added to 40_server.t and docs updated.
- etc/make_method: lib/Apache/RPC/Server.pm: lib/Apache/RPC/Status.pm: lib/RPC/XML/Client.pm: lib/RPC/XML/Function.pm: lib/RPC/XML/Method.pm: lib/RPC/XML/Parser.pm: lib/RPC/XML/Procedure.pm: lib/RPC/XML/Server.pm: lib/RPC/XML.pm: Updated all copyright/redistribution information with current year and correct/current URLs for Artistic and LGPL licenses.