#include <Notify_Constraint_Visitors.h>
Collaboration diagram for TAO_Notify_Constraint_Visitor:
Public Member Functions | |
TAO_Notify_Constraint_Visitor (void) | |
Constructor. | |
int | bind_structured_event (const CosNotification::StructuredEvent &s_event) |
Put the event data into our hash map. | |
CORBA::Boolean | evaluate_constraint (TAO_ETCL_Constraint *root) |
int | visit_literal (TAO_ETCL_Literal_Constraint *) |
int | visit_identifier (TAO_ETCL_Identifier *) |
int | visit_union_value (TAO_ETCL_Union_Value *) |
int | visit_union_pos (TAO_ETCL_Union_Pos *) |
int | visit_component_pos (TAO_ETCL_Component_Pos *) |
int | visit_component_assoc (TAO_ETCL_Component_Assoc *) |
int | visit_component_array (TAO_ETCL_Component_Array *) |
int | visit_special (TAO_ETCL_Special *) |
int | visit_component (TAO_ETCL_Component *) |
int | visit_dot (TAO_ETCL_Dot *) |
int | visit_eval (TAO_ETCL_Eval *) |
int | visit_default (TAO_ETCL_Default *) |
int | visit_exist (TAO_ETCL_Exist *) |
int | visit_unary_expr (TAO_ETCL_Unary_Expr *) |
int | visit_binary_expr (TAO_ETCL_Binary_Expr *) |
int | visit_preference (TAO_ETCL_Preference *) |
Protected Types | |
FILTERABLE_DATA | |
HEADER | |
FIXED_HEADER | |
EVENT_TYPE | |
DOMAIN_NAME | |
TYPE_NAME | |
EVENT_NAME | |
VARIABLE_HEADER | |
REMAINDER_OF_BODY | |
EMPTY | |
enum | structured_event_field { FILTERABLE_DATA, HEADER, FIXED_HEADER, EVENT_TYPE, DOMAIN_NAME, TYPE_NAME, EVENT_NAME, VARIABLE_HEADER, REMAINDER_OF_BODY, EMPTY } |
Protected Member Functions | |
int | visit_or (TAO_ETCL_Binary_Expr *) |
int | visit_and (TAO_ETCL_Binary_Expr *) |
int | visit_twiddle (TAO_ETCL_Binary_Expr *) |
int | visit_in (TAO_ETCL_Binary_Expr *) |
int | visit_binary_op (TAO_ETCL_Binary_Expr *binary_expr, int op_type) |
CORBA::Boolean | sequence_does_contain (const CORBA::Any *any, TAO_ETCL_Literal_Constraint &item) |
CORBA::Boolean | array_does_contain (const CORBA::Any *any, TAO_ETCL_Literal_Constraint &item) |
CORBA::Boolean | struct_does_contain (const CORBA::Any *any, TAO_ETCL_Literal_Constraint &item) |
CORBA::Boolean | union_does_contain (const CORBA::Any *any, TAO_ETCL_Literal_Constraint &item) |
CORBA::Boolean | any_does_contain (const CORBA::Any *any, TAO_ETCL_Literal_Constraint &item) |
CORBA::Boolean | simple_type_match (int expr_type, CORBA::TCKind tc_kind) |
Protected Attributes | |
structured_event_field | implicit_id_ |
Storage for the type of implicit id the component has (if any). | |
ACE_Hash_Map_Manager< ACE_CString, structured_event_field, ACE_Null_Mutex > | implicit_ids_ |
ACE_Hash_Map_Manager< ACE_CString, CORBA::Any, ACE_Null_Mutex > | filterable_data_ |
Used to lookup names and values in the event's 'filterable_data' field. | |
ACE_Hash_Map_Manager< ACE_CString, CORBA::Any, ACE_Null_Mutex > | variable_header_ |
Used to lookup names and values in the event's 'variable_header' field. | |
CORBA::String_var | domain_name_ |
CORBA::String_var | type_name_ |
CORBA::String_var | event_name_ |
CORBA::Any | remainder_of_body_ |
Storage for the structured_event's 'remainder_of_body' field. | |
ACE_Unbounded_Queue< TAO_ETCL_Literal_Constraint > | queue_ |
The result of a non_boolean operation. | |
CORBA::Any_var | current_value_ |
CORBA::String_var | current_name_ |
Static Protected Attributes | |
static const size_t | implicit_ids_size_ = 27 |
static const size_t | filterable_data_size_ = 31 |
static const size_t | variable_header_size_ = 31 |
enum TAO_Notify_Constraint_Visitor::structured_event_field [protected] |
TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_Notify_Constraint_Visitor::TAO_Notify_Constraint_Visitor | ( | void | ) |
Constructor.
CORBA::Boolean TAO_Notify_Constraint_Visitor::any_does_contain | ( | const CORBA::Any * | any, | |
TAO_ETCL_Literal_Constraint & | item | |||
) | [protected] |
CORBA::Boolean TAO_Notify_Constraint_Visitor::array_does_contain | ( | const CORBA::Any * | any, | |
TAO_ETCL_Literal_Constraint & | item | |||
) | [protected] |
int TAO_Notify_Constraint_Visitor::bind_structured_event | ( | const CosNotification::StructuredEvent & | s_event | ) |
Put the event data into our hash map.
CORBA::Boolean TAO_Notify_Constraint_Visitor::evaluate_constraint | ( | TAO_ETCL_Constraint * | root | ) |
Returns 1 if the event satisfies the constraint represented by the the expression tree rooted at <root>, 0 if it doesn't. If an error occurs during the process, the traversal automatically fails.
CORBA::Boolean TAO_Notify_Constraint_Visitor::sequence_does_contain | ( | const CORBA::Any * | any, | |
TAO_ETCL_Literal_Constraint & | item | |||
) | [protected] |
CORBA::Boolean TAO_Notify_Constraint_Visitor::simple_type_match | ( | int | expr_type, | |
CORBA::TCKind | tc_kind | |||
) | [protected] |
CORBA::Boolean TAO_Notify_Constraint_Visitor::struct_does_contain | ( | const CORBA::Any * | any, | |
TAO_ETCL_Literal_Constraint & | item | |||
) | [protected] |
CORBA::Boolean TAO_Notify_Constraint_Visitor::union_does_contain | ( | const CORBA::Any * | any, | |
TAO_ETCL_Literal_Constraint & | item | |||
) | [protected] |
int TAO_Notify_Constraint_Visitor::visit_and | ( | TAO_ETCL_Binary_Expr * | ) | [protected] |
int TAO_Notify_Constraint_Visitor::visit_binary_expr | ( | TAO_ETCL_Binary_Expr * | ) |
int TAO_Notify_Constraint_Visitor::visit_binary_op | ( | TAO_ETCL_Binary_Expr * | binary_expr, | |
int | op_type | |||
) | [protected] |
int TAO_Notify_Constraint_Visitor::visit_component | ( | TAO_ETCL_Component * | ) |
int TAO_Notify_Constraint_Visitor::visit_component_array | ( | TAO_ETCL_Component_Array * | ) |
int TAO_Notify_Constraint_Visitor::visit_component_assoc | ( | TAO_ETCL_Component_Assoc * | ) |
int TAO_Notify_Constraint_Visitor::visit_component_pos | ( | TAO_ETCL_Component_Pos * | ) |
int TAO_Notify_Constraint_Visitor::visit_default | ( | TAO_ETCL_Default * | ) |
int TAO_Notify_Constraint_Visitor::visit_dot | ( | TAO_ETCL_Dot * | ) |
int TAO_Notify_Constraint_Visitor::visit_eval | ( | TAO_ETCL_Eval * | ) |
int TAO_Notify_Constraint_Visitor::visit_exist | ( | TAO_ETCL_Exist * | ) |
int TAO_Notify_Constraint_Visitor::visit_identifier | ( | TAO_ETCL_Identifier * | ) |
int TAO_Notify_Constraint_Visitor::visit_in | ( | TAO_ETCL_Binary_Expr * | ) | [protected] |
int TAO_Notify_Constraint_Visitor::visit_literal | ( | TAO_ETCL_Literal_Constraint * | ) |
int TAO_Notify_Constraint_Visitor::visit_or | ( | TAO_ETCL_Binary_Expr * | ) | [protected] |
int TAO_Notify_Constraint_Visitor::visit_preference | ( | TAO_ETCL_Preference * | ) |
int TAO_Notify_Constraint_Visitor::visit_special | ( | TAO_ETCL_Special * | ) |
int TAO_Notify_Constraint_Visitor::visit_twiddle | ( | TAO_ETCL_Binary_Expr * | ) | [protected] |
int TAO_Notify_Constraint_Visitor::visit_unary_expr | ( | TAO_ETCL_Unary_Expr * | ) |
int TAO_Notify_Constraint_Visitor::visit_union_pos | ( | TAO_ETCL_Union_Pos * | ) |
int TAO_Notify_Constraint_Visitor::visit_union_value | ( | TAO_ETCL_Union_Value * | ) |
Holder for a string name in the event fields fixed_header, variable_header, or filterable_data.
CORBA::Any_var TAO_Notify_Constraint_Visitor::current_value_ [protected] |
Holder for a value found in the event fields filterable_data, variable_header or remainder_of_body.
Storage for string names under the structured event's 'fixed_header' field.
ACE_Hash_Map_Manager<ACE_CString, CORBA::Any, ACE_Null_Mutex> TAO_Notify_Constraint_Visitor::filterable_data_ [protected] |
Used to lookup names and values in the event's 'filterable_data' field.
const size_t TAO_Notify_Constraint_Visitor::filterable_data_size_ = 31 [static, protected] |
Size of filterable_data_ hash map. TODO: define inline once VC6 support is deprecated.
Storage for the type of implicit id the component has (if any).
ACE_Hash_Map_Manager<ACE_CString, structured_event_field, ACE_Null_Mutex> TAO_Notify_Constraint_Visitor::implicit_ids_ [protected] |
Lookup table for the implicit ids, to avoid string comparisons in derived visitors.
const size_t TAO_Notify_Constraint_Visitor::implicit_ids_size_ = 27 [static, protected] |
Size of implicit_ids_ hash map.
ACE_Unbounded_Queue<TAO_ETCL_Literal_Constraint> TAO_Notify_Constraint_Visitor::queue_ [protected] |
The result of a non_boolean operation.
CORBA::Any TAO_Notify_Constraint_Visitor::remainder_of_body_ [protected] |
Storage for the structured_event's 'remainder_of_body' field.
ACE_Hash_Map_Manager<ACE_CString, CORBA::Any, ACE_Null_Mutex> TAO_Notify_Constraint_Visitor::variable_header_ [protected] |
Used to lookup names and values in the event's 'variable_header' field.
const size_t TAO_Notify_Constraint_Visitor::variable_header_size_ = 31 [static, protected] |
Size of variable_header_ hash map. TODO: define inline once VC6 support is deprecated.