//================================================================== /** * @file DnC_Dump.h * * $Id$ * * @author Gan Deng */ //===================================================================== #ifndef DNC_DUMP_H #define DNC_DUMP_H #include /**/ "ace/pre.h" #include "ciao/DeploymentC.h" #include "Config_Handler_export.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) #pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ namespace Deployment { /** * @class DnC_Dump * * @brief This class defines a set of overloaded "dump" methods to print * the contents of various IDL data types, which passed as input. */ class Config_Handler_Export DnC_Dump { /* * If the compiler has broken nested templates exclude dumping functionality. */ #ifndef ACE_HAS_BROKEN_NESTED_TEMPLATES public: /// Dump functions for CORBA sequences static void dump (const char* caption, const ::CORBA::StringSeq &str_seq); template static void dump_sequence (const char* caption, const SEQUENCE &seq); template static void dump_ref_seq (const char* caption, SEQUENCE& seq, const char* root, DATA_TYPE CLASS::*data); template static void dump_ref (const char* caption, REFERENCE& ref, const char* root, DATA_TYPE CLASS::*data); static void dump (const char* caption, const TAO_String_Manager& str); static void dump (const char* caption, const CORBA::Boolean& val); /// A whole slew of overloaded dump routines for different IDL data types. static void dump(const Deployment::SatisfierProperty &sp); static void dump (const Deployment::SharedResource& sr); static void dump (const Deployment::Node& node); static void dump (const Deployment::Resource& resource); static void dump (const Deployment::Interconnect& conn); static void dump (const Deployment::Bridge& bridge); static void dump (const ::Deployment::Property &property); static void dump (const ::Deployment::AssemblyConnectionDescription &acd); static void dump (const ::Deployment::AssemblyPropertyMapping &apm); static void dump (const ::Deployment::ComponentPackageDescription &comppkgdesc); static void dump (const ::Deployment::ComponentPortDescription &compportdesc); static void dump (const ::Deployment::ComponentPropertyDescription &comppropdesc); static void dump (const ::Deployment::MonolithicImplementationDescription &mid); static void dump (const ::Deployment::PackageConfiguration &pc); static void dump (const ::Deployment::PackagedComponentImplementation &pci); static void dump (const ::Deployment::SubcomponentPortEndpoint &spe); static void dump (const ::Deployment::Requirement &requirement); static void dump (const ::Deployment::ComponentExternalPortEndpoint &cepe); static void dump (const ::Deployment::ComponentPackageReference &cpr); static void dump (const ::Deployment::ComponentImplementationDescription &cid); static void dump (const ::Deployment::SubcomponentInstantiationDescription &sid); static void dump (const ::Deployment::NamedImplementationArtifact &named_implementation); static void dump (const ::Deployment::ComponentInterfaceDescription &cid); static void dump (const ::Deployment::SubcomponentPropertyReference &scpr); static void dump (const ::Deployment::ExternalReferenceEndpoint &ere); static void dump (const ::Deployment::Domain &domain); static void dump (const ::Deployment::Capability &capability); static void dump (const ::Deployment::ImplementationArtifactDescription &iad); static void dump (const ::Deployment::ImplementationRequirement &ir); static void dump(const Deployment::ResourceUsageKind &ruk); static void dump(const Deployment::DeploymentPlan &plan); static void dump(const Deployment::MonolithicDeploymentDescription &mdd); static void dump(const Deployment::InstanceDeploymentDescription &idd); static void dump(const Deployment::PlanConnectionDescription &pcd); static void dump(const Deployment::PlanPropertyMapping &ppm); static void dump(const Deployment::ImplementationDependency &id); static void dump(const Deployment::ArtifactDeploymentDescription &add); static void dump(const Deployment::InstanceResourceDeploymentDescription &irdd); static void dump(const PlanSubcomponentPortEndpoint &pspe); static void dump(const ConnectionResourceDeploymentDescription &crdd); static void dump(const PlanSubcomponentPropertyReference &pspr); static void dump(const ResourceDeploymentDescription &rdd); static void dump (const ::Deployment::ComponentAssemblyDescription& cad); static void dump (const Deployment::RequirementSatisfier& rs); private: static void dump (const ::CORBA::Any &any); // Helper function to print an Any #else // ACE_HAS_BROKEN_NESTED_TEMPLATES public: static void dump(const Deployment::DeploymentPlan &plan) { } #endif // ACE_HAS_BROKEN_NESTED_TEMPLATES }; } #include /**/ "ace/post.h" #endif /* DNC_DUMP_H */