AbstractDriverLoader
已知driverAdminServer
根据path读取配置文件的内容
1、进入到XMLDriverLoader里,根据XML
创建Provider------------------------------------------------------------------------------------>XMLDriverLoader
进入loadDrivers(InputStream ,DriverResolver)
1、创建一个XMLConfiguration,感觉主要功能是为了将读
取的配置文件内容生成一个document。
2、将形成的XMLConfiguration传入loadDrivers()
对配置文件中的每一个driver进行遍历,对每个driver
进行如下操作:
(1)根据配置文件生成一个DefaultDriver
(2)将driver放入drivers和provider里面
返回provider
DriverManager
根据返回的provider进入registerProvider()
对provider里的每一个driver进行循环:
(1)调用DefaultDriverProvider--------------------------------------------------------------->
DefaultDriverProvider
进入addDriver(),为provider提供特定的driver,
如果已经存在就合并,如果
没有则添加到
drivers
里
(2)进入DefaultDriver获得driver的一些信息
(3)将driver的信息加入到
driverByKey里
【形如:“juniper--IOS”->DefaultDriver{name="juniper-netconf,
",parents=.......}】
(4)对driver中的每一个behavior进行循环,加入到
classes中。
【形如:org.onosproject.drivers.juniper.InterfaceConfigJuniperIosImpl
--->class org.onosproject.......juniper........】
(5)将provider加入
providers里
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)