Open Kilda Java Documentation
org.openkilda.pce.provider.NeoDriver Class Reference
Inheritance diagram for org.openkilda.pce.provider.NeoDriver:
org.openkilda.pce.provider.PathComputer

Public Member Functions

 NeoDriver (Driver driver)
 
ImmutablePair< PathInfoData, PathInfoDatagetPath (Flow flow, Strategy strategy) throws UnroutablePathException, RecoverableException
 
ImmutablePair< PathInfoData, PathInfoDatagetPath (Flow flow, AvailableNetwork network, Strategy strategy) throws UnroutablePathException, RecoverableException
 
List< FlowInfogetFlowInfo ()
 
List< FlowgetFlow (String flowId)
 
List< FlowgetFlows (String flowId)
 
List< FlowgetAllFlows ()
 
List< SwitchInfoDatagetSwitches ()
 
List< IslInfoDatagetIsls ()
 
AvailableNetwork getAvailableNetwork (boolean ignoreBandwidth, long requestedBandwidth)
 
- Public Member Functions inherited from org.openkilda.pce.provider.PathComputer
default Long getWeight (IslInfoData isl)
 

Detailed Description

Definition at line 52 of file NeoDriver.java.

Constructor & Destructor Documentation

◆ NeoDriver()

org.openkilda.pce.provider.NeoDriver.NeoDriver ( Driver  driver)

Definition at line 58 of file NeoDriver.java.

Member Function Documentation

◆ getAllFlows()

List<Flow> org.openkilda.pce.provider.NeoDriver.getAllFlows ( )

Read flows from Neo4j and covert them in our common representation org.openkilda.messaging.model.Flow

Returns
all flow objects stored in neo4j

Implements org.openkilda.pce.provider.PathComputer.

Definition at line 188 of file NeoDriver.java.

◆ getAvailableNetwork()

AvailableNetwork org.openkilda.pce.provider.NeoDriver.getAvailableNetwork ( boolean  ignoreBandwidth,
long  requestedBandwidth 
)

Loads network and ignores all ISLs with not enough available bandwidth if ignoreBandwidth is false.

Parameters
ignoreBandwidthdefines if available bandwidth of links should be taken into account for calculations.
requestedBandwidthlinks in path should have enough amount of available bandwidth.
Returns
built network.

Implements org.openkilda.pce.provider.PathComputer.

Definition at line 319 of file NeoDriver.java.

◆ getFlow()

List<Flow> org.openkilda.pce.provider.NeoDriver.getFlow ( String  flowId)

Read a single flow from Neo4j and convert to our common representation Flow. In reality, a single flow will typically be bi-directional, so just represent as a list.

Returns
the Flow if it exists, null otherwise.

Implements org.openkilda.pce.provider.PathComputer.

Definition at line 175 of file NeoDriver.java.

◆ getFlowInfo()

List<FlowInfo> org.openkilda.pce.provider.NeoDriver.getFlowInfo ( )

Interact with the PathComputer to get the FlowInfo for all flows.

Returns
a list containing the "key" flow info for all flows.

Implements org.openkilda.pce.provider.PathComputer.

Definition at line 148 of file NeoDriver.java.

◆ getFlows()

List<Flow> org.openkilda.pce.provider.NeoDriver.getFlows ( String  flowId)

Implements org.openkilda.pce.provider.PathComputer.

Definition at line 181 of file NeoDriver.java.

◆ getIsls()

List<IslInfoData> org.openkilda.pce.provider.NeoDriver.getIsls ( )

Implements org.openkilda.pce.provider.PathComputer.

Definition at line 263 of file NeoDriver.java.

◆ getPath() [1/2]

ImmutablePair<PathInfoData, PathInfoData> org.openkilda.pce.provider.NeoDriver.getPath ( Flow  flow,
Strategy  strategy 
) throws UnroutablePathException, RecoverableException

Gets path between source and destination switch for specified flow.

Parameters
flowFlow instances
Returns
PathInfoData instances

Implements org.openkilda.pce.provider.PathComputer.

Definition at line 66 of file NeoDriver.java.

◆ getPath() [2/2]

ImmutablePair<PathInfoData, PathInfoData> org.openkilda.pce.provider.NeoDriver.getPath ( Flow  flow,
AvailableNetwork  network,
Strategy  strategy 
) throws UnroutablePathException, RecoverableException

Gets path between source and destination switches for specified flow in preloaded network topology.

Parameters
flowFlow instances
networkprepared network where searching will be performed.
Returns
PathInfoData instances

Implements org.openkilda.pce.provider.PathComputer.

Definition at line 76 of file NeoDriver.java.

◆ getSwitches()

List<SwitchInfoData> org.openkilda.pce.provider.NeoDriver.getSwitches ( )

Implements org.openkilda.pce.provider.PathComputer.

Definition at line 228 of file NeoDriver.java.


The documentation for this class was generated from the following file: