void TAO_Notify_EventChannel::load_attrs(const TAO_Notify::NVPList& attrs) { TAO_Notify_Object::load_attrs(attrs); attrs.load(this->admin_properties().max_global_queue_length()); attrs.load(this->admin_properties().max_consumers()); attrs.load(this->admin_properties().max_suppliers()); attrs.load(this->admin_properties().reject_new_events()); this->admin_properties().init(); }
void TAO_Notify_Admin::save_attrs (TAO_Notify::NVPList& attrs) { TAO_Notify_Object::save_attrs(attrs); attrs.push_back(TAO_Notify::NVP("InterFilterGroupOperator", this->filter_operator_)); if (this->is_default_) { attrs.push_back (TAO_Notify::NVP ("default", "yes")); } }
void TAO_Notify_Admin::load_attrs(const TAO_Notify::NVPList& attrs) { TAO_Notify_Object::load_attrs (attrs); const char* value = 0; if (attrs.find ("InterFilterGroupOperator", value)) { this->filter_operator_ = static_cast <CosNotifyChannelAdmin::InterFilterGroupOperator> (ACE_OS::atoi (value)); } if (attrs.find ("default", value)) { this->is_default_ = (ACE_OS::strcmp (value, "yes") == 0); } }
void TAO_Notify_StructuredProxyPushConsumer::load_attrs (const TAO_Notify::NVPList& attrs) { SuperClass::load_attrs(attrs); ACE_CString ior; if (attrs.load("PeerIOR", ior)) { CORBA::ORB_var orb = TAO_Notify_PROPERTIES::instance()->orb(); try { CosNotifyComm::StructuredPushSupplier_var ps = CosNotifyComm::StructuredPushSupplier::_nil(); if ( ior.length() > 0 ) { CORBA::Object_var obj = orb->string_to_object(ior.c_str()); ps = CosNotifyComm::StructuredPushSupplier::_unchecked_narrow(obj.in()); } // minor hack: suppress generating subscription updates during reload. bool save_updates = this->updates_off_; this->updates_off_ = true; this->connect_structured_push_supplier(ps.in()); this->updates_off_ = save_updates; } catch (const CORBA::Exception&) { // if we can't reconnect to peer, tough... } } }
void TAO_Notify_Proxy::save_attrs (TAO_Notify::NVPList& attrs) { TAO_Notify_Object::save_attrs(attrs); TAO_Notify_Peer * peer = this->peer(); if (peer != 0) { attrs.push_back (TAO_Notify::NVP("PeerIOR", peer->get_ior())); } }
void TAO_Notify_Object::load_attrs(const TAO_Notify::NVPList& attrs) { attrs.load (this->qos_properties_.event_reliability ()); attrs.load (this->qos_properties_.connection_reliability ()); attrs.load (this->qos_properties_.priority ()); attrs.load (this->qos_properties_.timeout ()); attrs.load (this->qos_properties_.stop_time_supported ()); attrs.load (this->qos_properties_.maximum_batch_size ()); attrs.load (this->qos_properties_.pacing_interval ()); this->qos_properties_.init (); }
void TAO_Notify_FilterAdmin::save_persistent (TAO_Notify::Topology_Saver& saver) { if (this->filter_list_.current_size() == 0) return; bool changed = true; TAO_Notify::NVPList attrs; bool want_children = saver.begin_object(0, "filter_admin", attrs, changed); if (want_children) { FILTER_LIST::ITERATOR iter (this->filter_list_); FILTER_LIST::ENTRY* entry; TAO_Notify_Properties* properties = TAO_Notify_PROPERTIES::instance(); CORBA::ORB_var orb = properties->orb(); ACE_ASSERT(! CORBA::is_nil(orb.in())); for (; iter.next(entry) != 0; iter.advance()) { TAO_Notify::NVPList fattrs; CORBA::Long id = entry->ext_id_; //TBD: this presume the filter always collocated. //otherwise we need modify the filter interface to add get_filter_id() TAO_Notify_FilterFactory* factory = ec_->default_filter_factory_servant (); TAO_Notify_Object::ID mapid = factory->get_filter_id (entry->int_id_.in ()); fattrs.push_back(TAO_Notify::NVP("MapId", mapid)); saver.begin_object(id, "filter", fattrs, changed); saver.end_object(id, "filter"); } } saver.end_object(0, "filter_admin"); }
void TAO_Notify_StructuredProxyPushSupplier::load_attrs (const TAO_Notify::NVPList& attrs) { SuperClass::load_attrs(attrs); ACE_CString ior; if (attrs.load("PeerIOR", ior)) { CORBA::ORB_var orb = TAO_Notify_PROPERTIES::instance()->orb(); try { CosNotifyComm::StructuredPushConsumer_var pc = CosNotifyComm::StructuredPushConsumer::_nil(); if (ior.length() > 0) { CORBA::Object_var obj = orb->string_to_object(ior.c_str()); pc = CosNotifyComm::StructuredPushConsumer::_unchecked_narrow(obj.in()); } this->connect_structured_push_consumer(pc.in()); } catch (const CORBA::Exception&) { // if we can't connect... tough } } }