diff options
author | mhengstmengel <mhengstmengel@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2010-11-18 15:54:29 +0000 |
---|---|---|
committer | mhengstmengel <mhengstmengel@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2010-11-18 15:54:29 +0000 |
commit | f02f619c68740249c5b7e4c38a48b5528769ceec (patch) | |
tree | b7c11db8d6838507c48cfc9d1f869cac1697c9e9 /CIAO/connectors/ami4ccm | |
parent | c7cd813cff837ee3a7d56de77f1063496fbc9309 (diff) | |
download | ATCD-f02f619c68740249c5b7e4c38a48b5528769ceec.tar.gz |
Thu Nov 18 15:53:42 UTC 2010 Marijke Hengstmengel <mhengstmengel@remedy.nl>
* connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender_exec.cpp:
* connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender_exec.h:
* connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender.mpc:
* connectors/ami4ccm/tests/InterMulti/descriptors/Plan.cdp:
* connectors/ami4ccm/tests/InterMulti/Receiver/InterMulti_Receiver_exec.cpp:
* connectors/ami4ccm/tests/InterMulti/Receiver/InterMulti_Receiver_exec.h:
* connectors/ami4ccm/tests/InterMulti/Sender/InterMultiA_conn_i.cpp:
* connectors/ami4ccm/tests/InterMulti/Sender/InterMultiA_conn_i.h:
Updated test by using -Gex option and _conn_i.h/cpp file for ReplyHandler.
Diffstat (limited to 'CIAO/connectors/ami4ccm')
8 files changed, 962 insertions, 486 deletions
diff --git a/CIAO/connectors/ami4ccm/tests/InterMulti/Receiver/InterMulti_Receiver_exec.cpp b/CIAO/connectors/ami4ccm/tests/InterMulti/Receiver/InterMulti_Receiver_exec.cpp index 9955a481dc8..6ee3ad26acf 100644 --- a/CIAO/connectors/ami4ccm/tests/InterMulti/Receiver/InterMulti_Receiver_exec.cpp +++ b/CIAO/connectors/ami4ccm/tests/InterMulti/Receiver/InterMulti_Receiver_exec.cpp @@ -1,23 +1,57 @@ // -*- C++ -*- // $Id$ +/** + * Code generated by the The ACE ORB (TAO) IDL Compiler v1.8.3 + * 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 + * 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 + **/ + #include "InterMulti_Receiver_exec.h" -#include "ace/OS_NS_unistd.h" namespace CIAO_InterMulti_Receiver_Impl { - Atomic_UShort nr_of_received = 0; - One_exec_i::One_exec_i (void) + CORBA::UShort nr_of_received = 0; + + /** + * Facet Executor Implementation Class: do_my_one_exec_i + */ + + do_my_one_exec_i::do_my_one_exec_i ( + ::InterMulti::CCM_Receiver_Context_ptr ctx) + : ciao_context_ ( + ::InterMulti::CCM_Receiver_Context::_duplicate (ctx)) { } - One_exec_i::~One_exec_i (void) + do_my_one_exec_i::~do_my_one_exec_i (void) { } + // Operations from ::InterMulti::One + ::CORBA::Long - One_exec_i::foo (const char * in_str, ::CORBA::Long cmd, - ::CORBA::String_out answer) + do_my_one_exec_i::foo (const char * in_str, + ::CORBA::Long cmd, + ::CORBA::String_out answer) { ACE_DEBUG ((LM_DEBUG, "Receiver: one_foo, in_str = %C" " cmd = <%u>\n", @@ -36,17 +70,26 @@ namespace CIAO_InterMulti_Receiver_Impl return cmd; } - Two_exec_i::Two_exec_i (void) + /** + * Facet Executor Implementation Class: do_my_two_exec_i + */ + + do_my_two_exec_i::do_my_two_exec_i ( + ::InterMulti::CCM_Receiver_Context_ptr ctx) + : ciao_context_ ( + ::InterMulti::CCM_Receiver_Context::_duplicate (ctx)) { } - Two_exec_i::~Two_exec_i (void) + do_my_two_exec_i::~do_my_two_exec_i (void) { } + // Operations from ::InterMulti::Two + void - Two_exec_i::bar (::CORBA::Long cmd, - ::CORBA::String_out answer) + do_my_two_exec_i::bar (::CORBA::Long cmd, + ::CORBA::String_out answer) { ACE_DEBUG ((LM_DEBUG, "Receiver: two_bar," " cmd = <%u>\n", @@ -64,32 +107,50 @@ namespace CIAO_InterMulti_Receiver_Impl answer = CORBA::string_dup ("answer bar two"); } - Three_exec_i::Three_exec_i (void) + /** + * Facet Executor Implementation Class: do_my_three_exec_i + */ + + do_my_three_exec_i::do_my_three_exec_i ( + ::InterMulti::CCM_Receiver_Context_ptr ctx) + : ciao_context_ ( + ::InterMulti::CCM_Receiver_Context::_duplicate (ctx)) { } - Three_exec_i::~Three_exec_i (void) + do_my_three_exec_i::~do_my_three_exec_i (void) { } + // Operations from ::InterMulti::Three + void - Three_exec_i::plus (::CORBA::Long cmd, - ::CORBA::String_out answer) + do_my_three_exec_i::bar (::CORBA::Long cmd, + ::CORBA::String_out answer) { - ACE_DEBUG ((LM_DEBUG, "Receiver: three_plus," - " cmd = <%u>\n", - cmd)); - ++nr_of_received; - answer = CORBA::string_dup ("answer plus three"); + ACE_DEBUG ((LM_DEBUG, "Receiver: three_bar," + " cmd = <%u>\n", + cmd)); + if (cmd != 3) + { + ACE_ERROR ((LM_ERROR, "ERROR: Receiver Three::bar," + " origin not 3, but <%u>\n", + cmd)); + } + else + { + ++nr_of_received; + } + answer = CORBA::string_dup ("answer bar three"); } ::CORBA::Long - Three_exec_i::foo (const char * in_str,::CORBA::Long cmd, - ::CORBA::String_out answer) + do_my_three_exec_i::foo (const char * in_str,::CORBA::Long cmd, + ::CORBA::String_out answer) { ACE_DEBUG ((LM_DEBUG, "Receiver: three_foo, in_str = %C" - " cmd = <%u>\n", - in_str, cmd)); + " cmd = <%u>\n", + in_str, cmd)); if (cmd != 3) { ACE_ERROR ((LM_ERROR, "ERROR: Receiver THREE::foo," @@ -105,58 +166,101 @@ namespace CIAO_InterMulti_Receiver_Impl } void - Three_exec_i::bar (::CORBA::Long cmd, - ::CORBA::String_out answer) + do_my_three_exec_i::plus (::CORBA::Long cmd, + ::CORBA::String_out answer) { - ACE_DEBUG ((LM_DEBUG, "Receiver: three_bar," - " cmd = <%u>\n", - cmd)); - if (cmd != 3) - { - ACE_ERROR ((LM_ERROR, "ERROR: Receiver Three::bar," - " origin not 3, but <%u>\n", - cmd)); - } - else - { - ++nr_of_received; - } - answer = CORBA::string_dup ("answer bar three"); - } + ACE_DEBUG ((LM_DEBUG, "Receiver: three_plus," + " cmd = <%u>\n", + cmd)); + ++nr_of_received; + answer = CORBA::string_dup ("answer plus three"); + } - Receiver_exec_i::Receiver_exec_i (void) - { + /** + * 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 and port operations. + ::InterMulti::CCM_One_ptr Receiver_exec_i::get_do_my_one (void) { - return new One_exec_i (); + if ( ::CORBA::is_nil (this->ciao_do_my_one_.in ())) + { + do_my_one_exec_i *tmp = 0; + ACE_NEW_RETURN ( + tmp, + do_my_one_exec_i ( + this->ciao_context_.in ()), + ::InterMulti::CCM_One::_nil ()); + + this->ciao_do_my_one_ = tmp; + } + + return + ::InterMulti::CCM_One::_duplicate ( + this->ciao_do_my_one_.in ()); } ::InterMulti::CCM_Two_ptr Receiver_exec_i::get_do_my_two (void) { - return new Two_exec_i (); + if ( ::CORBA::is_nil (this->ciao_do_my_two_.in ())) + { + do_my_two_exec_i *tmp = 0; + ACE_NEW_RETURN ( + tmp, + do_my_two_exec_i ( + this->ciao_context_.in ()), + ::InterMulti::CCM_Two::_nil ()); + + this->ciao_do_my_two_ = tmp; + } + + return + ::InterMulti::CCM_Two::_duplicate ( + this->ciao_do_my_two_.in ()); } ::InterMulti::CCM_Three_ptr Receiver_exec_i::get_do_my_three (void) { - return new Three_exec_i (); + if ( ::CORBA::is_nil (this->ciao_do_my_three_.in ())) + { + do_my_three_exec_i *tmp = 0; + ACE_NEW_RETURN ( + tmp, + do_my_three_exec_i ( + this->ciao_context_.in ()), + ::InterMulti::CCM_Three::_nil ()); + + this->ciao_do_my_three_ = tmp; + } + + return + ::InterMulti::CCM_Three::_duplicate ( + this->ciao_do_my_three_.in ()); } + // Operations from Components::SessionComponent. + void Receiver_exec_i::set_session_context ( ::Components::SessionContext_ptr ctx) { - this->context_ = ::InterMulti::CCM_Receiver_Context::_narrow (ctx); + this->ciao_context_ = + ::InterMulti::CCM_Receiver_Context::_narrow (ctx); - if ( ::CORBA::is_nil (this->context_.in ())) + if ( ::CORBA::is_nil (this->ciao_context_.in ())) { throw ::CORBA::INTERNAL (); } @@ -165,47 +269,48 @@ namespace CIAO_InterMulti_Receiver_Impl 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) { - if (nr_of_received.value() != 7) - { - ACE_ERROR ((LM_ERROR, "ERROR: not received the expected number of" - "correct calls" - "Expected: 7, Received: %u.\n", - nr_of_received.value())); - } - else - { - ACE_DEBUG ((LM_DEBUG, "OK: Receiver received the expected " - "number of correct calls. " - "Expected: 7, Received: %u.\n", - nr_of_received.value())); - } - } + if (nr_of_received != 7) + { + ACE_ERROR ((LM_ERROR, "ERROR: not received the expected number of" + "correct calls" + "Expected: 7, Received: %u.\n", + nr_of_received)); + } + else + { + ACE_DEBUG ((LM_DEBUG, "OK: Receiver received the expected " + "number of correct calls. " + "Expected: 7, Received: %u.\n", + nr_of_received)); + } } - extern "C" ::Components::EnterpriseComponent_ptr - create_InterMulti_AMI_Receiver_Impl (void) + extern "C" INTERMULTI_RECEIVER_EXEC_Export ::Components::EnterpriseComponent_ptr + create_InterMulti_Receiver_Impl (void) { ::Components::EnterpriseComponent_ptr retval = ::Components::EnterpriseComponent::_nil (); - ACE_NEW_RETURN ( + ACE_NEW_NORETURN ( retval, - Receiver_exec_i, - ::Components::EnterpriseComponent::_nil ()); + Receiver_exec_i); return retval; } diff --git a/CIAO/connectors/ami4ccm/tests/InterMulti/Receiver/InterMulti_Receiver_exec.h b/CIAO/connectors/ami4ccm/tests/InterMulti/Receiver/InterMulti_Receiver_exec.h index 6bab5d3fe9f..786f02ee452 100644 --- a/CIAO/connectors/ami4ccm/tests/InterMulti/Receiver/InterMulti_Receiver_exec.h +++ b/CIAO/connectors/ami4ccm/tests/InterMulti/Receiver/InterMulti_Receiver_exec.h @@ -1,8 +1,33 @@ // -*- C++ -*- // $Id$ -#ifndef CIAO_INTERMULTI_RECEIVER_EXEC_H_ -#define CIAO_INTERMULTI_RECEIVER_EXEC_H_ +/** + * Code generated by the The ACE ORB (TAO) IDL Compiler v1.8.3 + * 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 + * 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 + **/ +#ifndef CIAO_INTERMULTI_RECEIVER_EXEC_GUFSW6_H_ +#define CIAO_INTERMULTI_RECEIVER_EXEC_GUFSW6_H_ + +#include /**/ "ace/pre.h" #include "InterMulti_ReceiverEC.h" @@ -10,53 +35,101 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +#include /**/ "InterMulti_Receiver_exec_export.h" #include "tao/LocalObject.h" -#include "InterMulti_Receiver_exec_export.h" namespace CIAO_InterMulti_Receiver_Impl { - typedef ACE_Atomic_Op <TAO_SYNCH_MUTEX, CORBA::UShort > Atomic_UShort; + /** + * Provider Executor Implementation Class: do_my_one_exec_i + */ - class One_exec_i + class do_my_one_exec_i : public virtual ::InterMulti::CCM_One, public virtual ::CORBA::LocalObject { public: - One_exec_i (void); - virtual ~One_exec_i (void); + do_my_one_exec_i ( + ::InterMulti::CCM_Receiver_Context_ptr ctx); + virtual ~do_my_one_exec_i (void); - virtual ::CORBA::Long foo (const char * in_str, ::CORBA::Long cmd, - ::CORBA::String_out answer); - }; - class Two_exec_i + //@{ + /** Operations and attributes from ::InterMulti::One. */ + + virtual + ::CORBA::Long foo (const char * in_str, + ::CORBA::Long cmd, + ::CORBA::String_out answer); + //@} + + private: + ::InterMulti::CCM_Receiver_Context_var ciao_context_; + }; + + /** + * Provider Executor Implementation Class: do_my_two_exec_i + */ + + class do_my_two_exec_i : public virtual ::InterMulti::CCM_Two, public virtual ::CORBA::LocalObject { public: - Two_exec_i (void); - virtual ~Two_exec_i (void); + do_my_two_exec_i ( + ::InterMulti::CCM_Receiver_Context_ptr ctx); + virtual ~do_my_two_exec_i (void); + + //@{ + /** Operations and attributes from ::InterMulti::Two. */ - virtual void bar (::CORBA::Long cmd, - ::CORBA::String_out answer); + virtual + void bar (::CORBA::Long cmd, + ::CORBA::String_out answer); + //@} + + private: + ::InterMulti::CCM_Receiver_Context_var ciao_context_; }; - class Three_exec_i + + /** + * Provider Executor Implementation Class: do_my_three_exec_i + */ + + class do_my_three_exec_i : public virtual ::InterMulti::CCM_Three, public virtual ::CORBA::LocalObject { public: - Three_exec_i (void); - virtual ~Three_exec_i (void); - - virtual void plus (::CORBA::Long cmd, - ::CORBA::String_out answer); - virtual ::CORBA::Long foo (const char * in_str, - ::CORBA::Long cmd, - ::CORBA::String_out answer); - virtual void bar (::CORBA::Long cmd, - ::CORBA::String_out answer); + do_my_three_exec_i ( + ::InterMulti::CCM_Receiver_Context_ptr ctx); + virtual ~do_my_three_exec_i (void); + + //@{ + /** Operations and attributes from ::InterMulti::Three. */ + + virtual + ::CORBA::Long foo (const char * in_str, + ::CORBA::Long cmd, + ::CORBA::String_out answer); + + virtual + void bar (::CORBA::Long cmd, + ::CORBA::String_out answer); + + virtual + void plus (::CORBA::Long cmd, + ::CORBA::String_out answer); + //@} + + private: + ::InterMulti::CCM_Receiver_Context_var ciao_context_; }; - class Receiver_exec_i + /** + * Component Executor Implementation Class: Receiver_exec_i + */ + + class Receiver_exec_i : public virtual Receiver_Exec, public virtual ::CORBA::LocalObject { @@ -64,24 +137,63 @@ namespace CIAO_InterMulti_Receiver_Impl Receiver_exec_i (void); virtual ~Receiver_exec_i (void); - virtual ::InterMulti::CCM_One_ptr get_do_my_one (void); - virtual ::InterMulti::CCM_Two_ptr get_do_my_two (void); - virtual ::InterMulti::CCM_Three_ptr get_do_my_three (void); + //@{ + /** Supported operations and attributes. */ - virtual void set_session_context (::Components::SessionContext_ptr ctx); + //@} - virtual void configuration_complete (void); + //@{ + /** Component attributes and port operations. */ + + virtual ::InterMulti::CCM_One_ptr + get_do_my_one (void); + virtual ::InterMulti::CCM_Two_ptr + get_do_my_two (void); + + virtual ::InterMulti::CCM_Three_ptr + get_do_my_three (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); + //@} + + //@{ + /** User defined public operations. */ + + //@} private: - ::InterMulti::CCM_Receiver_Context_var context_; + ::InterMulti::CCM_Receiver_Context_var ciao_context_; + + //@{ + /** Component attributes. */ + ::InterMulti::CCM_One_var ciao_do_my_one_; + ::InterMulti::CCM_Two_var ciao_do_my_two_; + ::InterMulti::CCM_Three_var ciao_do_my_three_; + //@} + + //@{ + /** User defined members. */ + + //@} + + //@{ + /** User defined private operations. */ + + //@} }; extern "C" INTERMULTI_RECEIVER_EXEC_Export ::Components::EnterpriseComponent_ptr - create_InterMulti_AMI_Receiver_Impl (void); + create_InterMulti_Receiver_Impl (void); } +#include /**/ "ace/post.h" + #endif /* ifndef */ diff --git a/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMultiA_conn_i.cpp b/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMultiA_conn_i.cpp new file mode 100644 index 00000000000..17287e781fc --- /dev/null +++ b/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMultiA_conn_i.cpp @@ -0,0 +1,153 @@ +// -*- C++ -*- +// $Id$ + +/** + * Code generated by the The ACE ORB (TAO) IDL Compiler v1.8.3 + * 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 + * 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:1661 + +#include "InterMultiA_conn_i.h" + +namespace CIAO_InterMulti_AMI4CCM_One_Connector_AMI4CCM_Connector_Impl +{ + AMI4CCM_OneReplyHandler_i::AMI4CCM_OneReplyHandler_i ( + Atomic_UShort &nr_of_received) + : nr_of_received_(nr_of_received) + { + } + + AMI4CCM_OneReplyHandler_i::~AMI4CCM_OneReplyHandler_i (void) + { + } + + void + AMI4CCM_OneReplyHandler_i::foo (::CORBA::Long /* ami_return_val */, + const char * answer) + { + ACE_DEBUG ((LM_DEBUG, "OK: Get asynchronous callback from ONE::foo," + " answer = <%C>\n", + answer)); + ++this->nr_of_received_; } + + void + AMI4CCM_OneReplyHandler_i::foo_excep ( + ::CCM_AMI::ExceptionHolder_ptr excep_holder) + { + excep_holder->raise_exception (); + } +} + +namespace CIAO_InterMulti_AMI4CCM_Two_Connector_AMI4CCM_Connector_Impl +{ + AMI4CCM_TwoReplyHandler_i::AMI4CCM_TwoReplyHandler_i ( + Atomic_UShort &nr_of_received) + : nr_of_received_(nr_of_received) + + { + } + + AMI4CCM_TwoReplyHandler_i::~AMI4CCM_TwoReplyHandler_i (void) + { + } + + void + AMI4CCM_TwoReplyHandler_i::bar (const char * answer) + { + ACE_DEBUG ((LM_DEBUG, "OK: Get asynchronous callback from TWO::bar," + " answer = <%C>\n", + answer)); + ++this->nr_of_received_; + } + + void + AMI4CCM_TwoReplyHandler_i::bar_excep ( + ::CCM_AMI::ExceptionHolder_ptr excep_holder) + { + excep_holder->raise_exception (); + } +} + +namespace CIAO_InterMulti_AMI4CCM_Three_Connector_AMI4CCM_Connector_Impl +{ + AMI4CCM_ThreeReplyHandler_i::AMI4CCM_ThreeReplyHandler_i ( + Atomic_UShort &nr_of_received) + : nr_of_received_(nr_of_received) + + { + } + + AMI4CCM_ThreeReplyHandler_i::~AMI4CCM_ThreeReplyHandler_i (void) + { + } + + void + AMI4CCM_ThreeReplyHandler_i::foo (::CORBA::Long /* ami_return_val */, + const char * answer) + { + ACE_DEBUG ((LM_DEBUG, "OK: Get asynchronous callback from THREE::foo," + " answer = <%C>\n", + answer)); + ++this->nr_of_received_; + } + + void + AMI4CCM_ThreeReplyHandler_i::foo_excep ( + ::CCM_AMI::ExceptionHolder_ptr excep_holder) + { + excep_holder->raise_exception (); + } + + void + AMI4CCM_ThreeReplyHandler_i::bar (const char * answer) + { + ACE_DEBUG ((LM_DEBUG, "OK: Get asynchronous callback from THREE::bar," + " answer = <%C>\n", + answer)); + ++this->nr_of_received_; + } + + void + AMI4CCM_ThreeReplyHandler_i::bar_excep (: + :CCM_AMI::ExceptionHolder_ptr excep_holder) + { + excep_holder->raise_exception (); + } + + void + AMI4CCM_ThreeReplyHandler_i::plus (const char * answer ) + { + ACE_DEBUG ((LM_DEBUG, "OK: Get asynchronous callback from THREE::plus," + " answer = <%C>\n", + answer)); + ++this->nr_of_received_; + } + + void + AMI4CCM_ThreeReplyHandler_i::plus_excep ( + ::CCM_AMI::ExceptionHolder_ptr excep_holder) + { + excep_holder->raise_exception (); + } +} diff --git a/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMultiA_conn_i.h b/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMultiA_conn_i.h new file mode 100644 index 00000000000..c9dc18f80e6 --- /dev/null +++ b/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMultiA_conn_i.h @@ -0,0 +1,123 @@ +// -*- C++ -*- +// $Id$ + +/** + * Code generated by the The ACE ORB (TAO) IDL Compiler v1.8.3 + * 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 + * 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:1584 + +#ifndef CIAO_INTERMULTIA_CONN_I_KGGZSV_H_ +#define CIAO_INTERMULTIA_CONN_I_KGGZSV_H_ + +#include /**/ "ace/pre.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +#include "../Base/InterMultiAC.h" + + +typedef ACE_Atomic_Op <TAO_SYNCH_MUTEX, CORBA::UShort > Atomic_UShort; + +namespace CIAO_InterMulti_AMI4CCM_One_Connector_AMI4CCM_Connector_Impl +{ + + class AMI4CCM_OneReplyHandler_i + : public ::InterMulti::AMI4CCM_OneReplyHandler + { + public: + AMI4CCM_OneReplyHandler_i (Atomic_UShort &nr_of_received_); + virtual ~AMI4CCM_OneReplyHandler_i (void); + + virtual + void foo (::CORBA::Long ami_return_val, + const char * answer); + + virtual + void foo_excep (::CCM_AMI::ExceptionHolder_ptr excep_holder); + private: + Atomic_UShort &nr_of_received_; + }; +} + +namespace CIAO_InterMulti_AMI4CCM_Two_Connector_AMI4CCM_Connector_Impl +{ + class AMI4CCM_TwoReplyHandler_i + : public ::InterMulti::AMI4CCM_TwoReplyHandler + { + public: + AMI4CCM_TwoReplyHandler_i (Atomic_UShort &nr_of_received_); + virtual ~AMI4CCM_TwoReplyHandler_i (void); + + virtual + void bar (const char * answer); + + virtual + void bar_excep (::CCM_AMI::ExceptionHolder_ptr excep_holder); + private: + Atomic_UShort &nr_of_received_; + }; +} + +namespace CIAO_InterMulti_AMI4CCM_Three_Connector_AMI4CCM_Connector_Impl +{ + class AMI4CCM_ThreeReplyHandler_i + : public ::InterMulti::AMI4CCM_ThreeReplyHandler + { + public: + AMI4CCM_ThreeReplyHandler_i (Atomic_UShort &nr_of_received_); + virtual ~AMI4CCM_ThreeReplyHandler_i (void); + + virtual + void foo (::CORBA::Long ami_return_val, + const char * answer); + + virtual + void foo_excep (::CCM_AMI::ExceptionHolder_ptr excep_holder); + + virtual + void bar (const char * answer); + + virtual + void bar_excep (::CCM_AMI::ExceptionHolder_ptr excep_holder); + + virtual + void plus (const char * answer); + + virtual + void plus_excep (::CCM_AMI::ExceptionHolder_ptr excep_holder); + private: + Atomic_UShort &nr_of_received_; + }; +} + +// TAO_IDL - Generated from +// be/be_codegen.cpp:2151 + + +#include /**/ "ace/post.h" + +#endif /* ifndef */ diff --git a/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender.mpc b/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender.mpc index 93a6a9a3923..7d462a03d35 100644 --- a/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender.mpc +++ b/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender.mpc @@ -92,11 +92,13 @@ project(AMI_InterMulti_Base_Sender_exec) : ciao_executor, ami, ami4ccm_stub { Source_Files { InterMulti_Sender_exec.cpp + InterMultiA_conn_i.cpp } Header_Files { InterMulti_Sender_exec.h InterMulti_Sender_exec_export.h + InterMultiA_conn_i.h } Inline_Files { diff --git a/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender_exec.cpp b/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender_exec.cpp index e8c3463ea55..5a2d1230493 100644 --- a/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender_exec.cpp +++ b/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender_exec.cpp @@ -1,274 +1,192 @@ // -*- C++ -*- // $Id$ -// test sendc methods with derived classes, multiple inheritance. +/** + * Code generated by the The ACE ORB (TAO) IDL Compiler v1.8.3 + * 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 + * 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 + **/ + #include "InterMulti_Sender_exec.h" -#include "ace/OS_NS_unistd.h" +#include "InterMultiA_conn_i.h" namespace CIAO_InterMulti_Sender_Impl { - Atomic_UShort nr_of_received = 0; - //============================================================ - // Facet Executor Implementation Class: One_callback_exec_i - //============================================================ - One_callback_exec_i::One_callback_exec_i (void) - { - } - One_callback_exec_i::~One_callback_exec_i (void) - { - } - //============================================================ - // Operations from ::CCM_AMI::One_callback - //============================================================ - // FOO methods - void - One_callback_exec_i::foo ( - ::CORBA::Long /*ami_return_val*/, - const char * answer) - { - ACE_DEBUG ((LM_DEBUG, "OK: Get asynchronous callback from ONE::foo," - " answer = <%C>\n", - answer)); - ++nr_of_received; - } - - void - One_callback_exec_i::foo_excep ( - ::CCM_AMI::ExceptionHolder * excep_holder) - { - excep_holder->raise_exception (); - } - //============================================================ - // Facet Executor Implementation Class: Two_callback_exec_i //============================================================ - Two_callback_exec_i::Two_callback_exec_i (void) - { - } - - Two_callback_exec_i::~Two_callback_exec_i (void) - { - } - //============================================================ - // Operations from ::CCM_AMI::Two_callback - //============================================================ - // FOO methods - void - Two_callback_exec_i::bar (const char * answer) - { - ACE_DEBUG ((LM_DEBUG, "OK: Get asynchronous callback from TWO::bar," - " answer = <%C>\n", - answer)); - ++nr_of_received; - } - - void - Two_callback_exec_i::bar_excep ( - ::CCM_AMI::ExceptionHolder * excep_holder) - { - excep_holder->raise_exception (); - } + // Worker thread for asynchronous invocations for One //============================================================ - // Facet Executor Implementation Class: Three_callback_exec_i - //============================================================ - Three_callback_exec_i::Three_callback_exec_i (void) - { - } + asynch_one_generator::asynch_one_generator ( + ::InterMulti::CCM_Sender_Context_ptr context, + Atomic_UShort &nr_of_received) + : context_(::InterMulti::CCM_Sender_Context::_duplicate (context)), + nr_of_received_ (nr_of_received) + { + } + + int asynch_one_generator::svc () + { + ::InterMulti::AMI4CCM_One_var my_one_ami_ = + context_->get_connection_sendc_run_my_one(); + + ::InterMulti::AMI4CCM_OneReplyHandler_var cb = + new CIAO_InterMulti_AMI4CCM_One_Connector_AMI4CCM_Connector_Impl::AMI4CCM_OneReplyHandler_i ( + this->nr_of_received_); + + //Invoke Asynchronous calls to test + my_one_ami_->sendc_foo ( cb.in(), + "Hi from asynch call ONE::foo", 1); + return 0; + } - Three_callback_exec_i::~Three_callback_exec_i (void) - { - } - - //============================================================ - // Operations from ::CCM_AMI::Three_callback - //============================================================ - // FOO methods - void - Three_callback_exec_i::plus (const char * answer) - { - ACE_DEBUG ((LM_DEBUG, "OK: Get asynchronous callback from THREE::plus," - " answer = <%C>\n", - answer)); - ++nr_of_received; - } - - void - Three_callback_exec_i::plus_excep ( - ::CCM_AMI::ExceptionHolder * excep_holder) - { - excep_holder->raise_exception (); - } - - void - Three_callback_exec_i::foo ( - ::CORBA::Long /*ami_return_val*/, - const char * answer) - { - ACE_DEBUG ((LM_DEBUG, "OK: Get asynchronous callback from THREE::foo," - " answer = <%C>\n", - answer)); - ++nr_of_received; - } - - void - Three_callback_exec_i::foo_excep ( - ::CCM_AMI::ExceptionHolder * excep_holder) - { - excep_holder->raise_exception (); - } - - void - Three_callback_exec_i::bar (const char * answer) - { - ACE_DEBUG ((LM_DEBUG, "OK: Get asynchronous callback from THREE::bar," - " answer = <%C>\n", - answer)); - ++nr_of_received; - } + //============================================================ + // Worker thread for asynchronous invocations for Two + //============================================================ + asynch_two_generator::asynch_two_generator ( + ::InterMulti::CCM_Sender_Context_ptr context, + Atomic_UShort &nr_of_received) + : context_(::InterMulti::CCM_Sender_Context::_duplicate (context)), + nr_of_received_ (nr_of_received) + { + } + + int asynch_two_generator::svc () + { + ::InterMulti::AMI4CCM_Two_var my_two_ami_ = + context_->get_connection_sendc_run_my_two(); + + if (CORBA::is_nil (my_two_ami_.in ())) + { + ACE_ERROR ((LM_ERROR, + "ERROR Sender (ASYNCH) :my_two_ami_ is NIL !\n")); + return 1; + } + else + { + ::InterMulti::AMI4CCM_TwoReplyHandler_var cb = + new CIAO_InterMulti_AMI4CCM_Two_Connector_AMI4CCM_Connector_Impl::AMI4CCM_TwoReplyHandler_i ( + this->nr_of_received_); + + //Invoke Asynchronous calls to test + my_two_ami_->sendc_bar ( cb.in(), 2); + } + return 0; + } - void - Three_callback_exec_i::bar_excep ( - ::CCM_AMI::ExceptionHolder * excep_holder) - { - excep_holder->raise_exception (); - } - //============================================================ - // Worker thread for asynchronous invocations for One - //============================================================ - asynch_one_generator::asynch_one_generator ( + //============================================================ + // Worker thread for asynchronous invocations for Three + //============================================================ + asynch_three_generator::asynch_three_generator ( + ::InterMulti::CCM_Sender_Context_ptr context, + Atomic_UShort &nr_of_received) + : context_(::InterMulti::CCM_Sender_Context::_duplicate (context)), + nr_of_received_ (nr_of_received) + { + } + + int asynch_three_generator::svc () + { + ::InterMulti::AMI4CCM_Three_var my_three_ami_ = + context_->get_connection_sendc_run_my_three(); + + if (CORBA::is_nil (my_three_ami_)) + { + ACE_ERROR ((LM_ERROR, + "ERROR Sender (ASYNCH) :my_three_ami_ is NIL !\n")); + return 1; + } + else + { + ::InterMulti::AMI4CCM_ThreeReplyHandler_var cb = + new CIAO_InterMulti_AMI4CCM_Three_Connector_AMI4CCM_Connector_Impl::AMI4CCM_ThreeReplyHandler_i ( + this->nr_of_received_); + + //Invoke Asynchronous calls to test + my_three_ami_->sendc_plus(cb.in (), 3); + // derived from CLASS ONE + my_three_ami_->sendc_foo ( cb.in (),"hoi", 3); + // derived fron CLASS TWO + my_three_ami_->sendc_bar ( cb.in (), 3); + } + return 0; + } + //============================================================ + // Worker thread for synchronous invocations for One + //============================================================ + synch_one_generator::synch_one_generator ( ::InterMulti::CCM_Sender_Context_ptr context) - : context_(::InterMulti::CCM_Sender_Context::_duplicate (context)) - { - } - - int asynch_one_generator::svc () - { - ::InterMulti::AMI4CCM_One_var my_one_ami_ = - context_->get_connection_sendc_run_my_one(); - - //Invoke Asynchronous calls to test - my_one_ami_->sendc_foo ( new One_callback_exec_i (), - "Hi from asynch call ONE::foo", 1); - return 0; - } - -//============================================================ - // Worker thread for asynchronous invocations for Two + : context_(::InterMulti::CCM_Sender_Context::_duplicate (context)) + { + } + + int synch_one_generator::svc () + { + ::InterMulti::One_var my_one_ami_ = + context_->get_connection_run_my_one (); + + CORBA::String_var answer; + CORBA::Long result = my_one_ami_->foo ( + "Synchronous call foo from class One", + 1, + answer.out ()); + if (result != 1) + { + ACE_ERROR ((LM_ERROR, + "ERROR Sender (SYNCH) : CLASS One foo !\n")); + } + return 0; + } //============================================================ - asynch_two_generator::asynch_two_generator ( + // Worker thread for synchronous invocations for One + //============================================================ + synch_three_generator::synch_three_generator ( ::InterMulti::CCM_Sender_Context_ptr context) - : context_(::InterMulti::CCM_Sender_Context::_duplicate (context)) - { - } + : context_(::InterMulti::CCM_Sender_Context::_duplicate (context)) + { + } + + int synch_three_generator::svc () + { + ::InterMulti::Three_var my_three_ami_ = + context_->get_connection_run_my_three (); + + ::CORBA::String_var answer; + CORBA::Long result = my_three_ami_->foo ( + "Synchronous call foo from class Three, " + " derived from class ONE", + 3 , + answer.out ()); + if (result != 3) + { + ACE_ERROR ((LM_ERROR, + "ERROR Sender (SYNCH) : CLASS Three foo !\n")); + } + return 0; + } + /** + * Component Executor Implementation Class: Sender_exec_i + */ - int asynch_two_generator::svc () - { - ::InterMulti::AMI4CCM_Two_var my_two_ami_ = - context_->get_connection_sendc_run_my_two(); - - if (CORBA::is_nil (my_two_ami_.in ())) - { - ACE_ERROR ((LM_ERROR, - "ERROR Sender (ASYNCH) :my_two_ami_ is NIL !\n")); - return 1; - } - else - { - //Invoke Asynchronous calls to test - my_two_ami_->sendc_bar ( new Two_callback_exec_i (), 2); - } - return 0; - } - - //============================================================ - // Worker thread for asynchronous invocations for Three - //============================================================ - asynch_three_generator::asynch_three_generator ( - ::InterMulti::CCM_Sender_Context_ptr context) - : context_(::InterMulti::CCM_Sender_Context::_duplicate (context)) - { - } - - int asynch_three_generator::svc () - { - ::InterMulti::AMI4CCM_Three_var my_three_ami_ = - context_->get_connection_sendc_run_my_three(); - - if (CORBA::is_nil (my_three_ami_)) - { - ACE_ERROR ((LM_ERROR, - "ERROR Sender (ASYNCH) :my_three_ami_ is NIL !\n")); - return 1; - } - else - { - //Invoke Asynchronous calls to test - my_three_ami_->sendc_plus( new Three_callback_exec_i (), 3); - // derived from CLASS ONE - my_three_ami_->sendc_foo ( new Three_callback_exec_i (),"hoi", 3); - // derived fron CLASS TWO - my_three_ami_->sendc_bar ( new Three_callback_exec_i (), 3); - } - return 0; - } - //============================================================ - // Worker thread for synchronous invocations for One - //============================================================ - synch_one_generator::synch_one_generator ( - ::InterMulti::CCM_Sender_Context_ptr context) - : context_(::InterMulti::CCM_Sender_Context::_duplicate (context)) - { - } - - int synch_one_generator::svc () - { - ::InterMulti::One_var my_one_ami_ = - context_->get_connection_run_my_one (); - - CORBA::String_var answer; - CORBA::Long result = my_one_ami_->foo ( - "Synchronous call foo from class One", - 1, - answer.out ()); - if (result != 1) - { - ACE_ERROR ((LM_ERROR, - "ERROR Sender (SYNCH) : CLASS One foo !\n")); - } - return 0; - } - //============================================================ - // Worker thread for synchronous invocations for One - //============================================================ - synch_three_generator::synch_three_generator ( - ::InterMulti::CCM_Sender_Context_ptr context) - : context_(::InterMulti::CCM_Sender_Context::_duplicate (context)) - { - } - - int synch_three_generator::svc () - { - ::InterMulti::Three_var my_three_ami_ = - context_->get_connection_run_my_three (); - - ::CORBA::String_var answer; - CORBA::Long result = my_three_ami_->foo ( - "Synchronous call foo from class Three, " - " derived from class ONE", - 3 , - answer.out ()); - if (result != 3) - { - ACE_ERROR ((LM_ERROR, - "ERROR Sender (SYNCH) : CLASS Three foo !\n")); - } - return 0; - } - //============================================================ - // Component Executor Implementation Class: Sender_exec_i - //============================================================ Sender_exec_i::Sender_exec_i (void) - { + : nr_of_received_ (0){ } Sender_exec_i::~Sender_exec_i (void) @@ -276,15 +194,19 @@ namespace CIAO_InterMulti_Sender_Impl } // Supported operations and attributes. - // Component attributes. + + // Component attributes and port operations. + // Operations from Components::SessionComponent. + void Sender_exec_i::set_session_context ( ::Components::SessionContext_ptr ctx) { - this->context_ = + this->ciao_context_ = ::InterMulti::CCM_Sender_Context::_narrow (ctx); - if ( ::CORBA::is_nil (this->context_.in ())) + + if ( ::CORBA::is_nil (this->ciao_context_.in ())) { throw ::CORBA::INTERNAL (); } @@ -293,65 +215,93 @@ namespace CIAO_InterMulti_Sender_Impl void Sender_exec_i::configuration_complete (void) { + /* Your code here. */ } void Sender_exec_i::ccm_activate (void) { - asynch_one_generator* asynch_one_gen = - new asynch_one_generator (this->context_.in ()); - asynch_one_gen->activate (THR_NEW_LWP | THR_JOINABLE, 1); + this->asynch_one_gen = + new asynch_one_generator (this->ciao_context_.in (), + this->nr_of_received_); + this->asynch_one_gen->activate (THR_NEW_LWP | THR_JOINABLE, 1); - asynch_two_generator* asynch_two_gen = - new asynch_two_generator (this->context_.in ()); - asynch_two_gen->activate (THR_NEW_LWP | THR_JOINABLE, 1); + this->asynch_two_gen = + new asynch_two_generator (this->ciao_context_.in (), + this->nr_of_received_); + this->asynch_two_gen->activate (THR_NEW_LWP | THR_JOINABLE, 1); - asynch_three_generator* asynch_three_gen = - new asynch_three_generator (this->context_.in ()); - asynch_three_gen->activate (THR_NEW_LWP | THR_JOINABLE, 1); + this->asynch_three_gen = + new asynch_three_generator (this->ciao_context_.in (), + this->nr_of_received_); + this->asynch_three_gen->activate (THR_NEW_LWP | THR_JOINABLE, 1); - synch_one_generator* synch_one_gen = - new synch_one_generator (this->context_.in()); - synch_one_gen->activate (THR_NEW_LWP | THR_JOINABLE, 1); + this->synch_one_gen = + new synch_one_generator (this->ciao_context_.in()); + this->synch_one_gen->activate (THR_NEW_LWP | THR_JOINABLE, 1); - synch_three_generator* synch_three_gen = - new synch_three_generator (this->context_.in()); - synch_three_gen->activate (THR_NEW_LWP | THR_JOINABLE, 1); + this->synch_three_gen = + new synch_three_generator (this->ciao_context_.in()); + this->synch_three_gen->activate (THR_NEW_LWP | THR_JOINABLE, 1); } - } void Sender_exec_i::ccm_passivate (void) { + /* Your code here. */ } void Sender_exec_i::ccm_remove (void) { - if (nr_of_received.value() != 5) + if (this->nr_of_received_.value() != 5) + { + ACE_ERROR ((LM_ERROR, "ERROR: Did not get all callbacks for" + "derived classes." + " Received = %u of 5\n", + this->nr_of_received_.value())); + } + else + { + ACE_DEBUG ((LM_DEBUG, + "OK: All messages received back by Sender\n")); + } + if (this->asynch_one_gen) + { + delete this->asynch_one_gen; + this->asynch_one_gen = 0; + } + if (this->synch_one_gen) + { + delete this->synch_one_gen; + this->synch_one_gen = 0; + } + if (this->asynch_two_gen) + { + delete this->asynch_two_gen; + this->asynch_two_gen = 0; + } + if (this->asynch_three_gen) { - ACE_ERROR ((LM_ERROR, "ERROR: Did not get all callbacks for" - "derived classes." - " Received = %u of 5\n", - nr_of_received.value())); + delete this->asynch_three_gen; + this->asynch_three_gen = 0; } - else + if (this->synch_three_gen) { - ACE_DEBUG ((LM_DEBUG, - "OK: All messages received back by Sender\n")); + delete this->synch_three_gen; + this->synch_three_gen = 0; } } - extern "C" ::Components::EnterpriseComponent_ptr - create_InterMulti_AMI_Sender_Impl (void) + extern "C" INTERMULTI_SENDER_EXEC_Export ::Components::EnterpriseComponent_ptr + create_InterMulti_Sender_Impl (void) { ::Components::EnterpriseComponent_ptr retval = ::Components::EnterpriseComponent::_nil (); - ACE_NEW_RETURN ( + ACE_NEW_NORETURN ( retval, - Sender_exec_i, - ::Components::EnterpriseComponent::_nil ()); + Sender_exec_i); return retval; } diff --git a/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender_exec.h b/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender_exec.h index de72284ecbc..b9bef5738b1 100644 --- a/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender_exec.h +++ b/CIAO/connectors/ami4ccm/tests/InterMulti/Sender/InterMulti_Sender_exec.h @@ -1,126 +1,123 @@ // -*- C++ -*- -// // $Id$ -#ifndef CIAO_INTERMULTI_SENDER_EXEC_H_ -#define CIAO_INTERMULTI_SENDER_EXEC_H_ - +/** + * Code generated by the The ACE ORB (TAO) IDL Compiler v1.8.3 + * 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 + * 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 + **/ +#ifndef CIAO_INTERMULTI_SENDER_EXEC_CTET9E_H_ +#define CIAO_INTERMULTI_SENDER_EXEC_CTET9E_H_ + +#include /**/ "ace/pre.h" +#include "ace/Task.h" #include "InterMulti_SenderEC.h" -#include "InterMulti_Sender_exec_export.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +#include /**/ "InterMulti_Sender_exec_export.h" #include "tao/LocalObject.h" -#include "ace/Task.h" namespace CIAO_InterMulti_Sender_Impl { typedef ACE_Atomic_Op <TAO_SYNCH_MUTEX, CORBA::UShort > Atomic_UShort; - /// Worker threads for asynchronous invocations - class asynch_one_generator : public virtual ACE_Task_Base - { - public: - asynch_one_generator (::InterMulti::CCM_Sender_Context_ptr context); + /// Worker threads for asynchronous invocations + class asynch_one_generator : public virtual ACE_Task_Base + { + public: + asynch_one_generator (::InterMulti::CCM_Sender_Context_ptr context, + Atomic_UShort &nr_of_received); - virtual int svc (void); + virtual int svc (void); - private: - ::InterMulti::CCM_Sender_Context_var context_; - }; + private: + ::InterMulti::CCM_Sender_Context_var context_; + Atomic_UShort &nr_of_received_; + }; - class asynch_two_generator : public virtual ACE_Task_Base - { - public: - asynch_two_generator (::InterMulti::CCM_Sender_Context_ptr context); + class asynch_two_generator : public virtual ACE_Task_Base + { + public: + asynch_two_generator (::InterMulti::CCM_Sender_Context_ptr context, + Atomic_UShort &nr_of_received); - virtual int svc (void); + virtual int svc (void); - private: - ::InterMulti::CCM_Sender_Context_var context_; - }; + private: + ::InterMulti::CCM_Sender_Context_var context_; + Atomic_UShort &nr_of_received_; - class asynch_three_generator : public virtual ACE_Task_Base - { - public: - asynch_three_generator (::InterMulti::CCM_Sender_Context_ptr context); + }; - virtual int svc (void); + class asynch_three_generator : public virtual ACE_Task_Base + { + public: + asynch_three_generator (::InterMulti::CCM_Sender_Context_ptr context, + Atomic_UShort &nr_of_received); - private: - ::InterMulti::CCM_Sender_Context_var context_; - }; + virtual int svc (void); - /// Worker threads for synchronous invocations - class synch_one_generator : public virtual ACE_Task_Base - { - public: - synch_one_generator (::InterMulti::CCM_Sender_Context_ptr context); - virtual int svc (void); + private: + ::InterMulti::CCM_Sender_Context_var context_; + Atomic_UShort &nr_of_received_; + }; - private: - ::InterMulti::CCM_Sender_Context_var context_; - }; - class synch_two_generator : public virtual ACE_Task_Base - { - public: - synch_two_generator (::InterMulti::CCM_Sender_Context_ptr context); - virtual int svc (void); + /// Worker threads for synchronous invocations + class synch_one_generator : public virtual ACE_Task_Base + { + public: + synch_one_generator (::InterMulti::CCM_Sender_Context_ptr context); + virtual int svc (void); - private: - ::InterMulti::CCM_Sender_Context_var context_; - }; - class synch_three_generator : public virtual ACE_Task_Base - { - public: - synch_three_generator (::InterMulti::CCM_Sender_Context_ptr context); - virtual int svc (void); + private: + ::InterMulti::CCM_Sender_Context_var context_; + }; - private: - ::InterMulti::CCM_Sender_Context_var context_; - }; + class synch_two_generator : public virtual ACE_Task_Base + { + public: + synch_two_generator (::InterMulti::CCM_Sender_Context_ptr context); + virtual int svc (void); - class One_callback_exec_i - : public virtual ::InterMulti::CCM_AMI4CCM_OneReplyHandler, - public virtual ::CORBA::LocalObject - { - public: - One_callback_exec_i (void); - virtual ~One_callback_exec_i (void); + private: + ::InterMulti::CCM_Sender_Context_var context_; - virtual void foo (::CORBA::Long ami_return_val, const char * answer); - virtual void foo_excep (::CCM_AMI::ExceptionHolder_ptr excep_holder); - }; + }; + class synch_three_generator : public virtual ACE_Task_Base + { + public: + synch_three_generator (::InterMulti::CCM_Sender_Context_ptr context); + virtual int svc (void); - class Two_callback_exec_i - : public virtual ::InterMulti::CCM_AMI4CCM_TwoReplyHandler, - public virtual ::CORBA::LocalObject - { - public: - Two_callback_exec_i (void); - virtual ~Two_callback_exec_i (void); + private: + ::InterMulti::CCM_Sender_Context_var context_; - virtual void bar (const char * answer); - virtual void bar_excep (::CCM_AMI::ExceptionHolder_ptr excep_holder); - }; + }; - class Three_callback_exec_i - : public virtual ::InterMulti::CCM_AMI4CCM_ThreeReplyHandler, - public virtual ::CORBA::LocalObject - { - public: - Three_callback_exec_i (void); - virtual ~Three_callback_exec_i (void); - - virtual void plus (const char * answer); - virtual void plus_excep (::CCM_AMI::ExceptionHolder_ptr excep_holder); - virtual void foo (::CORBA::Long ami_return_val, const char * answer); - virtual void foo_excep (::CCM_AMI::ExceptionHolder_ptr excep_holder); - virtual void bar (const char * answer); - virtual void bar_excep (::CCM_AMI::ExceptionHolder_ptr excep_holder); - }; + /** + * Component Executor Implementation Class: Sender_exec_i + */ class Sender_exec_i : public virtual Sender_Exec, @@ -130,22 +127,56 @@ namespace CIAO_InterMulti_Sender_Impl Sender_exec_i (void); virtual ~Sender_exec_i (void); - virtual void - set_session_context ( - ::Components::SessionContext_ptr ctx); + //@{ + /** Supported operations and attributes. */ - virtual void configuration_complete (void); + //@} + //@{ + /** Component attributes and port operations. */ + //@} + + //@{ + /** 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); + //@} + + //@{ + /** User defined public operations. */ + + //@} private: - ::InterMulti::CCM_Sender_Context_var context_; + ::InterMulti::CCM_Sender_Context_var ciao_context_; + + //@{ + /** Component attributes. */ + //@} + + //@{ + /** User defined members. */ + asynch_one_generator* asynch_one_gen; + synch_one_generator* synch_one_gen; + asynch_two_generator* asynch_two_gen; + asynch_three_generator* asynch_three_gen; + synch_three_generator* synch_three_gen; + Atomic_UShort nr_of_received_; + //@} + + //@{ + /** User defined private operations. */ + + //@} }; extern "C" INTERMULTI_SENDER_EXEC_Export ::Components::EnterpriseComponent_ptr - create_InterMulti_AMI_Sender_Impl (void); + create_InterMulti_Sender_Impl (void); } +#include /**/ "ace/post.h" + #endif /* ifndef */ diff --git a/CIAO/connectors/ami4ccm/tests/InterMulti/descriptors/Plan.cdp b/CIAO/connectors/ami4ccm/tests/InterMulti/descriptors/Plan.cdp index efff7354436..cfab2b91a67 100644 --- a/CIAO/connectors/ami4ccm/tests/InterMulti/descriptors/Plan.cdp +++ b/CIAO/connectors/ami4ccm/tests/InterMulti/descriptors/Plan.cdp @@ -16,7 +16,7 @@ <kind>tk_string</kind> </type> <value> - <string>create_InterMulti_AMI_Receiver_Impl</string> + <string>create_InterMulti_Receiver_Impl</string> </value> </value> </execParameter> @@ -67,7 +67,7 @@ <kind>tk_string</kind> </type> <value> - <string>create_InterMulti_AMI_Sender_Impl</string> + <string>create_InterMulti_Sender_Impl</string> </value> </value> </execParameter> |