summaryrefslogtreecommitdiff
path: root/ndb/src/mgmsrv/InitConfigFileParser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ndb/src/mgmsrv/InitConfigFileParser.cpp')
-rw-r--r--ndb/src/mgmsrv/InitConfigFileParser.cpp19
1 files changed, 12 insertions, 7 deletions
diff --git a/ndb/src/mgmsrv/InitConfigFileParser.cpp b/ndb/src/mgmsrv/InitConfigFileParser.cpp
index fc03561e714..00c094f83ad 100644
--- a/ndb/src/mgmsrv/InitConfigFileParser.cpp
+++ b/ndb/src/mgmsrv/InitConfigFileParser.cpp
@@ -31,8 +31,10 @@ static void require(bool v) { if(!v) abort();}
//****************************************************************************
// Ctor / Dtor
//****************************************************************************
-InitConfigFileParser::InitConfigFileParser(){
+InitConfigFileParser::InitConfigFileParser(FILE * out)
+{
m_info = new ConfigInfo();
+ m_errstream = out ? out : stdout;
}
InitConfigFileParser::~InitConfigFileParser() {
@@ -42,11 +44,12 @@ InitConfigFileParser::~InitConfigFileParser() {
//****************************************************************************
// Read Config File
//****************************************************************************
-InitConfigFileParser::Context::Context(const ConfigInfo * info)
+InitConfigFileParser::Context::Context(const ConfigInfo * info, FILE * out)
: m_userProperties(true), m_configValues(1000, 20) {
m_config = new Properties(true);
m_defaults = new Properties(true);
+ m_errstream = out;
}
InitConfigFileParser::Context::~Context(){
@@ -61,10 +64,10 @@ Config *
InitConfigFileParser::parseConfig(const char * filename) {
FILE * file = fopen(filename, "r");
if(file == 0){
- ndbout << "Error opening file: " << filename << endl;
+ fprintf(m_errstream, "Error opening file: %s\n", filename);
return 0;
}
-
+
Config * ret = parseConfig(file);
fclose(file);
return ret;
@@ -75,7 +78,7 @@ InitConfigFileParser::parseConfig(FILE * file) {
char line[MAX_LINE_LENGTH];
- Context ctx(m_info);
+ Context ctx(m_info, m_errstream);
ctx.m_lineno = 0;
ctx.m_currentSection = 0;
@@ -578,8 +581,9 @@ InitConfigFileParser::Context::reportError(const char * fmt, ...){
va_start(ap, fmt);
if (fmt != 0)
BaseString::vsnprintf(buf, sizeof(buf)-1, fmt, ap);
- ndbout << "Error line " << m_lineno << ": " << buf << endl;
va_end(ap);
+ fprintf(m_errstream, "Error line %d: %s\n",
+ m_lineno, buf);
//m_currentSection->print();
}
@@ -592,8 +596,9 @@ InitConfigFileParser::Context::reportWarning(const char * fmt, ...){
va_start(ap, fmt);
if (fmt != 0)
BaseString::vsnprintf(buf, sizeof(buf)-1, fmt, ap);
- ndbout << "Warning line " << m_lineno << ": " << buf << endl;
va_end(ap);
+ fprintf(m_errstream, "Warning line %d: %s\n",
+ m_lineno, buf);
}
#include <my_sys.h>