Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

# TAO::PICurrent_Impl Class Reference

Implementation of the PortableInterceptor::Current interface. More...

`#include <PICurrent_Impl.h>`

Collaboration diagram for TAO::PICurrent_Impl:

[legend]
List of all members.

## Public Types
typedef ACE_Array_Base< CORBA::Any > | Table
| Typedef for the underyling "slot table.".
## Public Member Functions
| PICurrent_Impl (void)
| Constructor.
| ~PICurrent_Impl (void)
| Destructor.
CORBA::Any * | get_slot (PortableInterceptor::SlotId identifier ACE_ENV_ARG_DECL) throw (CORBA::SystemException, PortableInterceptor::InvalidSlot)
void | set_slot (PortableInterceptor::SlotId identifier, const CORBA::Any &data ACE_ENV_ARG_DECL) throw (CORBA::SystemException, PortableInterceptor::InvalidSlot)
| Set information in the slot table at the given SlotId.
void | copy_callback (PICurrent_Copy_Callback *cb)
void | destruction_callback (PICurrent_Impl *p)
void | execute_destruction_callback (Table *old_lc_slot_table)
Table & | slot_table (void)
| Return a reference to the underlying slot table.
Table & | current_slot_table (void)
void | lc_slot_table (PICurrent_Impl *p)
| Logically (shallow) copy the given slot table.
Table * | lc_slot_table (void) const
| Return pointer to the logically copied slot table.
## Private Member Functions
| PICurrent_Impl (const PICurrent_Impl &)
void | operator= (const PICurrent_Impl &)
## Private Attributes
Table | slot_table_
| Array of CORBA::Anys that is the underlying "slot table.".
Table * | lc_slot_table_
PICurrent_Copy_Callback * | copy_callback_
PICurrent_Impl * | destruction_callback_

## Detailed Description

Implementation of the PortableInterceptor::Current interface.

This class implements both the "request scope current" and the "thread scope current" objects as required by Portable Interceptors.

## Member Typedef Documentation

typedef ACE_Array_Base<CORBA::Any> TAO::PICurrent_Impl::Table

| Typedef for the underyling "slot table.".

## Constructor & Destructor Documentation

TAO::PICurrent_Impl::PICurrent_Impl | ( | void |  | ) |

| Constructor.

TAO::PICurrent_Impl::~PICurrent_Impl | ( | void |  | ) |

| Destructor.

TAO::PICurrent_Impl::PICurrent_Impl | ( | const PICurrent_Impl & |  | ) | `[private]`

## Member Function Documentation

ACE_INLINE void TAO::PICurrent_Impl::copy_callback | ( | PICurrent_Copy_Callback * | cb | ) |

| Set the PICurrent copy callback object responsible for deep copying the source PICurrent's slot table.

ACE_INLINE TAO::PICurrent_Impl::Table & TAO::PICurrent_Impl::current_slot_table | ( | void |  | ) |

| Returns: Logically copied slot table if available, otherwise underlying slot table.

ACE_INLINE void TAO::PICurrent_Impl::destruction_callback | ( | PICurrent_Impl * | p | ) |

| Set the PICurrent destruction callback object that will be notified of this object's destruction.

void TAO::PICurrent_Impl::execute_destruction_callback | ( | Table * | old_lc_slot_table | ) |

CORBA::Any * TAO::PICurrent_Impl::get_slot | ( | PortableInterceptor::SlotId identifier | ACE_ENV_ARG_DECL | ) | throw (CORBA::SystemException, PortableInterceptor::InvalidSlot)

| Retrieve information stored in the slot table at the given SlotId.

ACE_INLINE TAO::PICurrent_Impl::Table * TAO::PICurrent_Impl::lc_slot_table | ( | void |  | ) | const

| Return pointer to the logically copied slot table. Returns: Zero if no logically copied slot table. Non-zero otherwise.

ACE_INLINE void TAO::PICurrent_Impl::lc_slot_table | ( | PICurrent_Impl * | p | ) |

| Logically (shallow) copy the given slot table.

void TAO::PICurrent_Impl::operator= | ( | const PICurrent_Impl & |  | ) | `[private]`

void TAO::PICurrent_Impl::set_slot | ( | PortableInterceptor::SlotId | identifier,
|  | const CORBA::Any &data | ACE_ENV_ARG_DECL
| ) | throw (CORBA::SystemException, PortableInterceptor::InvalidSlot)

| Set information in the slot table at the given SlotId.

ACE_INLINE TAO::PICurrent_Impl::Table & TAO::PICurrent_Impl::slot_table | ( | void |  | ) |

| Return a reference to the underlying slot table.

## Member Data Documentation

PICurrent_Copy_Callback* TAO::PICurrent_Impl::copy_callback_`[private]`

| Callback object responsible for performing deep copies of a PICurrent's slot table.

PICurrent_Impl* TAO::PICurrent_Impl::destruction_callback_`[private]`

| PICurrent_Impl object that will be notified of this object's destruction.

Table* TAO::PICurrent_Impl::lc_slot_table_`[private]`

| Table that was logically copied from a PICurrent in another scope, i.e. either the request scope or the thread scope.

Table TAO::PICurrent_Impl::slot_table_`[private]`

| Array of CORBA::Anys that is the underlying "slot table.".

The documentation for this class was generated from the following files:

- PICurrent_Impl.h
- PICurrent_Impl.cpp
- PICurrent_Impl.inl