TAO_CosTrader
2.0.8
|
The TAO_Preference_Interpreter will, given a valid preference string and offers, will order the offers based on the offers' compliance with the preferences. More...
#include <Constraint_Interpreter.h>
The TAO_Preference_Interpreter will, given a valid preference string and offers, will order the offers based on the offers' compliance with the preferences.
Each time the order_offer method is invoked, the TAO_Preference_Interpreter stores the offer reference in the order dictated by its evaluation of the preference string. After the TAO_Preference_Interpreter client has finished ordering all the offers, it will extract the offers in order using the remove_offer method.
TAO_Preference_Interpreter::TAO_Preference_Interpreter | ( | const CosTradingRepos::ServiceTypeRepository::TypeStruct & | ts, |
const char * | preference | ||
) |
TAO_Preference_Interpreter::TAO_Preference_Interpreter | ( | TAO_Constraint_Validator & | validator, |
const char * | preference | ||
) |
Parse the preference string, determining first if it's valid. Throw an IllegalPreference exception if the preference doesn't conform to the BNF grammar for preferences.
TAO_Preference_Interpreter::~TAO_Preference_Interpreter | ( | void | ) |
Destructor.
TAO_Preference_Interpreter::TAO_Preference_Interpreter | ( | const TAO_Preference_Interpreter & | ) | [private] |
Disallow copying.
size_t TAO_Preference_Interpreter::num_offers | ( | void | ) |
Return the number of offers remaining in the ordering.
TAO_Preference_Interpreter& TAO_Preference_Interpreter::operator= | ( | const TAO_Preference_Interpreter & | ) | [private] |
void TAO_Preference_Interpreter::order_offer | ( | CosTrading::Offer * | offer, |
CosTrading::OfferId | offer_id = 0 |
||
) |
void TAO_Preference_Interpreter::order_offer | ( | TAO_Constraint_Evaluator & | evaluator, |
CosTrading::Offer * | offer, | ||
CosTrading::OfferId | offer_id = 0 |
||
) |
Evaluate the offer, and order it internally based on the results of the evaluation.
int TAO_Preference_Interpreter::remove_offer | ( | CosTrading::Offer *& | offer, |
CosTrading::OfferId & | offer_id | ||
) |
int TAO_Preference_Interpreter::remove_offer | ( | CosTrading::Offer *& | offer | ) |
Remove the next offer. The offer returned will be the next in the ordering determined by the preference string.
The ordered list of offers.