The best way how to start consume lighty.io services is to check example applications in this project, usage of lighty core components as well as RESTCONF and NETCONF plugins.
- Simple RESTCONF-NETCONF SDN controller.
- Simple OPENFLOW SDN controller.
- Simple Spring Boot NETCONF SDN controller.
- Simple quarkus.io NETCONF SDN controller.
Typical controller project requires initialization of ODL core services, south-bound plugins and optionally RESTCONF north-bound plugin. ODL core services represent MD-SAL layer, controller, DataStore, global schema context and all related services.
- Add dependency on lighty.io core services
<dependencies>
<dependency>
<groupId>io.lighty.core.parents</groupId>
<artifactId>lighty-dependency-artifacts</artifactId>
<version>12.0.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
- Optionally add dependencies on south-bound or north-bound plugins.
- Initialize and start LightyController
LightyControllerBuilder lightyControllerBuilder = new LightyControllerBuilder();
LightyController lightyController = lightyControllerBuilder.from(controllerConfiguration).build();
lightyController.start().get();
Controller startup sequence consists of 5 easy steps. Step #4 is optional.
lighty.io supports development of two basic controller types:
- Standalone controller - runs in own JVM as micro service
- Embedded controller - runs with other application components in single JVM