TAO_Dynamic_Property Class Reference

Little helper class that you can extend to have your dynamic property handler construct CosTradingDynamic::DynamicProp structs. More...

#include <Trader_Utils.h>

List of all members.

Public Member Functions

 TAO_Dynamic_Property (void)
virtual ~TAO_Dynamic_Property (void)
void destroy (void)
virtual CORBA::Any * evalDP (const char *name, CORBA::TypeCode_ptr returned_type, const CORBA::Any &extra_info)=0
 Dynamic property evaluation call-back method.
CosTradingDynamic::DynamicPropconstruct_dynamic_prop (const char *name, CORBA::TypeCode_ptr returned_type, const CORBA::Any &extra_info)

Private Attributes

CosTradingDynamic::DynamicPropEval_var prop_


Detailed Description

Little helper class that you can extend to have your dynamic property handler construct CosTradingDynamic::DynamicProp structs.

Definition at line 180 of file Trader_Utils.h.


Constructor & Destructor Documentation

TAO_Dynamic_Property::TAO_Dynamic_Property ( void   )  [inline]

Definition at line 185 of file Trader_Utils.h.

00185 {}

TAO_Dynamic_Property::~TAO_Dynamic_Property ( void   )  [virtual]

Definition at line 429 of file Trader_Utils.cpp.

00430 {
00431 }


Member Function Documentation

CosTradingDynamic::DynamicProp * TAO_Dynamic_Property::construct_dynamic_prop ( const char *  name,
CORBA::TypeCode_ptr  returned_type,
const CORBA::Any &  extra_info 
)

Method to construct a dynamic property structure suitable for exporting in a CosTrading::PropertyStruct to the Trading Service.

Definition at line 435 of file Trader_Utils.cpp.

References ACE_NEW_RETURN, CosTradingDynamic::DynamicProp::eval_if, CosTradingDynamic::DynamicProp::extra_info, and CosTradingDynamic::DynamicProp::returned_type.

00438 {
00439   ACE_UNUSED_ARG (name);
00440 
00441   CosTradingDynamic::DynamicProp* dp_struct = 0;
00442 
00443   ACE_NEW_RETURN (dp_struct,
00444                   CosTradingDynamic::DynamicProp,
00445                   0);
00446 
00447   if (this->prop_.in () == CosTradingDynamic::DynamicPropEval::_nil ())
00448     {
00449       // Seth, we need a way to either propagate exceptions out.
00450 
00451       this->prop_ = this->_this ();
00452 
00453       this->_remove_ref ();
00454     }
00455 
00456   dp_struct->eval_if =
00457     CosTradingDynamic::DynamicPropEval::_duplicate (this->prop_.in ());
00458 
00459   dp_struct->returned_type =
00460     CORBA::TypeCode::_duplicate (returned_type);
00461   dp_struct->extra_info = extra_info;
00462 
00463   return dp_struct;
00464 }

void TAO_Dynamic_Property::destroy ( void   ) 

Definition at line 467 of file Trader_Utils.cpp.

00468 {
00469   if (this->prop_.in () != CosTradingDynamic::DynamicPropEval::_nil ())
00470     {
00471       // @@ Seth, we need a way to propagate exceptions out.
00472       PortableServer::POA_var poa = this->_default_POA ();
00473 
00474       PortableServer::ObjectId_var id =
00475         poa->servant_to_id (this);
00476 
00477       poa->deactivate_object (id.in ());
00478     }
00479 }

virtual CORBA::Any* TAO_Dynamic_Property::evalDP ( const char *  name,
CORBA::TypeCode_ptr  returned_type,
const CORBA::Any &  extra_info 
) [pure virtual]

Dynamic property evaluation call-back method.


Member Data Documentation

CosTradingDynamic::DynamicPropEval_var TAO_Dynamic_Property::prop_ [private]

Definition at line 205 of file Trader_Utils.h.


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:49:32 2010 for TAO_CosTrader by  doxygen 1.4.7