33#include "BESVersionInfo.h"
34#include "BESInfoList.h"
35#include "BESInternalError.h"
50 BESInfo(), _inbes(false), _inhandler(false), _info(0)
52 _info = BESInfoList::TheList()->build_info();
55BESVersionInfo::~BESVersionInfo()
57 if (_info)
delete _info;
60void BESVersionInfo::add_library(
const string &name,
const string &vers)
62 add_version(
"library", name, vers);
65void BESVersionInfo::add_module(
const string &name,
const string &vers)
67 add_version(
"module", name, vers);
70void BESVersionInfo::add_service(
const string &name,
const list<string> &vers)
72 map<string, string, std::less<>> props;
74 begin_tag(
"serviceVersion", &props);
75 list<string>::const_iterator i = vers.begin();
76 list<string>::const_iterator e = vers.end();
78 add_tag(
"version", (*i));
80 end_tag(
"serviceVersion");
83void BESVersionInfo::add_version(
const string &type,
const string &name,
const string &vers)
85 map<string, string, std::less<>> attrs;
87 attrs[
"version"] = vers;
88 add_tag(type,
"", &attrs);
100 strm << BESIndent::LMarg <<
"BESVersionInfo::dump - (" << (
void *)
this <<
")" << endl;
102 strm << BESIndent::LMarg <<
"in BES version? " << _inbes << endl;
103 strm << BESIndent::LMarg <<
"in Handler version? " << _inhandler << endl;
105 strm << BESIndent::LMarg <<
"redirection info object:" << endl;
108 BESIndent::UnIndent();
111 strm << BESIndent::LMarg <<
"redirection info object: null" << endl;
114 BESIndent::UnIndent();
BESInfo()
constructs a BESInfo object
virtual void dump(std::ostream &strm) const
Displays debug information about this object.
BESVersionInfo()
constructs a basic text information response object to write version information
void dump(std::ostream &strm) const override
dumps information about this object