RequestInfo_Util.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 // ===================================================================
00004 /**
00005  *  @file   RequestInfo_Util.h
00006  *
00007  *  $Id: RequestInfo_Util.h 77151 2007-02-15 13:24:41Z johnnyw $
00008  *
00009  *  @author Ossama Othman <ossama@uci.edu>
00010  */
00011 // ===================================================================
00012 
00013 #ifndef TAO_REQUEST_INFO_UTIL_H
00014 #define TAO_REQUEST_INFO_UTIL_H
00015 
00016 #include /**/ "ace/pre.h"
00017 
00018 #include "tao/Basic_Types.h"
00019 
00020 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00021 # pragma once
00022 #endif /* ACE_LACKS_PRAGMA_ONCE */
00023 
00024 #include "tao/orbconf.h"
00025 
00026 #if TAO_HAS_INTERCEPTORS == 1
00027 
00028 #include "tao/PI/pi_export.h"
00029 
00030 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00031 
00032 namespace CORBA
00033 {
00034   class StringSeq;
00035   class Any;
00036 }
00037 
00038 namespace Dynamic
00039 {
00040   class ParameterList;
00041   class ExceptionList;
00042   typedef CORBA::StringSeq ContextList;
00043   typedef CORBA::StringSeq RequestContext;
00044 }
00045 
00046 /**
00047  * @class TAO_RequestInfo_Util
00048  *
00049  * @brief Helper class that provides methods useful for both
00050  * PortableInterceptor::ClientRequestInfo and
00051  * PortableInterceptor::ServerRequestInfo objects.
00052  */
00053 class TAO_PI_Export TAO_RequestInfo_Util
00054 {
00055 public:
00056 
00057   /**
00058    * @name Factory Methods
00059    *
00060    * These are methods called by TAO_{Client,Server}RequestInfo and
00061    * their subclasses.  Rather than having the same factory code in
00062    * each subclass, we factor the common code in to this utility
00063    * class.
00064    */
00065   //@{
00066   static Dynamic::ParameterList * make_parameter_list (void);
00067 
00068   static Dynamic::ExceptionList * make_exception_list (void);
00069 
00070   static Dynamic::ContextList * make_context_list (void);
00071 
00072   static Dynamic::RequestContext * make_request_context (void);
00073 
00074   static CORBA::Any * make_any (CORBA::Boolean tk_void_any);
00075   //@}
00076 };
00077 
00078 TAO_END_VERSIONED_NAMESPACE_DECL
00079 
00080 #endif
00081 
00082 #include /**/ "ace/post.h"
00083 
00084 #endif /* TAO_REQUEST_INFO_UTIL_H */

Generated on Tue Feb 2 17:42:01 2010 for TAO_PI by  doxygen 1.4.7