CORBA::Policy Class Reference

#include <PolicyC.h>

Inheritance diagram for CORBA::Policy:

Inheritance graph
[legend]
Collaboration diagram for CORBA::Policy:

Collaboration graph
[legend]
List of all members.

Public Types

typedef Policy_ptr _ptr_type
typedef Policy_var _var_type
typedef Policy_out _out_type

Public Member Functions

virtual CORBA::PolicyType policy_type (void)
virtual ::CORBA::Policy_ptr copy (void)
virtual void destroy (void)
virtual CORBA::Boolean _is_a (const char *type_id)
 Determine if we are of the type specified by the "logical_type_id".
virtual const char * _interface_repository_id (void) const
virtual CORBA::Boolean marshal (TAO_OutputCDR &cdr)
 Allows us to forbid marshaling of local interfaces.
virtual CORBA::Boolean _tao_encode (TAO_OutputCDR &)
virtual CORBA::Boolean _tao_decode (TAO_InputCDR &)
virtual TAO_Cached_Policy_Type _tao_cached_type (void) const
virtual TAO_Policy_Scope _tao_scope (void) const

Static Public Member Functions

static Policy_ptr _duplicate (Policy_ptr obj)
static void _tao_release (Policy_ptr obj)
static Policy_ptr _narrow (CORBA::Object_ptr obj)
 No-op it is just here to simplify some templates.
static Policy_ptr _unchecked_narrow (CORBA::Object_ptr obj)
static Policy_ptr _nil (void)
 Return a NULL object.
static void _tao_any_destructor (void *)
 Used in the implementation of CORBA::Any.

Protected Member Functions

 Policy (void)
virtual void CORBA_Policy_setup_collocation (void)
 Policy (IOP::IOR *ior, TAO_ORB_Core *orb_core=0)
 Policy (TAO_Stub *objref, CORBA::Boolean _tao_collocated=0, TAO_Abstract_ServantBase *servant=0, TAO_ORB_Core *orb_core=0)
virtual ~Policy (void)

Private Member Functions

 Policy (const Policy &)
void operator= (const Policy &)

Private Attributes

TAO::Collocation_Proxy_Broker * the_TAO_Policy_Proxy_Broker_

Friends

class TAO::Narrow_Utils< Policy >

Detailed Description

Definition at line 250 of file PolicyC.h.


Member Typedef Documentation

typedef Policy_out CORBA::Policy::_out_type

Reimplemented from CORBA::Object.

Definition at line 257 of file PolicyC.h.

typedef Policy_ptr CORBA::Policy::_ptr_type

Reimplemented from CORBA::Object.

Definition at line 255 of file PolicyC.h.

typedef Policy_var CORBA::Policy::_var_type

Reimplemented from CORBA::Object.

Definition at line 256 of file PolicyC.h.


Constructor & Destructor Documentation

CORBA::Policy::Policy ( void   )  [protected]

Definition at line 514 of file PolicyC.cpp.

References CORBA_Policy_setup_collocation().

00515  : the_TAO_Policy_Proxy_Broker_ (0)
00516 {
00517   this->CORBA_Policy_setup_collocation ();
00518 }

ACE_INLINE CORBA::Policy::Policy ( IOP::IOR *  ior,
TAO_ORB_Core orb_core = 0 
) [protected]

Definition at line 51 of file PolicyC.inl.

00055   : ::CORBA::Object (ior, oc),
00056     the_TAO_Policy_Proxy_Broker_ (0)
00057 {
00058 }

ACE_INLINE CORBA::Policy::Policy ( TAO_Stub objref,
CORBA::Boolean  _tao_collocated = 0,
TAO_Abstract_ServantBase servant = 0,
TAO_ORB_Core orb_core = 0 
) [protected]

Definition at line 38 of file PolicyC.inl.

References CORBA_Policy_setup_collocation().

00044   : ::CORBA::Object (objref, _tao_collocated, servant, oc),
00045     the_TAO_Policy_Proxy_Broker_ (0)
00046 {
00047   this->CORBA_Policy_setup_collocation ();
00048 }

CORBA::Policy::~Policy ( void   )  [protected, virtual]

Definition at line 530 of file PolicyC.cpp.

00531 {}

CORBA::Policy::Policy ( const Policy  )  [private]


Member Function Documentation

CORBA::Policy_ptr CORBA::Policy::_duplicate ( Policy_ptr  obj  )  [static]

Definition at line 572 of file PolicyC.cpp.

References CORBA::Object::_add_ref(), and CORBA::is_nil().

Referenced by TAO_Policy_Set::get_cached_policy(), TAO_Policy_Set::get_policy(), TAO_Policy_Set::get_policy_by_index(), and TAO_Policy_Set::get_policy_overrides().

00573 {
00574   if (! ::CORBA::is_nil (obj))
00575     {
00576       obj->_add_ref ();
00577     }
00578 
00579   return obj;
00580 }

const char * CORBA::Policy::_interface_repository_id ( void   )  const [virtual]

The repository ID for the most derived class, this is an implementation method and does no remote invocations!

Reimplemented from CORBA::Object.

Definition at line 616 of file PolicyC.cpp.

00617 {
00618   return "IDL:omg.org/CORBA/Policy:1.0";
00619 }

CORBA::Boolean CORBA::Policy::_is_a ( const char *  type_id  )  [virtual]

Determine if we are of the type specified by the "logical_type_id".

Reimplemented from CORBA::Object.

Definition at line 589 of file PolicyC.cpp.

References CORBA::Object::_is_a(), and ACE_OS::strcmp().

00593 {
00594   if (
00595       !ACE_OS::strcmp (
00596           value,
00597           "IDL:omg.org/CORBA/Policy:1.0"
00598         ) ||
00599       !ACE_OS::strcmp (
00600           value,
00601           "IDL:omg.org/CORBA/Object:1.0"
00602         )
00603     )
00604     {
00605       return true; // success using local knowledge
00606     }
00607   else
00608     {
00609       return this->::CORBA::Object::_is_a (
00610           value
00611 
00612         );
00613     }
00614 }

CORBA::Policy_ptr CORBA::Policy::_narrow ( CORBA::Object_ptr  obj  )  [static]

No-op it is just here to simplify some templates.

Reimplemented from CORBA::Object.

Definition at line 542 of file PolicyC.cpp.

References CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer.

00546 {
00547   return
00548     TAO::Narrow_Utils<Policy>::narrow (
00549         _tao_objref,
00550         "IDL:omg.org/CORBA/Policy:1.0",
00551         CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer
00552 
00553       );
00554 }

static Policy_ptr CORBA::Policy::_nil ( void   )  [inline, static]

Return a NULL object.

Reimplemented from CORBA::Object.

Definition at line 274 of file PolicyC.h.

Referenced by TAO_Policy_Set::cleanup_i(), TAO_Policy_Set::get_cached_const_policy(), TAO_Policy_Set::get_cached_policy(), and TAO_Policy_Set::get_policy().

00275     {
00276       return static_cast<Policy_ptr> (0);
00277     }

void CORBA::Policy::_tao_any_destructor ( void *   )  [static]

Used in the implementation of CORBA::Any.

Reimplemented from CORBA::Object.

Definition at line 534 of file PolicyC.cpp.

References CORBA::release().

00535 {
00536   Policy *_tao_tmp_pointer =
00537     static_cast<Policy *> (_tao_void_pointer);
00538   ::CORBA::release (_tao_tmp_pointer);
00539 }

TAO_Cached_Policy_Type CORBA::Policy::_tao_cached_type ( void   )  const [virtual]

Definition at line 709 of file PolicyC.cpp.

References TAO_CACHED_POLICY_UNCACHED.

Referenced by TAO_Policy_Set::set_policy().

00710 {
00711   return TAO_CACHED_POLICY_UNCACHED;
00712 }

CORBA::Boolean CORBA::Policy::_tao_decode ( TAO_InputCDR  )  [virtual]

Definition at line 703 of file PolicyC.cpp.

00704 {
00705   return false;
00706 }

CORBA::Boolean CORBA::Policy::_tao_encode ( TAO_OutputCDR  )  [virtual]

Definition at line 697 of file PolicyC.cpp.

00698 {
00699   return false;
00700 }

void CORBA::Policy::_tao_release ( Policy_ptr  obj  )  [static]

Definition at line 583 of file PolicyC.cpp.

References CORBA::release().

00584 {
00585   ::CORBA::release (obj);
00586 }

TAO_Policy_Scope CORBA::Policy::_tao_scope ( void   )  const [virtual]

Definition at line 715 of file PolicyC.cpp.

References TAO_POLICY_DEFAULT_SCOPE.

Referenced by TAO_Policy_Set::set_policy().

00716 {
00717   return TAO_POLICY_DEFAULT_SCOPE;
00718 }

CORBA::Policy_ptr CORBA::Policy::_unchecked_narrow ( CORBA::Object_ptr  obj  )  [static]

Definition at line 557 of file PolicyC.cpp.

References CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer.

00561 {
00562   return
00563     TAO::Narrow_Utils<Policy>::unchecked_narrow (
00564         _tao_objref,
00565         "IDL:omg.org/CORBA/Policy:1.0",
00566         CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer
00567 
00568       );
00569 }

CORBA::Policy_ptr CORBA::Policy::copy ( void   ) 

Definition at line 443 of file PolicyC.cpp.

References CORBA_Policy_setup_collocation(), and CORBA::Object::tao_object_initialize().

Referenced by TAO_Policy_Set::set_policy().

00446 {
00447   if (!this->is_evaluated ())
00448     {
00449       ::CORBA::Object::tao_object_initialize (this);
00450     }
00451 
00452   if (this->the_TAO_Policy_Proxy_Broker_ == 0)
00453     {
00454       CORBA_Policy_setup_collocation ();
00455     }
00456 
00457   TAO::Arg_Traits< ::CORBA::Policy>::ret_val _tao_retval;
00458 
00459   TAO::Argument *_the_tao_operation_signature [] =
00460     {
00461       &_tao_retval
00462     };
00463 
00464   TAO::Invocation_Adapter _tao_call (
00465       this,
00466       _the_tao_operation_signature,
00467       1,
00468       "copy",
00469       4,
00470       this->the_TAO_Policy_Proxy_Broker_
00471     );
00472 
00473   _tao_call.invoke (0, 0);
00474 
00475   return _tao_retval.retn ();
00476 }

void CORBA::Policy::CORBA_Policy_setup_collocation ( void   )  [protected, virtual]

Definition at line 521 of file PolicyC.cpp.

References CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer, and the_TAO_Policy_Proxy_Broker_.

Referenced by copy(), destroy(), Policy(), and policy_type().

void CORBA::Policy::destroy ( void   )  [virtual]

Definition at line 481 of file PolicyC.cpp.

References CORBA_Policy_setup_collocation(), and CORBA::Object::tao_object_initialize().

00484 {
00485   if (!this->is_evaluated ())
00486     {
00487       ::CORBA::Object::tao_object_initialize (this);
00488     }
00489 
00490   if (this->the_TAO_Policy_Proxy_Broker_ == 0)
00491     {
00492       CORBA_Policy_setup_collocation ();
00493     }
00494 
00495   TAO::Arg_Traits< void>::ret_val _tao_retval;
00496 
00497   TAO::Argument *_the_tao_operation_signature [] =
00498     {
00499       &_tao_retval
00500     };
00501 
00502   TAO::Invocation_Adapter _tao_call (
00503       this,
00504       _the_tao_operation_signature,
00505       1,
00506       "destroy",
00507       7,
00508       this->the_TAO_Policy_Proxy_Broker_
00509     );
00510 
00511   _tao_call.invoke (0, 0);
00512 }

CORBA::Boolean CORBA::Policy::marshal ( TAO_OutputCDR cdr  )  [virtual]

Allows us to forbid marshaling of local interfaces.

Reimplemented from CORBA::Object.

Definition at line 622 of file PolicyC.cpp.

00623 {
00624   return (cdr << this);
00625 }

void CORBA::Policy::operator= ( const Policy  )  [private]

CORBA::PolicyType CORBA::Policy::policy_type ( void   )  [virtual]

Definition at line 405 of file PolicyC.cpp.

References CORBA_Policy_setup_collocation(), and CORBA::Object::tao_object_initialize().

Referenced by TAO_Policy_Set::set_policy().

00408 {
00409   if (!this->is_evaluated ())
00410     {
00411       ::CORBA::Object::tao_object_initialize (this);
00412     }
00413 
00414   if (this->the_TAO_Policy_Proxy_Broker_ == 0)
00415     {
00416       CORBA_Policy_setup_collocation ();
00417     }
00418 
00419   TAO::Arg_Traits< ::CORBA::PolicyType>::ret_val _tao_retval;
00420 
00421   TAO::Argument *_the_tao_operation_signature [] =
00422     {
00423       &_tao_retval
00424     };
00425 
00426   TAO::Invocation_Adapter _tao_call (
00427       this,
00428       _the_tao_operation_signature,
00429       1,
00430       "_get_policy_type",
00431       16,
00432       this->the_TAO_Policy_Proxy_Broker_
00433     );
00434 
00435   _tao_call.invoke (0, 0);
00436 
00437   return _tao_retval.retn ();
00438 }


Friends And Related Function Documentation

friend class TAO::Narrow_Utils< Policy > [friend]

Definition at line 254 of file PolicyC.h.


Member Data Documentation

TAO::Collocation_Proxy_Broker* CORBA::Policy::the_TAO_Policy_Proxy_Broker_ [private]

Definition at line 322 of file PolicyC.h.

Referenced by CORBA_Policy_setup_collocation().


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:39:58 2010 for TAO by  doxygen 1.4.7