FloodLight添加模块和增加自己的REST API

本文介绍如何在FloodLight中添加自定义模块及REST API。包括创建服务接口和服务实现类、配置依赖服务等步骤,并演示了如何通过REST API进行模块交互。

FloodLight添加模块和增加自己的REST API

ubuntu16.04 + floodlight 1.2

一、新增模块(可以参考现有的类,主要是不要忘记修改配置文件)

STEP 1:
创建服务接口,继承IFloodlightService类
STEP 2:
创建服务实现模块类,实现IFloodlightModule和其对应的服务接口
STEP 3:
模块类getModuleServices函数,添加其实现的服务接口
STEP 4:
模块类getServiceImpls,实现服务接口,到该类的map映射
STEP 5:
模块类getModuleDependencies,添加该模块类实现的依赖服务
STEP 6:
模块类init,从上下文获得依赖服务
STEP 7:
模块类startUp,模块启动内容。
STEP 8:
src/resource中修改配置文件
(1)META-INF/services/net.floodlightcontroller.core.module.IFloodlightModule
(2)floodlightdefault.properties
2个文件中都添加新加的模块类

二、REST API使用

官方文档地址

与REST API相关的包和类:
(1)serizlizers 主要是控制输出
(2)web包中的:
    Resource结尾的类:
        主要用于REST 风格请求的实际处理
	Routable结尾的类:
	    主要用于给指定路径的请求分配对应的Resource处理。
	    
使用举例:
(1)在某个Resource类中新增POST:
    1)新建方法
    2)为方法添加@Post注解
    3)实现方法
(2)对应的WebRoutable类中添加了专门为了指标约束路径算法请求服务的请求和实现绑定
   router.attach("路径", 某个Resource.class); 
(3)curl请求
curl -X POST -d json对象 http://localhost:8080/wm/模块/路径

三、开启一些额外的功能,比如收集信息

在src/resources/floodlightdefault.propertiess中修改支持
net.floodlightcontroller.statistics.StatisticsCollector.enable=TRUE
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值