bes Updated for version 3.20.13
BESVersionInfo Class Reference

#include <BESVersionInfo.h>

Collaboration diagram for BESVersionInfo:
Collaboration graph

Public Member Functions

virtual void add_break (unsigned long num_breaks)
 
virtual void add_data (const std::string &s)
 add data to this informational object. If buffering is not set then the information is output directly to the output stream.
 
virtual void add_data_from_file (const std::string &key, const std::string &name)
 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
 
virtual void add_library (const std::string &n, const std::string &v)
 
virtual void add_module (const std::string &n, const std::string &v)
 
virtual void add_service (const std::string &n, const std::list< std::string > &vers)
 
virtual void add_space (unsigned long num_spaces)
 
virtual void add_tag (const std::string &tag_name, const std::string &tag_data, std::map< std::string, std::string > *attrs=0)
 
virtual void begin_response (const std::string &response_name, BESDataHandlerInterface &dhi)
 begin the informational response
 
virtual void begin_response (const std::string &response_name, std::map< std::string, std::string > *attrs, BESDataHandlerInterface &dhi)
 begin the informational response
 
virtual void begin_tag (const std::string &tag_name, std::map< std::string, std::string > *attrs=0)
 
 BESVersionInfo ()
 constructs a basic text information response object to write version information
 
virtual void dump (std::ostream &strm) const
 dumps information about this object
 
virtual void end_response ()
 
virtual void end_tag (const std::string &tag_name)
 
virtual bool is_buffered ()
 return whether the information is to be buffered or not.
 
virtual void print (std::ostream &strm)
 print the information from this informational object to the specified stream
 
virtual void transmit (BESTransmitter *transmitter, BESDataHandlerInterface &dhi)
 transmit the informational object
 

Protected Attributes

bool _buffered
 
std::string _response_name
 
bool _response_started
 
std::ostream * _strm
 
bool _strm_owned
 
std::stack< std::string > _tags
 

Detailed Description

brief represents simple text information in a response object, such as version and help information.

Uses the default add_data and print methods, where the print method, if the response is going to a browser, sets the MIME type to text.

See also
BESXMLInfo
BESResponseObject

Definition at line 47 of file BESVersionInfo.h.

Constructor & Destructor Documentation

◆ BESVersionInfo()

BESVersionInfo::BESVersionInfo ( )

constructs a basic text information response object to write version information

See also
BESXMLInfo
BESResponseObject

Definition at line 49 of file BESVersionInfo.cc.

◆ ~BESVersionInfo()

BESVersionInfo::~BESVersionInfo ( )
virtual

Definition at line 55 of file BESVersionInfo.cc.

Member Function Documentation

◆ add_break()

virtual void BESVersionInfo::add_break ( unsigned long  num_breaks)
inlinevirtual

Implements BESInfo.

Definition at line 91 of file BESVersionInfo.h.

◆ add_data()

virtual void BESVersionInfo::add_data ( const std::string &  s)
inlinevirtual

add data to this informational object. If buffering is not set then the information is output directly to the output stream.

Parameters
sinformation to be added to this informational response object

Reimplemented from BESInfo.

Definition at line 83 of file BESVersionInfo.h.

◆ add_data_from_file()

virtual void BESVersionInfo::add_data_from_file ( const std::string &  key,
const std::string &  name 
)
inlinevirtual

add data from a file to the informational object.

Adds data from a file to the informational object using the file specified by the passed key string. The key is found from the bes configuration file.

If the key does not exist in the initialization file then this information is added to the informational object, no excetion is thrown.

If the file does not exist then this information is added to the informational object, no exception is thrown.

Parameters
keyKey from the initialization file specifying the file to be
nameA description of what is the information being loaded

Reimplemented from BESInfo.

Definition at line 95 of file BESVersionInfo.h.

◆ add_exception()

virtual void BESVersionInfo::add_exception ( const BESError e,
const std::string &  admin 
)
inlinevirtual

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.

Parameters
eThe exception to add to the informational response object
adminThe contact information for the person responsible for this error

Reimplemented from BESInfo.

Definition at line 99 of file BESVersionInfo.h.

◆ add_library()

void BESVersionInfo::add_library ( const std::string &  n,
const std::string &  v 
)
virtual

Definition at line 60 of file BESVersionInfo.cc.

◆ add_module()

void BESVersionInfo::add_module ( const std::string &  n,
const std::string &  v 
)
virtual

Definition at line 65 of file BESVersionInfo.cc.

◆ add_service()

void BESVersionInfo::add_service ( const std::string &  n,
const std::list< std::string > &  vers 
)
virtual

Definition at line 70 of file BESVersionInfo.cc.

◆ add_space()

virtual void BESVersionInfo::add_space ( unsigned long  num_spaces)
inlinevirtual

Implements BESInfo.

Definition at line 87 of file BESVersionInfo.h.

◆ add_tag()

virtual void BESVersionInfo::add_tag ( const std::string &  tag_name,
const std::string &  tag_data,
std::map< std::string, std::string > *  attrs = 0 
)
inlinevirtual

Implements BESInfo.

Definition at line 70 of file BESVersionInfo.h.

◆ begin_response() [1/2]

virtual void BESVersionInfo::begin_response ( const std::string &  response_name,
BESDataHandlerInterface dhi 
)
inlinevirtual

begin the informational response

basic setup of the response from abstract class

Parameters
response_namename of the response this information represents
dhiinformation about the request and response

Reimplemented from BESInfo.

Definition at line 61 of file BESVersionInfo.h.

◆ begin_response() [2/2]

void BESInfo::begin_response ( const std::string &  response_name,
std::map< std::string, std::string > *  attrs,
BESDataHandlerInterface dhi 
)
virtualinherited

begin the informational response

basic setup of the response from abstract class

Parameters
response_namename of the response this information represents
dhiinformation about the request and response

Reimplemented in BESXMLInfo.

Definition at line 111 of file BESInfo.cc.

◆ begin_tag()

virtual void BESVersionInfo::begin_tag ( const std::string &  tag_name,
std::map< std::string, std::string > *  attrs = 0 
)
inlinevirtual

Reimplemented from BESInfo.

Definition at line 74 of file BESVersionInfo.h.

◆ dump()

void BESVersionInfo::dump ( std::ostream &  strm) const
virtual

dumps information about this object

Displays the pointer value of this instance along with information about this version information object

Parameters
strmC++ i/o stream to dump the information to

Reimplemented from BESInfo.

Definition at line 98 of file BESVersionInfo.cc.

◆ end_response()

virtual void BESVersionInfo::end_response ( )
inlinevirtual

Reimplemented from BESInfo.

Definition at line 65 of file BESVersionInfo.h.

◆ end_tag()

virtual void BESVersionInfo::end_tag ( const std::string &  tag_name)
inlinevirtual

Reimplemented from BESInfo.

Definition at line 78 of file BESVersionInfo.h.

◆ is_buffered()

virtual bool BESInfo::is_buffered ( )
inlinevirtualinherited

return whether the information is to be buffered or not.

Returns
true if information is buffered, false if not

Definition at line 111 of file BESInfo.h.

◆ print()

virtual void BESVersionInfo::print ( std::ostream &  strm)
inlinevirtual

print the information from this informational object to the specified stream

If the information was not buffered then this method does nothing, otherwise the information is output to the specified ostream.

Parameters
strmoutput to this file descriptor if information buffered.

Reimplemented from BESInfo.

Definition at line 107 of file BESVersionInfo.h.

◆ transmit()

virtual void BESVersionInfo::transmit ( BESTransmitter transmitter,
BESDataHandlerInterface dhi 
)
inlinevirtual

transmit the informational object

The derived informational object knows how it needs to be transmitted. Does it need to be sent as html? As text? As something else?

Parameters
transmitterThe type of transmitter to use to transmit the info
dhiinformation to help with the transmission

Implements BESInfo.

Definition at line 103 of file BESVersionInfo.h.

Member Data Documentation

◆ _buffered

bool BESInfo::_buffered
protectedinherited

Definition at line 67 of file BESInfo.h.

◆ _response_name

std::string BESInfo::_response_name
protectedinherited

Definition at line 71 of file BESInfo.h.

◆ _response_started

bool BESInfo::_response_started
protectedinherited

Definition at line 68 of file BESInfo.h.

◆ _strm

std::ostream* BESInfo::_strm
protectedinherited

Definition at line 65 of file BESInfo.h.

◆ _strm_owned

bool BESInfo::_strm_owned
protectedinherited

Definition at line 66 of file BESInfo.h.

◆ _tags

std::stack<std::string> BESInfo::_tags
protectedinherited

Definition at line 70 of file BESInfo.h.


The documentation for this class was generated from the following files: