1 #ifndef Utilities_Utilities_h
2 #define Utilities_Utilities_h
6 #include <boost/program_options.hpp>
21 Utilities(
const std::string& commandName, std::string positionalParameter=std::string(
"") );
31 const std::string& shortName,
32 const std::string& helpEntry );
39 const std::string& shortName,
40 const std::string& helpEntry );
62 void sendError(
const std::string& message );
69 boost::program_options::options_description
m_options;
71 boost::program_options::variables_map
m_values;
79 const std::string& shortName,
80 const std::string& helpEntry){
81 std::stringstream optInfo;
83 if(!shortName.empty()) optInfo <<
","<<shortName;
85 (optInfo.str().c_str(),boost::program_options::value<T>(),helpEntry.c_str());
88 template <>
inline void Utilities::addOption<bool>(
const std::string&
fullName,
89 const std::string& shortName,
90 const std::string& helpEntry){
91 std::stringstream optInfo;
93 if(!shortName.empty()) optInfo <<
","<<shortName;
94 m_options.add_options()
95 (optInfo.str().c_str(),helpEntry.c_str());
105 message <<
"Utilities::getOptionValue: option \"" << fullName <<
"\" is not known by the command.";
111 message <<
"Error: Option \"" << fullName <<
"\" has not been provided.";
std::string getUserValue()
void parseCommand(int argc, char **argv)
virtual ~UtilitiesError()
int run(int argc, char **argv)
std::string getValueIfExists(const std::string &fullName)
UtilitiesError(const std::string &message)
bool m_pluginMgrInitialized
std::string message() const
std::string getPasswordValue()
std::string getDictionaryValue()
std::string getConfigFileValue()
void addOption(const std::string &fullName, const std::string &shortName, const std::string &helpEntry)
std::set< std::string > m_dbSessions
std::string getAuthenticationPathValue()
cond::DbConnection * m_dbConnection
void addAuthenticationOptions()
void addSQLOutputOption()
void addConfigFileOption()
std::string getConnectValue()
void initializePluginManager()
T getOptionValue(const std::string &fullName)
void addDictionaryOption()
Utilities(const std::string &commandName, std::string positionalParameter=std::string(""))
std::string getLogDBValue()
boost::program_options::variables_map m_values
bool hasOptionValue(const std::string &fullName)
void sendError(const std::string &message)
cond::DbSession openDbSession(const std::string &connectionParameterName, bool readOnly=false)
void sendException(const std::string &message)
boost::program_options::options_description m_options
void initializeForDbConnection()
boost::program_options::positional_options_description m_positionalOptions