diff options
-rw-r--r-- | TAO/CIAO/ChangeLog | 7 | ||||
-rw-r--r-- | TAO/CIAO/tools/Config_Handlers/ADD_Handler.cpp | 15 | ||||
-rw-r--r-- | TAO/CIAO/tools/Config_Handlers/DP_Handler.cpp | 1 |
3 files changed, 22 insertions, 1 deletions
diff --git a/TAO/CIAO/ChangeLog b/TAO/CIAO/ChangeLog index 2a213ad0807..c3de881f81b 100644 --- a/TAO/CIAO/ChangeLog +++ b/TAO/CIAO/ChangeLog @@ -1,3 +1,10 @@ +Thu May 4 21:35:01 UTC 2006 William R. Otte <wotte@dre.vanderbilt.edu> + + * tools/Config_Handlers/ADD_Handler.cpp + * tools/Config_Handlers/DP_Handler.cpp + + Fixed a reverse handler bug. + Thu May 4 08:33:12 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl> * DAnCE/RepositoryManager/PC_Updater.cpp: diff --git a/TAO/CIAO/tools/Config_Handlers/ADD_Handler.cpp b/TAO/CIAO/tools/Config_Handlers/ADD_Handler.cpp index 0a81e4c4859..f59b1bfbe84 100644 --- a/TAO/CIAO/tools/Config_Handlers/ADD_Handler.cpp +++ b/TAO/CIAO/tools/Config_Handlers/ADD_Handler.cpp @@ -3,7 +3,7 @@ #include "cdp.hpp" #include "ciao/Deployment_DataC.h" #include "Property_Handler.h" - +#include "ace/UUID.h" ACE_RCSID (DAnCE, ADD_Handler, @@ -158,6 +158,19 @@ namespace CIAO { add.add_execParameter (Property_Handler::get_property (src.execParameter[k])); } + + // Generate a UUID to use for the IDREF. + ACE_Utils::UUID uuid; + ACE_Utils::UUID_GENERATOR::instance ()->generateUUID (uuid); + ACE_CString add_id ("_"); + add_id += *uuid.to_string (); + + XMLSchema::ID< ACE_TCHAR > xml_id (add_id.c_str ()); + + // Bind the ref and set it in the IDD + ADD_Handler::IDREF.bind_next_available (add_id); + + add.id (xml_id); return add; } diff --git a/TAO/CIAO/tools/Config_Handlers/DP_Handler.cpp b/TAO/CIAO/tools/Config_Handlers/DP_Handler.cpp index 0953c705cd5..c6250c00040 100644 --- a/TAO/CIAO/tools/Config_Handlers/DP_Handler.cpp +++ b/TAO/CIAO/tools/Config_Handlers/DP_Handler.cpp @@ -214,6 +214,7 @@ ACE_RCSID (Config_Handlers, // Clear IDREF tables IDD_Handler::IDREF.unbind_refs (); MDD_Handler::IDREF.unbind_refs (); + ADD_Handler::IDREF.unbind_refs (); size_t len; //Used for checking the length of struct data members |