Public Types |
enum | POLICY_TYPE {
STARTING_TRADER,
EXACT_TYPE_MATCH,
HOP_COUNT,
LINK_FOLLOW_RULE,
MATCH_CARD,
RETURN_CARD,
SEARCH_CARD,
USE_DYNAMIC_PROPERTIES,
USE_MODIFIABLE_PROPERTIES,
USE_PROXY_OFFERS,
REQUEST_ID
} |
| This enum represents the relative order that properties are passed from one trader to another. More...
|
Public Methods |
| TAO_Policies (TAO_Trader_Base &trader, const CosTrading::PolicySeq &policies ACE_ENV_ARG_DECL) throw (CosTrading::Lookup::IllegalPolicyName, CosTrading::DuplicatePolicyName) |
| ~TAO_Policies (void) |
CORBA::ULong | search_card (ACE_ENV_SINGLE_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
CORBA::ULong | match_card (ACE_ENV_SINGLE_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
CORBA::ULong | return_card (ACE_ENV_SINGLE_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
CORBA::Boolean | use_modifiable_properties (ACE_ENV_SINGLE_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
CORBA::Boolean | use_dynamic_properties (ACE_ENV_SINGLE_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
CORBA::Boolean | use_proxy_offers (ACE_ENV_SINGLE_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
CORBA::Boolean | exact_type_match (ACE_ENV_SINGLE_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
CosTrading::TraderName * | starting_trader (ACE_ENV_SINGLE_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch, CosTrading::Lookup::InvalidPolicyValue) |
| BEGIN SPEC The "starting_trader" policy facilitates the distribution of the trading service itself. More...
|
CosTrading::FollowOption | link_follow_rule (ACE_ENV_SINGLE_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
| Determine the link follow policy for this query overall. More...
|
CosTrading::FollowOption | link_follow_rule (const CosTrading::Link::LinkInfo &link_info ACE_ENV_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch, CosTrading::Lookup::InvalidPolicyValue, CosTrading::Link::IllegalLinkName, CosTrading::Link::UnknownLinkName) |
| Determine the link follow policy for a given <link_name>. More...
|
CORBA::ULong | hop_count (ACE_ENV_SINGLE_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
CosTrading::Admin::OctetSeq * | request_id (ACE_ENV_SINGLE_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
| Return the request_id passed to the query method across a link to another trader. More...
|
void | copy_to_pass (CosTrading::PolicySeq &policy_seq, const CosTrading::Admin::OctetSeq &request_id) const |
| Policies to forward to the next trader in a federated query. More...
|
void | copy_to_forward (CosTrading::PolicySeq &policy_seq, const CosTrading::TraderName &name) const |
| Policies to forward to the next trader in a directed query. More...
|
void | copy_in_follow_option (CosTrading::PolicySeq &policy_seq, const CosTrading::Link::LinkInfo &link_info ACE_ENV_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch, CosTrading::Lookup::InvalidPolicyValue) |
| Determine the link follow policy to pass down the link with <link_name>. More...
|
Static Public Attributes |
const char * | POLICY_NAMES [] |
Private Methods |
CORBA::ULong | ulong_prop (POLICY_TYPE pol ACE_ENV_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
| Reconclile a ULong property with its default. More...
|
CORBA::Boolean | boolean_prop (POLICY_TYPE pol ACE_ENV_ARG_DECL) const throw (CosTrading::Lookup::PolicyTypeMismatch) |
| Reconcile a Boolean property with its debault. More...
|
| TAO_Policies (const TAO_Policies &) |
TAO_Policies & | operator= (const TAO_Policies &) |
Private Attributes |
CosTrading::Policy * | policies_ [TAO_NUM_POLICIES] |
| The policies indexable from the enumerated type. More...
|
TAO_Trader_Base & | trader_ |
| For the validating identifier names. More...
|
TAO_Policies does an admirable job of reconciling differences between the default parameter settings of the Trader and the import and other policies set by the client. Unbeknownst to its client TAO_Policies hides this arbitration, and records whether the user policy was chosen, or the default. This information gets returned to the invoker of the query method.