diff options
Diffstat (limited to 'modules/CIAO/connectors/ami4ccm/examples/Receiver')
4 files changed, 560 insertions, 0 deletions
diff --git a/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver.idl b/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver.idl new file mode 100644 index 00000000000..968d55a61cb --- /dev/null +++ b/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver.idl @@ -0,0 +1,23 @@ +// $Id$ + +#ifndef HELLO_RECEIVER_IDL +#define HELLO_RECEIVER_IDL + +#include <Components.idl> + +#include "../Hello_Base/Hello_Base.idl" + +module Hello_AMI +{ + component Receiver + { + //provides + provides CCM_AMI::MyFoo do_my_foo; + provides CCM_AMI::MyInterface do_my_interface; + }; + + home ReceiverHome manages Receiver + { + }; +}; +#endif diff --git a/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver.mpc b/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver.mpc new file mode 100644 index 00000000000..b72bb495c27 --- /dev/null +++ b/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver.mpc @@ -0,0 +1,134 @@ +// $Id$ +// This file is generated with "generate_component_mpc.pl -p Hello_Base Hello_Receiver" + +project(Hello_Base_Hello_Receiver_idl_gen) : componentidldefaults { + custom_only = 1 + idlflags += -Wb,stub_export_macro=HELLO_RECEIVER_STUB_Export \ + -Wb,stub_export_include=Hello_Receiver_stub_export.h \ + -Wb,skel_export_macro=HELLO_RECEIVER_SVNT_Export \ + -Wb,skel_export_include=Hello_Receiver_svnt_export.h \ + -Wb,exec_export_macro=HELLO_RECEIVER_EXEC_Export \ + -Wb,exec_export_include=Hello_Receiver_exec_export.h + + IDL_Files { + Hello_Receiver.idl + } +} + +project(Hello_Base_Hello_Receiver_lem_gen) : ciaoidldefaults { + after += Hello_Base_Hello_Receiver_idl_gen + custom_only = 1 + idlflags += -Wb,stub_export_macro=HELLO_RECEIVER_LEM_STUB_Export \ + -Wb,stub_export_include=Hello_Receiver_lem_stub_export.h \ + -SS -Gxhst + + IDL_Files { + Hello_ReceiverE.idl + } +} + +project(Hello_Base_Hello_Receiver_lem_stub) : ccm_svnt, ami { + after += Hello_Base_Hello_Receiver_lem_gen Hello_Base_Hello_Receiver_stub Hello_Base_stub + libs += Hello_Base_stub Hello_Receiver_stub + libpaths += ../lib + libout = ../lib + sharedname = Hello_Receiver_lem_stub + dynamicflags = HELLO_RECEIVER_LEM_STUB_BUILD_DLL + + IDL_Files { + } + + Source_Files { + Hello_ReceiverEC.cpp + } + + Header_Files { + Hello_ReceiverEC.h + Hello_Receiver_lem_stub_export.h + } + + Inline_Files { + Hello_ReceiverEC.inl + } +} + +project(Hello_Base_Hello_Receiver_stub) : ccm_stub, ami { + after += Hello_Base_Hello_Receiver_idl_gen Hello_Base_stub + libs += Hello_Base_stub + libpaths += ../lib + libout = ../lib + sharedname = Hello_Receiver_stub + dynamicflags = HELLO_RECEIVER_STUB_BUILD_DLL + + IDL_Files { + } + + Source_Files { + Hello_ReceiverC.cpp + } + + Header_Files { + Hello_ReceiverC.h + Hello_Receiver_stub_export.h + } + + Inline_Files { + Hello_ReceiverC.inl + } +} + +project(Hello_Base_Hello_Receiver_exec) : ciao_executor, ami { + after += Hello_Base_Hello_Receiver_lem_stub Hello_Base_Hello_Receiver_stub + sharedname = Hello_Receiver_exec + libs += Hello_Receiver_stub Hello_Receiver_lem_stub Hello_Base_stub + libpaths += ../lib + libout = ../lib + dynamicflags = HELLO_RECEIVER_EXEC_BUILD_DLL + + IDL_Files { + } + + Source_Files { + Hello_Receiver_exec.cpp + } + + Header_Files { + Hello_Receiver_exec.h + Hello_Receiver_exec_export.h + } + + Inline_Files { + } +} + + +project(Hello_Base_Hello_Receiver_svnt) : ciao_servant, ami { + after += Hello_Base_skel Hello_Base_Hello_Receiver_lem_stub + sharedname = Hello_Receiver_svnt + libs += Hello_Receiver_stub Hello_Receiver_lem_stub \ + Hello_Base_skel \ + Hello_Base_stub + libpaths += ../lib + libout = ../lib + dynamicflags = HELLO_RECEIVER_SVNT_BUILD_DLL + + IDL_Files { + } + + Source_Files { + Hello_ReceiverS.cpp + Hello_Receiver_svnt.cpp + } + + Header_Files { + Hello_ReceiverS.h + Hello_Receiver_svnt.h + Hello_Receiver_svnt_export.h + } + + Inline_Files { + Hello_ReceiverS.inl + } +} + + diff --git a/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver_exec.cpp b/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver_exec.cpp new file mode 100644 index 00000000000..abc08fcff35 --- /dev/null +++ b/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver_exec.cpp @@ -0,0 +1,248 @@ +// -*- C++ -*- +// +// $Id$ + +// **** Code generated by the The ACE ORB (TAO) IDL Compiler v1.7.1 **** +// TAO and the TAO IDL Compiler have been developed by: +// Center for Distributed Object Computing +// Washington University +// St. Louis, MO +// USA +// http://www.cs.wustl.edu/~schmidt/doc-center.html +// and +// Distributed Object Computing Laboratory +// University of California at Irvine +// Irvine, CA +// USA +// http://doc.ece.uci.edu/ +// and +// Institute for Software Integrated Systems +// Vanderbilt University +// Nashville, TN +// USA +// http://www.isis.vanderbilt.edu/ +// +// Information about TAO is available at: +// http://www.cs.wustl.edu/~schmidt/TAO.html + +// TAO_IDL - Generated from +// be/be_codegen.cpp:1278 + +#include "Hello_Receiver_exec.h" +#include "ciao/CIAO_common.h" +#include "ace/OS_NS_unistd.h" + +namespace CIAO_Hello_AMI_Receiver_Impl +{ + //============================================================ + // Facet Executor Implementation Class: MyFoo_exec_i + //============================================================ + + MyFoo_exec_i::MyFoo_exec_i (void) + { + } + + MyFoo_exec_i::~MyFoo_exec_i (void) + { + } + + // Operations from ::CCM_AMI::MyFoo + + ::CORBA::Long + MyFoo_exec_i::foo ( + const char * in_str, + ::CORBA::String_out answer) + { + if (ACE_OS::strlen (in_str) == 0) + { + CCM_AMI::InternalException ex; + ex.id = 42; + ex.error_string = "Hello world"; + throw CCM_AMI::InternalError (ex); + } + else + { + printf ("Receiver :\tReceived string <%s>\n", in_str); + ACE_OS::sleep (ACE_OS::rand () % 2); + answer = CORBA::string_dup ("This is my answer : Hi"); + return ACE_OS::rand () % 100; + } + } + + void + MyFoo_exec_i::hello ( + CORBA::Long_out answer) + { + printf ("Receiver (HELLO) :\tReceived request\n"); + ACE_OS::sleep (ACE_OS::rand () % 2); + answer = ACE_OS::rand () % 100; + } + +//============================================================ + // Facet Executor Implementation Class: MyInterface_exec_i + //============================================================ + + MyInterface_exec_i::MyInterface_exec_i (void) + { + } + + MyInterface_exec_i::~MyInterface_exec_i (void) + { + } + + // Operations from ::CCM_AMI::MyInterface + + CORBA::Float + MyInterface_exec_i::do_something_with_something ( + CORBA::Short something) + { + if (something == 0) + { + CCM_AMI::InternalException ex; + ex.id = 42; + ex.error_string = "Hello world"; + throw CCM_AMI::InternalError (ex); + } + else + { + printf ("Receiver :\tReceived short <%d>\n", something); + ACE_OS::sleep (ACE_OS::rand () % 2); + return static_cast<CORBA::Float>(something / 6.54321); + } + } + + //============================================================ + // Component Executor Implementation Class: Receiver_exec_i + //============================================================ + + Receiver_exec_i::Receiver_exec_i (void) + { + } + + Receiver_exec_i::~Receiver_exec_i (void) + { + } + + // Supported operations and attributes. + + // Component attributes. + + // Port operations. + + ::CCM_AMI::CCM_MyFoo_ptr + Receiver_exec_i::get_do_my_foo (void) + { + return new MyFoo_exec_i (); + } + + ::CCM_AMI::CCM_MyInterface_ptr + Receiver_exec_i::get_do_my_interface (void) + { + return new MyInterface_exec_i (); + } + + // Operations from Components::SessionComponent. + + void + Receiver_exec_i::set_session_context ( + ::Components::SessionContext_ptr ctx) + { + this->context_ = + ::Hello_AMI::CCM_Receiver_Context::_narrow (ctx); + + if ( ::CORBA::is_nil (this->context_.in ())) + { + throw ::CORBA::INTERNAL (); + } + } + + void + Receiver_exec_i::configuration_complete (void) + { + /* Your code here. */ + } + + void + Receiver_exec_i::ccm_activate (void) + { + /* Your code here. */ + } + + void + Receiver_exec_i::ccm_passivate (void) + { + /* Your code here. */ + } + + void + Receiver_exec_i::ccm_remove (void) + { + /* Your code here. */ + } + + extern "C" ::Components::EnterpriseComponent_ptr + create_Hello_AMI_Receiver_Impl (void) + { + ::Components::EnterpriseComponent_ptr retval = + ::Components::EnterpriseComponent::_nil (); + + ACE_NEW_RETURN ( + retval, + Receiver_exec_i, + ::Components::EnterpriseComponent::_nil ()); + + return retval; + } +} + +namespace CIAO_Hello_AMI_Receiver_Impl +{ + //============================================================ + // Home Executor Implementation Class: ReceiverHome_exec_i + //============================================================ + + ReceiverHome_exec_i::ReceiverHome_exec_i (void) + { + } + + ReceiverHome_exec_i::~ReceiverHome_exec_i (void) + { + } + + // All operations and attributes. + + // Factory operations. + + // Finder operations. + + // Implicit operations. + + ::Components::EnterpriseComponent_ptr + ReceiverHome_exec_i::create (void) + { + ::Components::EnterpriseComponent_ptr retval = + ::Components::EnterpriseComponent::_nil (); + + ACE_NEW_THROW_EX ( + retval, + Receiver_exec_i, + ::CORBA::NO_MEMORY ()); + + return retval; + } + + extern "C" ::Components::HomeExecutorBase_ptr + create_Hello_AMI_ReceiverHome_Impl (void) + { + ::Components::HomeExecutorBase_ptr retval = + ::Components::HomeExecutorBase::_nil (); + + ACE_NEW_RETURN ( + retval, + ReceiverHome_exec_i, + ::Components::HomeExecutorBase::_nil ()); + + return retval; + } +} + diff --git a/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver_exec.h b/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver_exec.h new file mode 100644 index 00000000000..512a7946f79 --- /dev/null +++ b/modules/CIAO/connectors/ami4ccm/examples/Receiver/Hello_Receiver_exec.h @@ -0,0 +1,155 @@ +// -*- C++ -*- +// +// $Id$ + +// **** Code generated by the The ACE ORB (TAO) IDL Compiler v1.7.1 **** +// TAO and the TAO IDL Compiler have been developed by: +// Center for Distributed Object Computing +// Washington University +// St. Louis, MO +// USA +// http://www.cs.wustl.edu/~schmidt/doc-center.html +// and +// Distributed Object Computing Laboratory +// University of California at Irvine +// Irvine, CA +// USA +// http://doc.ece.uci.edu/ +// and +// Institute for Software Integrated Systems +// Vanderbilt University +// Nashville, TN +// USA +// http://www.isis.vanderbilt.edu/ +// +// Information about TAO is available at: +// http://www.cs.wustl.edu/~schmidt/TAO.html + +// TAO_IDL - Generated from +// be/be_codegen.cpp:1217 + +#ifndef CIAO_HELLO_RECEIVER_EXEC_H_ +#define CIAO_HELLO_RECEIVER_EXEC_H_ + + +#include "Hello_ReceiverEC.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +#include "tao/LocalObject.h" +#include "Hello_Receiver_exec_export.h" + +namespace CIAO_Hello_AMI_Receiver_Impl +{ + class MyFoo_exec_i + : public virtual ::CCM_AMI::CCM_MyFoo, + public virtual ::CORBA::LocalObject + { + public: + MyFoo_exec_i (void); + virtual ~MyFoo_exec_i (void); + + // Operations and attributes from ::CCM_AMI::MyFoo + + // TAO_IDL - Generated from + // be/be_visitor_operation/operation_ch.cpp:46 + + virtual ::CORBA::Long + foo ( + const char * in_str, + ::CORBA::String_out answer); + + virtual void + hello ( + CORBA::Long_out answer); + }; + + class MyInterface_exec_i + : public virtual ::CCM_AMI::CCM_MyInterface, + public virtual ::CORBA::LocalObject + { + public: + MyInterface_exec_i (void); + virtual ~MyInterface_exec_i (void); + + // Operations and attributes from ::CCM_AMI::MyFoo + + // TAO_IDL - Generated from + // be/be_visitor_operation/operation_ch.cpp:46 + + virtual ::CORBA::Float + do_something_with_something ( + CORBA::Short something); + }; + + class Receiver_exec_i + : public virtual Receiver_Exec, + public virtual ::CORBA::LocalObject + { + public: + Receiver_exec_i (void); + virtual ~Receiver_exec_i (void); + + // Supported operations and attributes. + + // Component attributes. + + // Port operations. + + virtual ::CCM_AMI::CCM_MyFoo_ptr + get_do_my_foo (void); + + virtual ::CCM_AMI::CCM_MyInterface_ptr + get_do_my_interface (void); + + // Operations from Components::SessionComponent. + + virtual void + set_session_context ( + ::Components::SessionContext_ptr ctx); + + virtual void configuration_complete (void); + + virtual void ccm_activate (void); + virtual void ccm_passivate (void); + virtual void ccm_remove (void); + + private: + ::Hello_AMI::CCM_Receiver_Context_var context_; + }; + + extern "C" HELLO_RECEIVER_EXEC_Export ::Components::EnterpriseComponent_ptr + create_Hello_AMI_Receiver_Impl (void); +} + +namespace CIAO_Hello_AMI_Receiver_Impl +{ + class ReceiverHome_exec_i + : public virtual ReceiverHome_Exec, + public virtual ::CORBA::LocalObject + { + public: + ReceiverHome_exec_i (void); + + virtual ~ReceiverHome_exec_i (void); + + // All operations and attributes. + + // Factory operations. + + // Finder operations. + + // Implicit operations. + + virtual ::Components::EnterpriseComponent_ptr + create (void); + }; + + extern "C" HELLO_RECEIVER_EXEC_Export ::Components::HomeExecutorBase_ptr + create_Hello_AMI_ReceiverHome_Impl (void); +} + +#endif /* ifndef */ + |