Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

Dynamic_Adapter.h

Go to the documentation of this file.
00001 // This may look like C, but it's really -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file    Dynamic_Adapter.h
00006  *
00007  *  $Id: Dynamic_Adapter.h,v 1.1.1.2 2003/02/21 18:36:44 chad Exp $
00008  *
00009  *  @author  Jeff Parsons <parsons@cs.wustl.edu>
00010  */
00011 //=============================================================================
00012 
00013 
00014 #ifndef TAO_DYNAMIC_ADAPTER_H
00015 #define TAO_DYNAMIC_ADAPTER_H
00016 #include "ace/pre.h"
00017 
00018 #include "tao/corbafwd.h"
00019 
00020 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00021 # pragma once
00022 #endif /* ACE_LACKS_PRAGMA_ONCE */
00023 
00024 #include "ace/Service_Object.h"
00025 
00026 class TAO_GIOP_Twoway_Invocation;
00027 
00028 /**
00029  * @class TAO_Dynamic_Adapter
00030  *
00031  * @brief TAO_Dynamic_Adapter.
00032  *
00033  * Class that adapts various functions in the CORBA namespace
00034  * related to DII/DSI, which is no longer found in the TAO library.
00035  * This is a base for the actual implementation in the DynamicInterface
00036  * library.
00037  */
00038 class TAO_Export TAO_Dynamic_Adapter : public ACE_Service_Object
00039 {
00040 public:
00041   virtual ~TAO_Dynamic_Adapter (void);
00042 
00043   // CORBA::Object::_create_request and CORBA::Object::_request.
00044 
00045   virtual void create_request (CORBA::Object_ptr obj,
00046                                CORBA::ORB_ptr orb,
00047                                const char *operation,
00048                                CORBA::NVList_ptr arg_list,
00049                                CORBA::NamedValue_ptr result,
00050                                CORBA::ExceptionList_ptr exceptions,
00051                                CORBA::Request_ptr &request,
00052                                CORBA::Flags req_flags
00053                                ACE_ENV_ARG_DECL_WITH_DEFAULTS) = 0;
00054 
00055   virtual CORBA::Request_ptr request (CORBA::Object_ptr obj,
00056                                       CORBA::ORB_ptr orb,
00057                                       const char *op
00058                                       ACE_ENV_ARG_DECL_WITH_DEFAULTS) = 0;
00059 
00060   // CORBA::is_nil and CORBA::release for Context, Request, and ServerRequest.
00061 
00062   virtual CORBA::Boolean context_is_nil (CORBA::Context_ptr ctx) = 0;
00063 
00064   virtual CORBA::Boolean request_is_nil (CORBA::Request_ptr req) = 0;
00065 
00066   virtual CORBA::Boolean server_request_is_nil (CORBA::ServerRequest_ptr req) = 0;
00067 
00068   virtual void context_release (CORBA::Context_ptr ctx) = 0;
00069 
00070   virtual void request_release (CORBA::Request_ptr req) = 0;
00071 
00072   virtual void server_request_release (CORBA::ServerRequest_ptr req) = 0;
00073 
00074   // CORBA::ORB::create_exception_list.
00075   virtual void create_exception_list (CORBA::ExceptionList_ptr &
00076                                       ACE_ENV_ARG_DECL_NOT_USED) = 0;
00077 };
00078 
00079 #include "ace/post.h"
00080 #endif /* TAO_DYNAMIC_ADAPTER_H */

Generated on Mon Jun 16 13:48:18 2003 for TAO by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002