bes Updated for version 3.21.1
The Backend Server (BES) is the lower two tiers of the Hyrax data server
|
represents an xml formatted response object More...
#include <BESXMLInfo.h>
Public Member Functions | |
void | add_break (unsigned long num_breaks) override |
add a line break to the information | |
void | add_data (const std::string &s) override |
add data to this informational object. If buffering is not set then the information is output directly to the output stream. | |
void | add_data_from_file (const std::string &key, const std::string &name) override |
add data from a file to the informational object | |
virtual void | add_exception (const BESError &e, const std::string &admin) |
add exception information to this informational object | |
void | add_space (unsigned long num_spaces) override |
add a space to the informational response | |
void | add_tag (const std::string &tag_name, const std::string &tag_data, std::map< std::string, std::string, std::less<> > *attrs=nullptr) override |
add tagged information to the informational response | |
void | begin_response (const std::string &response_name, BESDataHandlerInterface &dhi) override |
begin the informational response | |
void | begin_response (const std::string &response_name, std::map< std::string, std::string, std::less<> > *attrs, BESDataHandlerInterface &dhi) override |
begin the informational response | |
void | begin_tag (const std::string &tag_name, std::map< std::string, std::string, std::less<> > *attrs=nullptr) override |
begin a tagged part of the information, information to follow | |
BESXMLInfo () | |
constructs an informational response object as an xml document | |
void | dump (std::ostream &strm) const override |
dumps information about this object | |
void | end_response () override |
end the response | |
void | end_tag (const std::string &tag_name) override |
end a tagged part of the informational response | |
virtual bool | is_buffered () |
return whether the information is to be buffered or not. | |
void | print (std::ostream &strm) override |
print the information from this informational object to the specified stream | |
void | transmit (BESTransmitter *transmitter, BESDataHandlerInterface &dhi) override |
transmit the text information as text | |
Static Public Member Functions | |
static BESInfo * | BuildXMLInfo (const std::string &info_type) |
Protected Member Functions | |
void | begin_tag (const std::string &tag_name, const std::string &ns, const std::string &uri, std::map< std::string, std::string, std::less<> > *attrs) |
begin a tagged part of the information, information to follow | |
Protected Attributes | |
bool | _buffered |
std::string | _response_name |
bool | _response_started |
std::ostream * | _strm |
bool | _strm_owned |
std::stack< std::string > | _tags |
represents an xml formatted response object
An informational response object that is formated as an XML document.
Definition at line 48 of file BESXMLInfo.h.
BESXMLInfo::BESXMLInfo | ( | ) |
constructs an informational response object as an xml document
Definition at line 54 of file BESXMLInfo.cc.
|
override |
Definition at line 59 of file BESXMLInfo.cc.
|
overridevirtual |
add a line break to the information
num_breaks | the number of line breaks to add to the information |
Implements BESInfo.
Definition at line 447 of file BESXMLInfo.cc.
|
overridevirtual |
add data to this informational object. If buffering is not set then the information is output directly to the output stream.
s | information to be added to this informational response object |
Reimplemented from BESInfo.
Definition at line 456 of file BESXMLInfo.cc.
|
overridevirtual |
add data from a file to the informational object
This method simply adds a .XML to the end of the key and passes the request on up to the BESInfo parent class.
key | Key from the initialization file specifying the file to be |
name | A description of what is the information being loaded |
Reimplemented from BESInfo.
Definition at line 477 of file BESXMLInfo.cc.
|
virtualinherited |
add exception information to this informational object
Exception information is added differently to different informational objects, such as html, xml, plain text. But, using the other methods of this class we can take care of exceptions here.
e | The exception to add to the informational response object |
admin | The contact information for the person responsible for this error |
Reimplemented in BESVersionInfo.
Definition at line 221 of file BESInfo.cc.
|
overridevirtual |
add a space to the informational response
num_spaces | the number of spaces to add to the information |
Implements BESInfo.
Definition at line 434 of file BESXMLInfo.cc.
|
overridevirtual |
add tagged information to the informational response
tag_name | name of the tag to be added to the response |
tag_data | information describing the tag |
attrs | map of attributes to add to the tag |
Implements BESInfo.
Definition at line 281 of file BESXMLInfo.cc.
|
overridevirtual |
begin the informational response
This will add the response name as well as the <response> tag to the informational response object
response_name | name of the response this information represents |
dhi | information about the request and response |
Reimplemented from BESInfo.
Definition at line 96 of file BESXMLInfo.cc.
|
overridevirtual |
begin the informational response
This will add the response name as well as the <response> tag to the informational response object
response_name | name of the response this information represents |
dhi | information about the request and response |
Reimplemented from BESInfo.
Definition at line 110 of file BESXMLInfo.cc.
|
protected |
begin a tagged part of the information, information to follow
tag_name | name of the tag to begin |
ns | namespace name to include in the tag |
uri | namespace uri |
attrs | map of attributes to begin the tag with |
Definition at line 346 of file BESXMLInfo.cc.
|
overridevirtual |
begin a tagged part of the information, information to follow
tag_name | name of the tag to begin |
attrs | map of attributes to begin the tag with |
Reimplemented from BESInfo.
Definition at line 334 of file BESXMLInfo.cc.
|
static |
Definition at line 534 of file BESXMLInfo.cc.
|
overridevirtual |
dumps information about this object
Displays the pointer value of this instance along with information about this XML informational object.
strm | C++ i/o stream to dump the information to |
Reimplemented from BESInfo.
Definition at line 525 of file BESXMLInfo.cc.
|
overridevirtual |
end the response
Add the terminating tags for the response and for the response name. If there are still tags that have not been closed then an exception is thrown.
Reimplemented from BESInfo.
Definition at line 227 of file BESXMLInfo.cc.
|
overridevirtual |
end a tagged part of the informational response
If the named tag is not the current tag then an error is thrown.
tag_name | name of the tag to end |
Reimplemented from BESInfo.
Definition at line 402 of file BESXMLInfo.cc.
|
inlinevirtualinherited |
|
overridevirtual |
print the information from this informational object to the specified stream
strm | output to this stream |
Reimplemented from BESInfo.
Definition at line 510 of file BESXMLInfo.cc.
|
overridevirtual |
transmit the text information as text
use the send_text method on the transmitter to transmit the information back to the client.
transmitter | The type of transmitter to use to transmit the info |
dhi | information to help with the transmission |
Implements BESInfo.
Definition at line 497 of file BESXMLInfo.cc.