summaryrefslogtreecommitdiff
path: root/cpp/src/FreezeScript/DumpDB.cpp
diff options
context:
space:
mode:
authorMatthew Newhook <matthew@zeroc.com>2009-08-07 11:10:57 +0800
committerMatthew Newhook <matthew@zeroc.com>2009-08-07 11:10:57 +0800
commite47e08887c823824bfc36f102c065075737394b1 (patch)
treedcbb175cb6ba3204ac55a06d61d28c488227ab4f /cpp/src/FreezeScript/DumpDB.cpp
parentRevert "4171 - Global namespace pollution" (diff)
downloadice-e47e08887c823824bfc36f102c065075737394b1.tar.bz2
ice-e47e08887c823824bfc36f102c065075737394b1.tar.xz
ice-e47e08887c823824bfc36f102c065075737394b1.zip
Revert "Changes for bug 3962 and 4714"
This reverts commit d38ad95e45c0083d602a43e6d77e6c1599f324fe.
Diffstat (limited to 'cpp/src/FreezeScript/DumpDB.cpp')
-rw-r--r--cpp/src/FreezeScript/DumpDB.cpp102
1 files changed, 41 insertions, 61 deletions
diff --git a/cpp/src/FreezeScript/DumpDB.cpp b/cpp/src/FreezeScript/DumpDB.cpp
index 784f481f8ef..b528837369c 100644
--- a/cpp/src/FreezeScript/DumpDB.cpp
+++ b/cpp/src/FreezeScript/DumpDB.cpp
@@ -77,7 +77,7 @@ private:
}
static void
-usage(const string& n)
+usage(const char* n)
{
cerr << "Usage:\n";
cerr << "\n";
@@ -123,7 +123,7 @@ printCatalogData(const string& dbName, const Freeze::CatalogData& data)
}
static int
-run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
+run(int argc, char** argv, const Ice::CommunicatorPtr& communicator)
{
vector<string> cppArgs;
bool debug;
@@ -136,7 +136,7 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
string valueTypeName;
string selectExpr;
string dbEnvName, dbName;
- const string appName = args[0];
+
IceUtilInternal::Options opts;
opts.addOpt("h", "help");
opts.addOpt("v", "version");
@@ -154,24 +154,24 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
opts.addOpt("", "select", IceUtilInternal::Options::NeedArg);
opts.addOpt("c", "catalog");
- vector<string> noArgs;
+ vector<string> args;
try
{
#if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600)
IceUtil::DummyBCC dummy;
#endif
- noArgs = opts.parse(args);
+ args = opts.parse(argc, (const char**)argv);
}
catch(const IceUtilInternal::BadOptException& e)
{
- cerr << appName << ": " << e.reason << endl;
- usage(appName);
+ cerr << argv[0] << ": " << e.reason << endl;
+ usage(argv[0]);
return EXIT_FAILURE;
}
if(opts.isSet("h"))
{
- usage(appName);
+ usage(argv[0]);
return EXIT_SUCCESS;
}
if(opts.isSet("version"))
@@ -183,19 +183,19 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
{
if(args.empty())
{
- cerr << appName << ": no database environment specified." << endl;
- usage(appName);
+ cerr << argv[0] << ": no database environment specified." << endl;
+ usage(argv[0]);
return EXIT_FAILURE;
}
- else if(noArgs.size() > 2)
+ else if(args.size() > 2)
{
- usage(appName);
+ usage(argv[0]);
return EXIT_FAILURE;
}
try
{
- FreezeScript::CatalogDataMap catalog = FreezeScript::readCatalog(communicator, noArgs[0]);
- if(noArgs.size() == 1)
+ FreezeScript::CatalogDataMap catalog = FreezeScript::readCatalog(communicator, args[0]);
+ if(args.size() == 1)
{
if(catalog.empty())
{
@@ -213,10 +213,10 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
}
else
{
- FreezeScript::CatalogDataMap::const_iterator p = catalog.find(noArgs[1]);
+ FreezeScript::CatalogDataMap::const_iterator p = catalog.find(args[1]);
if(p == catalog.end())
{
- cerr << appName << ": database `" << noArgs[1] << "' not found in environment `" << noArgs[0] << "'."
+ cerr << argv[0] << ": database `" << args[1] << "' not found in environment `" << args[0] << "'."
<< endl;
return EXIT_FAILURE;
}
@@ -229,7 +229,7 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
}
catch(const FreezeScript::FailureException& ex)
{
- cerr << appName << ": " << ex.reason() << endl;
+ cerr << argv[0] << ": " << ex.reason() << endl;
return EXIT_FAILURE;
}
}
@@ -291,35 +291,35 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
selectExpr = opts.optArg("select");
}
- if(outputFile.empty() && noArgs.size() != 2)
+ if(outputFile.empty() && args.size() != 2)
{
- usage(appName);
+ usage(argv[0]);
return EXIT_FAILURE;
}
- if(!noArgs.empty())
+ if(!args.empty())
{
- dbEnvName = noArgs[0];
+ dbEnvName = args[0];
}
- if(noArgs.size() == 2)
+ if(args.size() == 2)
{
- dbName = noArgs[1];
+ dbName = args[1];
}
else
{
- usage(appName);
+ usage(argv[0]);
return EXIT_FAILURE;
}
if(!inputFile.empty() && !selectExpr.empty())
{
- cerr << appName << ": an input file cannot be specified with --select" << endl;
+ cerr << argv[0] << ": an input file cannot be specified with --select" << endl;
return EXIT_FAILURE;
}
Slice::UnitPtr unit = Slice::Unit::createUnit(true, true, ice);
FreezeScript::Destroyer<Slice::UnitPtr> unitD(unit);
- if(!FreezeScript::parseSlice(appName, unit, slice, cppArgs, debug))
+ if(!FreezeScript::parseSlice(argv[0], unit, slice, cppArgs, debug))
{
return EXIT_FAILURE;
}
@@ -337,8 +337,8 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
if((!keyTypeName.empty() && valueTypeName.empty()) || (keyTypeName.empty() && !valueTypeName.empty()))
{
- cerr << appName << ": a key type and a value type must be specified" << endl;
- usage(appName);
+ cerr << argv[0] << ": a key type and a value type must be specified" << endl;
+ usage(argv[0]);
return EXIT_FAILURE;
}
else if(!evictor && keyTypeName.empty() && valueTypeName.empty())
@@ -349,7 +349,7 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
FreezeScript::CatalogDataMap::iterator p = catalog.find(dbName);
if(p == catalog.end())
{
- cerr << appName << ": database `" << dbName << "' not found in catalog." << endl;
+ cerr << argv[0] << ": database `" << dbName << "' not found in catalog." << endl;
cerr << "Current catalog databases:" << endl;
for(p = catalog.begin(); p != catalog.end(); ++p)
{
@@ -372,7 +372,7 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
}
catch(const FreezeScript::FailureException& ex)
{
- cerr << appName << ": " << ex.reason() << endl;
+ cerr << argv[0] << ": " << ex.reason() << endl;
return EXIT_FAILURE;
}
}
@@ -389,7 +389,7 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
l = unit->lookupType(keyTypeName, false);
if(l.empty())
{
- cerr << appName << ": unknown key type `" << keyTypeName << "'" << endl;
+ cerr << argv[0] << ": unknown key type `" << keyTypeName << "'" << endl;
return EXIT_FAILURE;
}
keyType = l.front();
@@ -397,7 +397,7 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
l = unit->lookupType(valueTypeName, false);
if(l.empty())
{
- cerr << appName << ": unknown value type `" << valueTypeName << "'" << endl;
+ cerr << argv[0] << ": unknown value type `" << valueTypeName << "'" << endl;
return EXIT_FAILURE;
}
valueType = l.front();
@@ -419,7 +419,7 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
ofstream of(outputFile.c_str());
if(!of.good())
{
- cerr << appName << ": unable to open file `" << outputFile << "'" << endl;
+ cerr << argv[0] << ": unable to open file `" << outputFile << "'" << endl;
return EXIT_FAILURE;
}
of << descriptors << endl;
@@ -543,7 +543,7 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
}
catch(const DbException& ex)
{
- cerr << appName << ": database error: " << ex.what() << endl;
+ cerr << argv[0] << ": database error: " << ex.what() << endl;
status = EXIT_FAILURE;
}
catch(...)
@@ -558,7 +558,7 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
}
catch(const DbException& ex)
{
- cerr << appName << ": database error: " << ex.what() << endl;
+ cerr << argv[0] << ": database error: " << ex.what() << endl;
}
throw;
}
@@ -573,7 +573,7 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
}
catch(const DbException& ex)
{
- cerr << appName << ": database error: " << ex.what() << endl;
+ cerr << argv[0] << ": database error: " << ex.what() << endl;
status = EXIT_FAILURE;
}
@@ -581,23 +581,19 @@ run(Ice::StringSeq& args, const Ice::CommunicatorPtr& communicator)
}
int
-mainInternal(Ice::StringSeq& args)
+main(int argc, char* argv[])
{
- assert(args.size() > 0);
- const string appName = args[0];
Ice::CommunicatorPtr communicator;
int status = EXIT_SUCCESS;
try
{
- Ice::InitializationData initData;
- initData.properties = Ice::createProperties();
- communicator = Ice::initialize(args, initData);
- status = run(args, communicator);
+ communicator = Ice::initialize(argc, argv);
+ status = run(argc, argv, communicator);
}
catch(const FreezeScript::FailureException& ex)
{
string reason = ex.reason();
- cerr << appName << ": " << reason;
+ cerr << argv[0] << ": " << reason;
if(reason[reason.size() - 1] != '\n')
{
cerr << endl;
@@ -606,7 +602,7 @@ mainInternal(Ice::StringSeq& args)
}
catch(const IceUtil::Exception& ex)
{
- cerr << appName << ": " << ex << endl;
+ cerr << argv[0] << ": " << ex << endl;
return EXIT_FAILURE;
}
@@ -618,22 +614,6 @@ mainInternal(Ice::StringSeq& args)
return status;
}
-#ifdef _WIN32
-
-int
-wmain(int argc, wchar_t* argv[])
-
-#else
-
-int
-main(int argc, char* argv[])
-
-#endif
-{
- Ice::StringSeq args = Ice::argsToStringSeq(argc, argv);
- return mainInternal(args);
-}
-
//
// SliceVisitor
//