summaryrefslogtreecommitdiff
path: root/TAO
diff options
context:
space:
mode:
authorOssama Othman <ossama-othman@users.noreply.github.com>2000-12-19 00:00:44 +0000
committerOssama Othman <ossama-othman@users.noreply.github.com>2000-12-19 00:00:44 +0000
commit15745c869f97bb6bf70823d56b399cb63a985cbb (patch)
treee203d5c3bf0434937b8d2ea669fe7cf2f467374f /TAO
parent88126f861c8d8aff5108f3091a6d6139679e5396 (diff)
downloadATCD-15745c869f97bb6bf70823d56b399cb63a985cbb.tar.gz
ChangeLogTag:Mon Dec 18 18:58:00 2000 Ossama Othman <ossama@uci.edu>
Diffstat (limited to 'TAO')
-rw-r--r--TAO/ChangeLogs/ChangeLog-02a13
-rw-r--r--TAO/docs/interceptors.html51
-rw-r--r--TAO/tao/PortableServer/ServerRequestInfo.cpp4
3 files changed, 48 insertions, 20 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a
index a60c32409f7..4dba7985637 100644
--- a/TAO/ChangeLogs/ChangeLog-02a
+++ b/TAO/ChangeLogs/ChangeLog-02a
@@ -1,3 +1,16 @@
+Mon Dec 18 18:58:00 2000 Ossama Othman <ossama@uci.edu>
+
+ * docs/interceptors.html:
+
+ Updated TAO's Portable Interceptor release notes to reflect the
+ new updates and fixes made to the TAO's Portable Interceptor
+ support.
+
+ * tao/PortableServer/ServerRequestInfo.cpp (forward_reference):
+
+ Fixed "better conversion sequence" warning by explicitly using
+ the "CORBA::Object_var::in()" accessor.2
+
Mon Dec 18 14:09:31 2000 Ossama Othman <ossama@uci.edu>
* tao/Invocation.h:
diff --git a/TAO/docs/interceptors.html b/TAO/docs/interceptors.html
index 6285b17700b..5969e14442c 100644
--- a/TAO/docs/interceptors.html
+++ b/TAO/docs/interceptors.html
@@ -65,13 +65,19 @@ features which would not be supported when the spec gets
finalized.</p>
<p>We have modifed TAO's interceptor interface to conform with the
-proposed spec. The current version of interceptors consists of support
-for the <CODE>Dynamic</CODE> module as well as the canonical
-interception points including (1) <CODE>send_request</CODE>,
-(2) <CODE>receive_request</CODE>, (3) <CODE>send_reply</CODE>,
-(4) <CODE>receive_reply</CODE>, (5) <CODE>send_exception</CODE>,
-(6) <CODE>receive_exception</CODE>, and
-(7) <CODE>establish_components</CODE> (specific to
+proposed spec. The current implementation of interceptors consists of
+support for the <CODE>Dynamic</CODE> module as well as the canonical
+interception points including
+(1) <CODE>send_request</CODE>,
+(2) <CODE>receive_reply</CODE>,
+(3) <CODE>receive_exception</CODE>,
+(4) <CODE>receive_other</CODE>,
+(5) <CODE>receive_request_service_contexts</CODE>,
+(6) <CODE>receive_request</CODE>,
+(7) <CODE>send_reply</CODE>,
+(8) <CODE>send_exception</CODE>,
+(9) <CODE>send_other</CODE>, and
+(10) <CODE>establish_components</CODE> (specific to
<CODE>IORInterceptor</CODE>s). Each request interception point is
passed a <CODE>RequestInfo</CODE> object which encapsulates the
details of the operation like arguments, etc. The IOR interception
@@ -298,13 +304,22 @@ module PortableInterceptor
<hr><P>
<h3><a name="status">Current Status</a></h3>
<ul>
- <li>The basic infrastructure is in place as well as the canonical
- request interception points: <CODE>send_request</CODE>,
- <CODE>receive_request</CODE>, <CODE>send_exception</CODE>,
- <CODE>receive_exception</CODE>, <CODE>send_reply</CODE>, and
- <CODE>receive_reply</CODE>. The remaining request interception
- points are mostly for specific applications like AMI, FT,
- etc. which will be implemented as and when needed.
+ <li>The core infrastructure is in place as well as the canonical
+ request and IOR interception points:
+ <CODE>send_request</CODE>,
+ <CODE>receive_reply</CODE>,
+ <CODE>receive_exception</CODE>,
+ <CODE>receive_other</CODE>,
+ <CODE>receive_request_service_contexts</CODE>,
+ <CODE>receive_request</CODE>,
+ <CODE>send_reply</CODE>,
+ <CODE>send_exception</CODE>,
+ <CODE>send_other</CODE>, and
+ <CODE>establish_components</CODE>.
+ The remaining client request interception point,
+ <CODE>send_poll</CODE>, is <EM>time independent invocation</EM>
+ specific. Once TAO supports time independent invocations, the
+ <CODE>send_poll</CODE> interception point will be implemented.
<li><CODE>ORBInitializer</CODE> registration has been implemented,
as per the spec.
<li>Registration of interceptors is now conformant to the spec
@@ -326,6 +341,9 @@ module PortableInterceptor
<li>Basically, all <CODE>ORBInitInfo</CODE> methods have been
implemented except <CODE>allocate_slot_id</CODE> and
<CODE>codec_factory</CODE>.
+ <li>Implemented most of the remaining
+ <CODE>ClientRequestInfo</CODE>, <CODE>ServerRequestInfo</CODE>
+ and <CODE>IORInfo</CODE> methods.
</ul>
<hr><P>
@@ -346,10 +364,7 @@ module PortableInterceptor
to create the <CODE>octet</CODE> sequence that is part of an
<CODE>IOP::TaggedComponent</CODE>. This means that it could
compliment the IOR interceptor support.
- <li>Implement the remaining interception points, namely:
- <CODE>receive_other</CODE>,
- <CODE>receive_request_service_contexts</CODE> and
- <CODE>send_other</CODE>. The <CODE>send_poll</CODE>
+ <li>The <CODE>send_poll</CODE> request interception point
implementation will most likely be deferred until TII is
supported in TAO.
</ol>
diff --git a/TAO/tao/PortableServer/ServerRequestInfo.cpp b/TAO/tao/PortableServer/ServerRequestInfo.cpp
index f9a3f202e3f..c469667ca5c 100644
--- a/TAO/tao/PortableServer/ServerRequestInfo.cpp
+++ b/TAO/tao/PortableServer/ServerRequestInfo.cpp
@@ -117,13 +117,13 @@ TAO_ServerRequestInfo::forward_reference (CORBA::Environment &ACE_TRY_ENV)
ACE_THROW_RETURN (CORBA::BAD_INV_ORDER (),
CORBA::Object::_nil ());
- // We don't get the forward reference from the TAO_Server_Request
+ // We don't get the forward reference from the TAO_ServerRequest
// object since it may not have been set there. For example, this
// is the case when a Servant Manager throws a
// PortableServer::ForwardRequest exception. As such, we only
// return the one stored in this object since it is explicitly set
// by the responsible request forwarding code.
- return CORBA::Object::_duplicate (this->forward_reference_);
+ return CORBA::Object::_duplicate (this->forward_reference_.in ());
}
CORBA::Any *