diff options
Diffstat (limited to 'TAO/CIAO/DAnCE/Config_Handlers/SPK_Handler.cpp')
-rw-r--r-- | TAO/CIAO/DAnCE/Config_Handlers/SPK_Handler.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/SPK_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/SPK_Handler.cpp new file mode 100644 index 00000000000..e7731252994 --- /dev/null +++ b/TAO/CIAO/DAnCE/Config_Handlers/SPK_Handler.cpp @@ -0,0 +1,41 @@ +//$Id$ + +#include "SPK_Handler.h" +#include "tao/Exception.h" +#include "Utils.h" + +using CIAO::Config_Handler::Utils; + +void +CIAO::Config_Handler::SPK_Handler:: +process_SatisfierPropertyKind (DOMNodeIterator * iter, + Deployment::SatisfierPropertyKind &kind) +{ + // -- SatisfierPropertyKind enum + XStr quantity ("Quantity"); + XStr capacity ("Capacity"); + XStr minimum ("Minimum"); + XStr maximum ("Maximum"); + XStr attribute ("Attribute"); + XStr selection ("Selection"); + + XStr kind_str = XStr (Utils::parse_string (iter)); + if (kind_str == quantity) + kind = Deployment::Quantity; + else if (kind_str = capacity) + kind = Deployment::Capacity; + else if (kind_str == minimum) + kind = Deployment::Minimum; + else if (kind_str == maximum) + kind = Deployment::Maximum; + else if (kind_str == attribute) + kind = Deployment::Attribute; + else if (kind_str == selection) + kind = Deployment::Selection; + + // Something wrong here.. Throw exception + ACE_DEBUG ((LM_DEBUG, + "Config_Handler::SPK_Handler::process_SPK \ + illegal <SatisfierPropertyKind> value found \n")); + ACE_THROW (CORBA::INTERNAL ()); +} |