diff options
author | sumedh <sumedh@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-05-01 19:08:38 +0000 |
---|---|---|
committer | sumedh <sumedh@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-05-01 19:08:38 +0000 |
commit | 3f57d6d948aa0a42bd373a7f6e8f58a4ceb84133 (patch) | |
tree | 98e35b4ce5de5e2aa9d8eaebee8a6622a3c53e2f /TAO/orbsvcs/orbsvcs/AV | |
parent | 39eeff865b75c7a5483527ab24f2af8f2944ba6f (diff) | |
download | ATCD-3f57d6d948aa0a42bd373a7f6e8f58a4ceb84133.tar.gz |
*** empty log message ***
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/AV')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.cpp | 80 | ||||
-rw-r--r-- | TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h | 6 |
2 files changed, 63 insertions, 23 deletions
diff --git a/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.cpp b/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.cpp index 45da4aabf5c..a80129ea560 100644 --- a/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.cpp +++ b/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.cpp @@ -285,17 +285,29 @@ template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl> int TAO_AV_Endpoint_Reactive_Strategy <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activate (void) { - if ( (this->activate_stream_endpoint () == -1) || - (this->activate_vdev () == -1) || - (this->activate_mediactrl () == -1)) - return -1; - else - return 0; + TAO_TRY + { + this->activate_stream_endpoint (TAO_TRY_ENV); + TAO_CHECK_ENV; + + this->activate_vdev (TAO_TRY_ENV); + TAO_CHECK_ENV; + + this->activate_mediactrl (TAO_TRY_ENV); + TAO_CHECK_ENV; + } + TAO_CATCHANY + { + TAO_TRY_ENV.print_exception ("TAO_Endpoint_Process_Strategy::activate"); + return -1; + } + TAO_ENDTRY; + return 0; } template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl> int -TAO_AV_Endpoint_Reactive_Strategy <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activate_vdev (void) +TAO_AV_Endpoint_Reactive_Strategy <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activate_vdev (CORBA::Environment &env) { // Bridge pattern. Allow subclasses to override this behavior this->vdev_ = 0; @@ -303,7 +315,7 @@ TAO_AV_Endpoint_Reactive_Strategy <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activ return -1; this->orb_manager_->activate_under_child_poa ("VDev", - vdev, + this->vdev_, env); TAO_CHECK_ENV_RETURN (env, -1); return 0; @@ -312,14 +324,11 @@ TAO_AV_Endpoint_Reactive_Strategy <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activ template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl> int -TAO_AV_Endpoint_Reactive_Strategy <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activate_mediactrl (void) +TAO_AV_Endpoint_Reactive_Strategy <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activate_mediactrl (CORBA::Environment &env) { - T_MediaCtrl *media_ctrl; - ACE_NEW_RETURN (media_ctrl, - T_MediaCtrl, - -1); - - TAO_CHECK_ENV_RETURN (env, -1); + T_MediaCtrl *media_ctrl = 0; + if (this->make_mediactrl (media_ctrl) == -1) + return -1; this->orb_manager_->activate_under_child_poa ("MediaCtrl", media_ctrl, @@ -339,6 +348,37 @@ TAO_AV_Endpoint_Reactive_Strategy <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activ return 0; } +template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl> +int +TAO_AV_Endpoint_Reactive_Strategy<T_StreamEndpoint, T_VDev, T_MediaCtrl>::make_stream_endpoint (T_StreamEndpoint *&stream_endpoint) +{ + ACE_NEW_RETURN (stream_endpoint, + T_StreamEndpoint, + -1); + return 0; +} + +template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl> +int +TAO_AV_Endpoint_Reactive_Strategy<T_StreamEndpoint, T_VDev, T_MediaCtrl>::make_vdev (T_VDev *&vdev) +{ + ACE_NEW_RETURN (vdev, + T_VDev, + -1); + return 0; +} + +template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl> +int +TAO_AV_Endpoint_Reactive_Strategy<T_StreamEndpoint, T_VDev, T_MediaCtrl>::make_mediactrl (T_MediaCtrl *&media_ctrl) +{ + ACE_NEW_RETURN (media_ctrl, + T_MediaCtrl, + -1); + return 0; +} + + // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- @@ -359,7 +399,7 @@ TAO_AV_Endpoint_Reactive_Strategy_A<T_StreamEndpoint, T_VDev, T_MediaCtrl>::crea { if (this->activate () == -1) ACE_ERROR_RETURN ((LM_ERROR, - "(%P|%t) TAO_AV_Endpoint_Process_Strategy: Error in activate ()\n"), + "(%P|%t) TAO_AV_Endpoint_Process_Strategy_A: Error in activate ()\n"), -1); stream_endpoint = this->stream_endpoint_a_; @@ -370,7 +410,7 @@ TAO_AV_Endpoint_Reactive_Strategy_A<T_StreamEndpoint, T_VDev, T_MediaCtrl>::crea template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl> int -TAO_AV_Endpoint_Reactive_Strategy_A <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activate_stream_endpoint (void) +TAO_AV_Endpoint_Reactive_Strategy_A <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activate_stream_endpoint (CORBA::Environment &env) { this->stream_endpoint_a_ = 0; ACE_NEW_RETURN (this->stream_endpoint_a_, @@ -395,7 +435,7 @@ TAO_AV_Endpoint_Reactive_Strategy_B <T_StreamEndpoint, T_VDev, T_MediaCtrl>::TAO template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl> int -TAO_AV_Endpoint_Reactive_Strategy_B <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activate_stream_endpoint (void) +TAO_AV_Endpoint_Reactive_Strategy_B <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activate_stream_endpoint (CORBA::Environment &env) { this->stream_endpoint_b_ = 0; ACE_NEW_RETURN (this->stream_endpoint_b_, @@ -416,7 +456,7 @@ TAO_AV_Endpoint_Reactive_Strategy_B<T_StreamEndpoint, T_VDev, T_MediaCtrl>::crea { if (this->activate () == -1) ACE_ERROR_RETURN ((LM_ERROR, - "(%P|%t) TAO_AV_Endpoint_Process_Strategy: Error in activate ()\n"), + "(%P|%t) TAO_AV_Endpoint_Process_Strategy_B: Error in activate ()\n"), -1); stream_endpoint = this->stream_endpoint_b_; @@ -650,8 +690,8 @@ TAO_AV_Child_Process <T_StreamEndpoint, T_VDev, T_MediaCtrl>::register_stream_e template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl> TAO_AV_Child_Process_A <T_StreamEndpoint, T_VDev, T_MediaCtrl>::TAO_AV_Child_Process_A () - : stream_endpoint_name_ ("Stream_Endpoint_A") { + this->stream_endpoint_name_ = "Stream_Endpoint_A"; } // ---------------------------------------------------------------------- diff --git a/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h b/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h index 724e0f304b8..ac38f6ce4c7 100644 --- a/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h +++ b/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h @@ -148,11 +148,11 @@ class TAO_ORBSVCS_Export TAO_AV_Endpoint_Reactive_Strategy virtual int activate (void); - virtual int activate_stream_endpoint (void); + virtual int activate_stream_endpoint (CORBA::Environment &env); - virtual int activate_vdev (void); + virtual int activate_vdev (CORBA::Environment &env); - virtual int activate_mediactrl (void); + virtual int activate_mediactrl (CORBA::Environment &env); virtual int make_vdev (T_VDev *&vdev); // Bridge method to create a vdev, a la Acceptor. Applications |