diff options
Diffstat (limited to 'TAO/CIAO/tools/Config_Handlers/Package_Handlers/NIA_Handler.h')
-rw-r--r-- | TAO/CIAO/tools/Config_Handlers/Package_Handlers/NIA_Handler.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/TAO/CIAO/tools/Config_Handlers/Package_Handlers/NIA_Handler.h b/TAO/CIAO/tools/Config_Handlers/Package_Handlers/NIA_Handler.h new file mode 100644 index 00000000000..6ad2767104b --- /dev/null +++ b/TAO/CIAO/tools/Config_Handlers/Package_Handlers/NIA_Handler.h @@ -0,0 +1,64 @@ +/** + * @file NIA_Handler.h + * @author William Otte <wotte@dre.vanderbilt.edu> + * $Id$ + */ + +#ifndef CIAO_PACKAGING_NIA_HANDLER_H +#define CIAO_PACKAGING_NIA_HANDLER_H + +#include /**/ "ace/pre.h" +#include "Package_Handlers/Packaging_Handlers_Export.h" +#include "Utils/Functors.h" +#include "ciao/Packaging_DataC.h" +#include "iad.hpp" + +namespace Deployment +{ + struct NamedImplementationArtifact; + class NamedImplementationArtifacts; +} + +namespace CIAO +{ + namespace Config_Handlers + { + class NamedImplementationArtifact; + + namespace Packaging + { + /** + * @class NIA_Handler + * @brief Handler class for NamedImplementationArtifact types. + */ + class Packaging_Handlers_Export NIA_Handler + { + public: + static void get_nia (const NamedImplementationArtifact &desc, + ::Deployment::NamedImplementationArtifact &toconfig) + { + toconfig.name = desc.name ().c_str (); + IAD_Handler::impl_artifact_descr (desc.referencedArtifact (), + toconfig.referencedArtifact); + } + + + static NamedImplementationArtifact + get_nia (const ::Deployment::NamedImplementationArtifact &src) + { + return NamedImplementationArtifact (src.name.in (), + IAD_Handler::impl_artifact_descr (src.referencedArtifact)); + } + + }; + + typedef Sequence_Handler < NamedImplementationArtifact, + ::Deployment::NamedImplementationArtifacts, + ::Deployment::NamedImplementationArtifact, + NIA_Handler::get_nia > NIA_Functor; + } + } +} + + +#endif /* CIAO_PACKAGING_NIA_HANDLER_H */ |