LLFilterSD2XMLRPCResponse Class Reference

Filter from serialized LLSD to an XMLRPC response. More...

#include <llfiltersd2xmlrpc.h>

Inheritance diagram for LLFilterSD2XMLRPCResponse:

Inheritance graph
[legend]
Collaboration diagram for LLFilterSD2XMLRPCResponse:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 LLFilterSD2XMLRPCResponse ()
virtual ~LLFilterSD2XMLRPCResponse ()

Protected Member Functions

virtual EStatus process_impl (const LLChannelDescriptors &channels, buffer_ptr_t &buffer, bool &eos, LLSD &context, LLPumpIO *pump)
 Process the data in buffer.

Detailed Description

Filter from serialized LLSD to an XMLRPC response.

This class filters a serialized LLSD object to an xmlrpc repsonse. Since resonses are limited to a single param, the xmlrprc response only serializes it as one object. This class correctly handles normal llsd responses as well as llsd rpc faults.

For example, if given: {'response':[ i200, r3.4, {"foo":"bar"} ]} Would generate: <?xml version="1.0"?> <methodResponse><params><array><data>

<int>200</int>

<double>3.4</double>

<struct><member> <name>foo</name>

<string>bar</string>

</member> </struct>

</data></array>

</params></methodResponse>

Definition at line 90 of file llfiltersd2xmlrpc.h.


Constructor & Destructor Documentation

LLFilterSD2XMLRPCResponse::LLFilterSD2XMLRPCResponse (  ) 

LLFilterSD2XMLRPCResponse

Definition at line 307 of file llfiltersd2xmlrpc.cpp.

LLFilterSD2XMLRPCResponse::~LLFilterSD2XMLRPCResponse (  )  [virtual]

Definition at line 311 of file llfiltersd2xmlrpc.cpp.


Member Function Documentation

LLIOPipe::EStatus LLFilterSD2XMLRPCResponse::process_impl ( const LLChannelDescriptors channels,
buffer_ptr_t buffer,
bool &  eos,
LLSD context,
LLPumpIO pump 
) [protected, virtual]

Process the data in buffer.

Definition at line 317 of file llfiltersd2xmlrpc.cpp.

References DEFAULT_PRECISION, LLSDSerialize::fromNotation(), llendl, llwarns, PUMP_DEBUG, tut::sd(), LLIOPipe::STATUS_BREAK, LLIOPipe::STATUS_DONE, LLIOPipe::STATUS_ERROR, LLFilterSD2XMLRPC::streamOut(), xml_escape_string(), XML_HEADER, XMLRPC_FAULT_1, XMLRPC_FAULT_2, XMLRPC_FAULT_3, XMLRPC_METHOD_RESPONSE_FOOTER, XMLRPC_METHOD_RESPONSE_HEADER, XMLRPC_RESPONSE_FOOTER, and XMLRPC_RESPONSE_HEADER.


The documentation for this class was generated from the following files:
Generated on Thu Jul 1 06:11:16 2010 for Second Life Viewer by  doxygen 1.4.7