diff options
author | Mark Spruiell <mes@zeroc.com> | 2004-04-23 19:27:48 +0000 |
---|---|---|
committer | Mark Spruiell <mes@zeroc.com> | 2004-04-23 19:27:48 +0000 |
commit | 537d42cd60f96f3bc81f2e3edde22ca2241b1470 (patch) | |
tree | c58533488ea04fda84e70525f87bbef83a212d1b /cpp/src/FreezeScript/DumpDescriptors.cpp | |
parent | more error checking (diff) | |
download | ice-537d42cd60f96f3bc81f2e3edde22ca2241b1470.tar.bz2 ice-537d42cd60f96f3bc81f2e3edde22ca2241b1470.tar.xz ice-537d42cd60f96f3bc81f2e3edde22ca2241b1470.zip |
more error handling; make facet name accessible to <record>
Diffstat (limited to 'cpp/src/FreezeScript/DumpDescriptors.cpp')
-rw-r--r-- | cpp/src/FreezeScript/DumpDescriptors.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/cpp/src/FreezeScript/DumpDescriptors.cpp b/cpp/src/FreezeScript/DumpDescriptors.cpp index ffc30911812..bcc46d72f0d 100644 --- a/cpp/src/FreezeScript/DumpDescriptors.cpp +++ b/cpp/src/FreezeScript/DumpDescriptors.cpp @@ -88,6 +88,7 @@ struct ExecuteInfo Ice::CommunicatorPtr communicator; Db* db; DbTxn* txn; + string facet; SymbolTablePtr symbolTable; DumpMap dumpMap; Slice::TypePtr keyType; @@ -1283,6 +1284,8 @@ FreezeScript::RecordDescriptor::execute(const SymbolTablePtr& sym, ExecuteInfo* Destroyer<DataPtr> keyDataDestroyer(keyData); DataPtr valueData = _factory->create(info->valueType, true); Destroyer<DataPtr> valueDataDestroyer(valueData); + DataPtr facetData = _factory->createString(info->facet, true); + Destroyer<DataPtr> facetDataDestroyer(facetData); // // Unmarshal the key and value. @@ -1309,6 +1312,7 @@ FreezeScript::RecordDescriptor::execute(const SymbolTablePtr& sym, ExecuteInfo* SymbolTablePtr st = new SymbolTableI(_factory, _unit, _errorReporter, info, info->symbolTable); st->add("key", keyData); st->add("value", valueData); + st->add("facet", facetData); ExecutableContainerDescriptor::execute(st, info); } } @@ -1466,11 +1470,12 @@ FreezeScript::DumpDBDescriptor::execute(const SymbolTablePtr&, ExecuteInfo*) } void -FreezeScript::DumpDBDescriptor::dump(const Ice::CommunicatorPtr& communicator, Db* db, DbTxn* txn) +FreezeScript::DumpDBDescriptor::dump(const Ice::CommunicatorPtr& communicator, Db* db, DbTxn* txn, const string& facet) { _info->communicator = communicator; _info->db = db; _info->txn = txn; + _info->facet = facet; try { |