TAO::SL3::SecurityCurrent Class Reference

SecurityLevel3::SecurityCurrent implementation. More...

#include <SL3_SecurityCurrent.h>

Inheritance diagram for TAO::SL3::SecurityCurrent:

Inheritance graph
[legend]
Collaboration diagram for TAO::SL3::SecurityCurrent:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SecurityCurrent (size_t tss_slot, TAO_ORB_Core *oc)
 Constructor.

size_t tss_slot (void) const
SecurityLevel3::SecurityCurrent Methods
Methods required by the SecurityLevel3::SecurityCurrent interface.

virtual SecurityLevel3::ClientCredentials_ptr client_credentials () throw (CORBA::SystemException)
virtual CORBA::Boolean request_is_local () throw (CORBA::SystemException)

Protected Member Functions

 ~SecurityCurrent (void)
 Destructor.


Private Member Functions

SecurityCurrent_Implimplementation (void)
Retricted Copying and Assignment
Prevent copying through the copy constructor and the assignment operator.

 SecurityCurrent (const SecurityCurrent &)
void operator= (const SecurityCurrent &)

Private Attributes

const size_t tss_slot_
 Thread-specific storage slot assigned to this object.

TAO_ORB_Core *const  orb_core_

Detailed Description

SecurityLevel3::SecurityCurrent implementation.

Thread-specific information may be retrieved from the target security service through this object.

Note:
This SecurityCurrent implementation basically a variant of the bridge design pattern. All operations are delegated on to concrete implementations.

Definition at line 56 of file SL3_SecurityCurrent.h.


Constructor & Destructor Documentation

TAO::SL3::SecurityCurrent::SecurityCurrent size_t  tss_slot,
TAO_ORB_Core oc
 

Constructor.

TAO::SL3::SecurityCurrent::~SecurityCurrent void   )  [protected]
 

Destructor.

Protected destructor to enforce proper memory management through the reference counting mechanism.

Definition at line 25 of file SL3_SecurityCurrent.cpp.

00026 {
00027 }

TAO::SL3::SecurityCurrent::SecurityCurrent const SecurityCurrent  )  [private]
 


Member Function Documentation

virtual SecurityLevel3::ClientCredentials_ptr TAO::SL3::SecurityCurrent::client_credentials  )  throw (CORBA::SystemException) [virtual]
 

ACE_INLINE TAO::SL3::SecurityCurrent_Impl * TAO::SL3::SecurityCurrent::implementation void   )  [private]
 

The pointer is actually one to a concrete implementation provided by the underlying security mechanism. For example, SSLIOP implements its own SSLIOP-specific operations corresponding to the ones exposed by the SecurityCurrent interface. Similarly, SECIOP would do the same.

There is no function that places the implementation pointer in TSS. The underlying security mechanism does that.

Definition at line 17 of file SL3_SecurityCurrent.inl.

References TAO_ORB_Core::get_tss_resource().

00018 {
00019   TAO::SL3::SecurityCurrent_Impl *impl =
00020     static_cast<TAO::SL3::SecurityCurrent_Impl *> (
00021       this->orb_core_->get_tss_resource (this->tss_slot_));
00022 
00023   return impl;
00024 }

void TAO::SL3::SecurityCurrent::operator= const SecurityCurrent  )  [private]
 

virtual CORBA::Boolean TAO::SL3::SecurityCurrent::request_is_local  )  throw (CORBA::SystemException) [virtual]
 

TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE size_t TAO::SL3::SecurityCurrent::tss_slot void   )  const
 

The concrete thread-specific storage SecurityCurrent implementations will each use this slot ID.

Definition at line 11 of file SL3_SecurityCurrent.inl.

00012 {
00013   return this->tss_slot_;
00014 }


Member Data Documentation

TAO_ORB_Core* const TAO::SL3::SecurityCurrent::orb_core_ [private]
 

Pointer to the ORB Core corresponding to the ORB with which this object is registered.

Reimplemented from CORBA::Object.

Definition at line 133 of file SL3_SecurityCurrent.h.

const size_t TAO::SL3::SecurityCurrent::tss_slot_ [private]
 

Thread-specific storage slot assigned to this object.

Definition at line 129 of file SL3_SecurityCurrent.h.


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 13:52:51 2006 for TAO_Security by doxygen 1.3.6