Previous Table of Contents Next


23.4.7 Use Cases


   23.4.7.1 The Fault Detector as a Fault Notification Supplier

   • It creates a StructuredEvent data structure with the following data.

   Location object_location;object_location.length(1);object_location[0].id = "myhost.acme.com";object_location[0].kind = "hostname";CosNotification::StructuredEvent fault_event;fault_event.header.fixed_header.event_type.domain_name = "FT_CORBA";fault_event.header.fixed_header.event_type.type_name = "ObjectCrashFault";fault_event.filterable_data.length(4);fault_event.filterable_data[0].name = "FTDomainId";fault_event.filterable_data[0].value <<= "acme.com";fault_event.filterable_data[1].name = "Location";fault_event.filterable_data[1].value <<= object_location;fault_event.filterable_data[2].name = “TypeId?;fault_event.filterable_data[2].value <<= object_type;fault_event.filterable_data[3].name = "ObjectGroupId";fault_event.filterable_data[3].value <<= 1;

   • It invokes push_structured_event(fault_event) on the Fault Notifier.

   23.4.7.2 The Replication Manager as a Fault Notification Consumer

   CosNotification::EventTypeSeq event_types; event_types.length(1); event_types[0].domain_name = "FT_CORBA"; event_types[0].type_name = "ObjectCrashFault";

   const CORBA::string constraint_expr;

   constraint_expr = "$FTDomainId == ‘acme.com’ and $ObjectGroupId == 1 and $Location[0].id ==‘myhost.acme.com’";