3 // ===================================================================
5 * @file RequestInfo_Util.h
7 * @author Ossama Othman <ossama@uci.edu>
9 // ===================================================================
11 #ifndef TAO_REQUEST_INFO_UTIL_H
12 #define TAO_REQUEST_INFO_UTIL_H
14 #include /**/ "ace/pre.h"
16 #include "tao/Basic_Types.h"
18 #if !defined (ACE_LACKS_PRAGMA_ONCE)
20 #endif /* ACE_LACKS_PRAGMA_ONCE */
22 #include "tao/orbconf.h"
24 #if TAO_HAS_INTERCEPTORS == 1
26 #include "tao/PI/pi_export.h"
28 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
40 typedef CORBA::StringSeq ContextList
;
41 typedef CORBA::StringSeq RequestContext
;
45 * @class TAO_RequestInfo_Util
47 * @brief Helper class that provides methods useful for both
48 * PortableInterceptor::ClientRequestInfo and
49 * PortableInterceptor::ServerRequestInfo objects.
51 class TAO_PI_Export TAO_RequestInfo_Util
55 * @name Factory Methods
57 * These are methods called by TAO_{Client,Server}RequestInfo and
58 * their subclasses. Rather than having the same factory code in
59 * each subclass, we factor the common code in to this utility
63 static Dynamic::ParameterList
* make_parameter_list ();
65 static Dynamic::ExceptionList
* make_exception_list ();
67 static Dynamic::ContextList
* make_context_list ();
69 static Dynamic::RequestContext
* make_request_context ();
71 static CORBA::Any
* make_any (CORBA::Boolean tk_void_any
);
75 TAO_END_VERSIONED_NAMESPACE_DECL
79 #include /**/ "ace/post.h"
81 #endif /* TAO_REQUEST_INFO_UTIL_H */