TAO_ServerProtocolPolicy Class Reference

RTCORBA::ServerProtocolPolicy implementation. More...

#include <RT_Policy_i.h>

Inheritance diagram for TAO_ServerProtocolPolicy:

Inheritance graph
[legend]
Collaboration diagram for TAO_ServerProtocolPolicy:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_ServerProtocolPolicy (const RTCORBA::ProtocolList &protocols)
 Constructor.

 TAO_ServerProtocolPolicy (const TAO_ServerProtocolPolicy &rhs)
 Copy constructor.

RTCORBA::ProtocolListprotocols_rep (void)
RTCORBA::ProtocolListprotocols () throw (CORBA::SystemException)
CORBA::PolicyType policy_type () throw (CORBA::SystemException)
CORBA::Policy_ptr copy () throw (CORBA::SystemException)
void destroy () throw (CORBA::SystemException)
TAO_Cached_Policy_Type _tao_cached_type (void) const
TAO_Policy_Scope _tao_scope (void) const

Static Public Member Functions

CORBA::Policy_ptr create (const CORBA::Any &val)

Protected Member Functions

virtual ~TAO_ServerProtocolPolicy (void)

Private Attributes

RTCORBA::ProtocolList protocols_
 Attribute.


Detailed Description

RTCORBA::ServerProtocolPolicy implementation.

This policy controls selection and configuration of communication protocols on the server-side of the RT ORB.

Definition at line 313 of file RT_Policy_i.h.


Constructor & Destructor Documentation

TAO_ServerProtocolPolicy::TAO_ServerProtocolPolicy const RTCORBA::ProtocolList protocols  ) 
 

Constructor.

Definition at line 445 of file RT_Policy_i.cpp.

00446   : ::CORBA::Object ()
00447   , ::CORBA::Policy ()
00448   , ::CORBA::LocalObject ()
00449   , RTCORBA::ServerProtocolPolicy ()
00450   , TAO_Local_RefCounted_Object ()
00451   , protocols_ (protocols)
00452 {
00453 }

TAO_ServerProtocolPolicy::TAO_ServerProtocolPolicy const TAO_ServerProtocolPolicy rhs  ) 
 

Copy constructor.

Definition at line 455 of file RT_Policy_i.cpp.

00456   : ::CORBA::Object ()
00457   , ::CORBA::Policy ()
00458   , ::CORBA::LocalObject ()
00459   , RTCORBA::ServerProtocolPolicy ()
00460   , TAO_Local_RefCounted_Object ()
00461   , protocols_ (rhs.protocols_)
00462 {
00463 }

TAO_ServerProtocolPolicy::~TAO_ServerProtocolPolicy void   )  [protected, virtual]
 

Protected destructor to enforce proper memory management of this reference counted object.

Definition at line 465 of file RT_Policy_i.cpp.

00466 {
00467 }


Member Function Documentation

TAO_Cached_Policy_Type TAO_ServerProtocolPolicy::_tao_cached_type void   )  const [virtual]
 

Implements CORBA::Policy.

Definition at line 530 of file RT_Policy_i.cpp.

References TAO_CACHED_POLICY_RT_SERVER_PROTOCOL.

00531 {
00532   return TAO_CACHED_POLICY_RT_SERVER_PROTOCOL;
00533 }

TAO_Policy_Scope TAO_ServerProtocolPolicy::_tao_scope void   )  const [virtual]
 

Implements CORBA::Policy.

Definition at line 536 of file RT_Policy_i.cpp.

References TAO_POLICY_ORB_SCOPE, and TAO_POLICY_POA_SCOPE.

00537 {
00538   return static_cast<TAO_Policy_Scope> (TAO_POLICY_ORB_SCOPE |
00539                           TAO_POLICY_POA_SCOPE);
00540 }

CORBA::Policy_ptr TAO_ServerProtocolPolicy::copy  )  throw (CORBA::SystemException) [virtual]
 

Implements RTCORBA::ServerProtocolPolicy.

Definition at line 510 of file RT_Policy_i.cpp.

References ACE_CHECK_RETURN, and ACE_NEW_THROW_EX.

00512 {
00513   TAO_ServerProtocolPolicy* tmp = 0;
00514   ACE_NEW_THROW_EX (tmp,
00515                     TAO_ServerProtocolPolicy (*this),
00516                     CORBA::NO_MEMORY (TAO::VMCID,
00517                                       CORBA::COMPLETED_NO));
00518   ACE_CHECK_RETURN (CORBA::Policy::_nil ());
00519 
00520   return tmp;
00521 }

CORBA::Policy_ptr TAO_ServerProtocolPolicy::create const CORBA::Any &  val  )  [static]
 

Helper method for the implementation of CORBA::ORB::create_policy.

Definition at line 470 of file RT_Policy_i.cpp.

References ACE_CHECK_RETURN, ACE_NEW_THROW_EX, and ACE_THROW_RETURN.

Referenced by TAO_RT_PolicyFactory::create_policy().

00472 {
00473   RTCORBA::ProtocolList *value = 0;
00474   if ((val >>= value) == 0)
00475     ACE_THROW_RETURN (CORBA::PolicyError (CORBA::BAD_POLICY_VALUE),
00476                       CORBA::Policy::_nil ());
00477 
00478   TAO_ServerProtocolPolicy *tmp = 0;
00479   ACE_NEW_THROW_EX (tmp,
00480                     TAO_ServerProtocolPolicy (*value),
00481                     CORBA::NO_MEMORY (TAO::VMCID,
00482                                       CORBA::COMPLETED_NO));
00483   ACE_CHECK_RETURN (CORBA::Policy::_nil ());
00484 
00485   return tmp;
00486 }

void TAO_ServerProtocolPolicy::destroy  )  throw (CORBA::SystemException) [virtual]
 

Implements RTCORBA::ServerProtocolPolicy.

Definition at line 524 of file RT_Policy_i.cpp.

00526 {
00527 }

CORBA::PolicyType TAO_ServerProtocolPolicy::policy_type  )  throw (CORBA::SystemException) [virtual]
 

Implements CORBA::Policy.

Definition at line 503 of file RT_Policy_i.cpp.

00505 {
00506   return RTCORBA::SERVER_PROTOCOL_POLICY_TYPE;
00507 }

RTCORBA::ProtocolList * TAO_ServerProtocolPolicy::protocols  )  throw (CORBA::SystemException) [virtual]
 

Implements RTCORBA::ServerProtocolPolicy.

Definition at line 489 of file RT_Policy_i.cpp.

References ACE_CHECK_RETURN, and ACE_NEW_THROW_EX.

00491 {
00492   RTCORBA::ProtocolList *tmp = 0;
00493   ACE_NEW_THROW_EX (tmp,
00494                     RTCORBA::ProtocolList (this->protocols_),
00495                     CORBA::NO_MEMORY (TAO::VMCID,
00496                                       CORBA::COMPLETED_NO));
00497   ACE_CHECK_RETURN (0);
00498 
00499   return tmp;
00500 }

RTCORBA::ProtocolList & TAO_ServerProtocolPolicy::protocols_rep void   ) 
 

Accessor to the underlying protocols list of the policy (does not make a copy like the idl accessor implementation below.)

Definition at line 543 of file RT_Policy_i.cpp.

References protocols_.

Referenced by TAO_RT_Protocols_Hooks::server_protocol_properties().

00544 {
00545   return protocols_;
00546 }


Member Data Documentation

RTCORBA::ProtocolList TAO_ServerProtocolPolicy::protocols_ [private]
 

Attribute.

Definition at line 364 of file RT_Policy_i.h.

Referenced by protocols_rep().


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 12:59:55 2006 for TAO_RTCORBA by doxygen 1.3.6