a. 管理者通过CORBA命名服务,获得最初的SNMPMgmt::ProxyAgentFinder对象。
b. 管理者调用SNMPMgmt:: ProxyAgentFinde对象上的access_domain操作,将得到的对象引用返回管理者。
c. 管理者取得被管结点所在域的存取权限后, 生成SNMPMgmt:: ProxyAgent对象,调用get_domain_factory_finder( )操作,获得被管对象域中两个初始对象的引用,分别是:CoslifeCycle::FactoryFinder和CosNaming::NamingContext。
d. 调用CoslifeCycle::FactoryFinde 的方法find_factory,管理者可以找到可用的工厂来创建被管对象,调用CosNaming::NamingContext 的resolve方法,管理者可以得到被管对象域中其他对象的引用。
(2)调用被管对象上操作
a. ProxyAgentFinder返回Pr-oxyAgent对象后,管理者调用ProxyAgent的get_variables( ),set_variables()等函数对被管对象进行操作。
b. ProxyAgent将这些操作作用于Gateway InterActor , Gateway InterActor向SNMP Agent发出并接受SNMP PDU来完成操作。
(3)被管对象的事件上报
a. 被管对象通过调用SNMPMgme::EventPortFinder对象的方法得到管理域的SNMPMgme::EventPort对象的引用,即通过调用find_event_port方法,得到SupplierAdmin对象。
b. SupplierAdmin对象和EventPort相关联,被管对象直接注册为此SupplierAdmin对象的PushSupplier。
c. 管理者把自己注册为本地EventChannel的PushConsumer,EventChannel把自己注册为EventPort的PushConsumer。
d. Gateway TrapHandler 收到SNMP Agent 的Trap PDU,将其解码,转换成CORBA事件后发送到EventPort。
e. EventPort 接收事件后,调用EventChannel的Push 方法,将事件数据传到EventChannel EventChannel收到事件后,调用管理者对象的Push 方法, 将事件数据传到已经注册的管理对象。