#include <Security_Current.h>
Inheritance diagram for TAO_Security_Current:
Public Member Functions | |
TAO_Security_Current (size_t tss_slot, const char *orb_id) | |
Constructor. | |
size_t | tss_slot (void) const |
Return the TSS slot ID assigned to the "SecurityCurrent" object. | |
SecurityLevel1::Current Methods | |
virtual Security::AttributeList * | get_attributes (const Security::AttributeTypeList &attributes) throw (CORBA::SystemException) |
SecurityLevel2::Current Methods | |
virtual SecurityLevel2::ReceivedCredentials_ptr | received_credentials () throw (CORBA::SystemException) |
Protected Member Functions | |
~TAO_Security_Current (void) | |
int | init (void) |
TAO::Security::Current_Impl * | implementation (void) |
Set the TSS Security::Current implementation. | |
Private Member Functions | |
TAO_Security_Current (const TAO_Security_Current &) | |
void | operator= (const TAO_Security_Current &) |
Private Attributes | |
size_t const | tss_slot_ |
TSS slot assigned to this object. | |
CORBA::String_var | orb_id_ |
The ORBid of the ORB with which this object is registered. | |
TAO_ORB_Core * | orb_core_ |
This object can be used to obtain session related security information about the current execution context.
Definition at line 47 of file Security_Current.h.
|
Constructor.
Definition at line 16 of file Security_Current.cpp.
|
|
Destructor Protected to force allocation on the heap. Definition at line 24 of file Security_Current.cpp.
00025 { 00026 } |
|
Prevent copying through the copy constructor and the assignment operator. |
|
Return the security attributes corresponding to the types in the given attribute type list associated with the current request. |
|
Set the TSS Security::Current implementation. The pointer is actually one to a concrete implementation provided by the underlying security mechanism. For example, SSLIOP implements the SecurityLevel2::Current 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 14 of file Security_Current.inl. References TAO_ORB_Core::get_tss_resource(), and init().
00015 { 00016 if (this->orb_core_ == 0 && this->init () != 0) 00017 return 0; 00018 00019 TAO::Security::Current_Impl *impl = 00020 static_cast<TAO::Security::Current_Impl *> ( 00021 this->orb_core_->get_tss_resource (this->tss_slot_)); 00022 00023 return impl; 00024 } |
|
Fully initialize this object. This method is used predominantly to set the ORB core pointer. Definition at line 62 of file Security_Current.cpp. References ACE_ANY_EXCEPTION, ACE_CATCHANY, ACE_CHECK_RETURN, ACE_DECLARE_NEW_CORBA_ENV, ACE_ENDTRY, ACE_ENV_ARG_PARAMETER, ACE_PRINT_EXCEPTION, ACE_TRY, ACE_TRY_CHECK, orb_id_, CORBA::ORB_init(), and TAO_debug_level. Referenced by implementation().
00063 { 00064 int result = 0; 00065 00066 ACE_DECLARE_NEW_CORBA_ENV; 00067 ACE_TRY 00068 { 00069 int argc = 0; 00070 char **argv = 0; 00071 CORBA::ORB_var orb = CORBA::ORB_init (argc, 00072 argv, 00073 this->orb_id_.in () 00074 ACE_ENV_ARG_PARAMETER); 00075 ACE_TRY_CHECK; 00076 00077 this->orb_core_ = orb.in ()->orb_core (); 00078 00079 // No longer need the ORBid, so reclaim the memory it was 00080 // occupying. 00081 (void) this->orb_id_.out (); 00082 } 00083 ACE_CATCHANY 00084 { 00085 if (TAO_debug_level >= 1) 00086 ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, 00087 "Could not initialize SecurityCurrent:"); 00088 00089 result = -1; 00090 } 00091 ACE_ENDTRY; 00092 ACE_CHECK_RETURN (-1); 00093 00094 return result; 00095 } |
|
Prevent copying through the copy constructor and the assignment operator. |
|
Return the Credentials received from the client associate with the current request. |
|
Return the TSS slot ID assigned to the "SecurityCurrent" object. The concrete TSS SecurityCurrent implementations will each use this slot ID. Definition at line 8 of file Security_Current.inl. References tss_slot_.
00009 { 00010 return this->tss_slot_; 00011 } |
|
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 Security_Current.h. |
|
The ORBid of the ORB with which this object is registered.
Definition at line 129 of file Security_Current.h. Referenced by init(). |
|
TSS slot assigned to this object.
Definition at line 126 of file Security_Current.h. Referenced by tss_slot(). |