CORBA::Principal Class Reference

A "Principal" identifies an authenticated entity in the network administration framework. More...

#include <Principal.h>

Collaboration diagram for CORBA::Principal:

Collaboration graph
[legend]
List of all members.

Public Types

typedef Principal_ptr _ptr_type
typedef Principal_var _var_type

Public Member Functions

CORBA::ULong _incr_refcnt (void)
CORBA::ULong _decr_refcnt (void)
 Principal (void)

Static Public Member Functions

Principal_duplicate (Principal *)
Principal_nil (void)

Public Attributes

CORBA::OctetSeq id

Protected Member Functions

 ~Principal (void)
 Destructor.


Private Member Functions

Principaloperator= (const CORBA::Principal_ptr &)
 Principal (const CORBA::Principal_ptr &)

Private Attributes

ACE_Atomic_Op< TAO_SYNCH_MUTEX,
CORBA::ULong
refcount_
 Reference counter.


Detailed Description

A "Principal" identifies an authenticated entity in the network administration framework.

Identities are used to control acccess (authorization) as well as in audit trails (accountability).

Note:
This CORBA feature has been deprecated by the OMG. Use the CORBA Security Service instead.

Definition at line 56 of file Principal.h.


Member Typedef Documentation

typedef Principal_ptr CORBA::Principal::_ptr_type
 

Definition at line 77 of file Principal.h.

typedef Principal_var CORBA::Principal::_var_type
 

Definition at line 78 of file Principal.h.


Constructor & Destructor Documentation

TAO_BEGIN_VERSIONED_NAMESPACE_DECL CORBA::Principal::Principal void   ) 
 

Definition at line 21 of file Principal.cpp.

00022   : refcount_ (1)
00023 {
00024 }

CORBA::Principal::~Principal void   )  [protected]
 

Destructor.

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

Definition at line 26 of file Principal.cpp.

00027 {
00028 }

CORBA::Principal::Principal const CORBA::Principal_ptr  )  [private]
 


Member Function Documentation

ACE_INLINE CORBA::ULong CORBA::Principal::_decr_refcnt void   ) 
 

Definition at line 16 of file Principal.i.

Referenced by CORBA::release().

00017 {
00018   const CORBA::ULong new_count = --this->refcount_;
00019 
00020   if (new_count == 0)
00021     delete this;
00022 
00023   return new_count;
00024 }

ACE_INLINE CORBA::Principal * CORBA::Principal::_duplicate Principal  )  [static]
 

Definition at line 46 of file Principal.i.

References _incr_refcnt().

00047 {
00048   if (x != 0)
00049     {
00050       x->_incr_refcnt ();
00051     }
00052 
00053   return x;
00054 }

ACE_INLINE CORBA::ULong CORBA::Principal::_incr_refcnt void   ) 
 

Definition at line 38 of file Principal.i.

Referenced by _duplicate().

00039 {
00040   return ++this->refcount_;
00041 }

ACE_INLINE CORBA::Principal * CORBA::Principal::_nil void   )  [static]
 

Definition at line 59 of file Principal.i.

00060 {
00061   return 0;
00062 }

Principal& CORBA::Principal::operator= const CORBA::Principal_ptr  )  [private]
 


Member Data Documentation

CORBA::OctetSeq CORBA::Principal::id
 

Definition at line 62 of file Principal.h.

Referenced by operator<<(), and operator>>().

ACE_Atomic_Op<TAO_SYNCH_MUTEX, CORBA::ULong> CORBA::Principal::refcount_ [private]
 

Reference counter.

Definition at line 97 of file Principal.h.


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 12:25:09 2006 for TAO by doxygen 1.3.6