/usr/include/tao/ClientRequestInterceptor_Adapter.h is in libtao-dev 6.0.1-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | // -*- C++ -*-
//=============================================================================
/**
* @file ClientRequestInterceptor_Adapter.h
*
* $Id: ClientRequestInterceptor_Adapter.h 85371 2009-05-18 13:39:38Z sma $
*
* This file an adapter class to simplify the support of
* interceptors.
*
* @author Nanbor Wang <nanbor@cs.wustl.edu>
* @author Ossama Othman <ossama@uci.edu>
* @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
*/
//=============================================================================
#ifndef TAO_CLIENT_REQUEST_INTERCEPTOR_ADAPTER_H
#define TAO_CLIENT_REQUEST_INTERCEPTOR_ADAPTER_H
#include /**/ "ace/pre.h"
#include /**/ "tao/TAO_Export.h"
#include "tao/RequestInterceptor_Adapter.h"
#if !defined (ACE_LACKS_PRAGMA_ONCE)
# pragma once
#endif /* ACE_LACKS_PRAGMA_ONCE */
#include "tao/Invocation_Utils.h"
#include "tao/Basic_Types.h"
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
class TAO_ClientRequestInfo;
namespace PortableInterceptor
{
class ClientRequestInterceptor;
typedef ClientRequestInterceptor *ClientRequestInterceptor_ptr;
typedef CORBA::Short ReplyStatus;
}
namespace CORBA
{
class PolicyList;
}
namespace TAO
{
class Invocation_Base;
/**
* @class ClientRequestInterceptor_Adapter
*
* @brief A convenient helper class to invoke registered client request
* interceptors
*
* This class invokes all registered interceptors at interception
* point, and enforces flow rules dictated by the Portable Interceptor
* specification/chapter.
*/
class TAO_Export ClientRequestInterceptor_Adapter
: public RequestInterceptor_Adapter
{
public:
virtual ~ClientRequestInterceptor_Adapter (void);
/**
* @name PortableInterceptor Client Side Interception Points
*
* Each of these methods corresponds to a client side interception
* point. There are no "intermediate" interception points on the
* client side, only "starting" and "ending" interception points.
*
*/
//@{
/// This method implements one of the "starting" client side
/// interception points.
virtual void send_request (Invocation_Base &invocation) = 0;
/// This method implements one of the "ending" client side
/// interception point.
virtual void receive_reply (Invocation_Base &invocation) = 0;
/// This method implements one of the "ending" client side
/// interception point.
virtual void receive_exception (Invocation_Base &invocation) = 0;
/// This method implements one of the "ending" client side
/// interception point.
virtual void receive_other (Invocation_Base &invocation) = 0;
/// Register an interceptor.
virtual void add_interceptor (
PortableInterceptor::ClientRequestInterceptor_ptr interceptor) = 0;
/// Register an interceptor with policies.
virtual void add_interceptor (
PortableInterceptor::ClientRequestInterceptor_ptr interceptor,
const CORBA::PolicyList& policies) = 0;
/// Convert TAO Invocation status to a PI status
virtual PortableInterceptor::ReplyStatus pi_reply_status (
TAO::Invocation_Base const &invocation_base) = 0;
};
}
TAO_END_VERSIONED_NAMESPACE_DECL
#include /**/ "ace/post.h"
#endif /* TAO_CLIENT_REQUEST_INTERCEPTOR_ADAPTER_H */
|