public interface IFloodlightProviderService extends IFloodlightService, java.lang.Runnable
Modifier and Type | Field and Description |
---|---|
static FloodlightContextStore<Ethernet> |
bcStore
A FloodlightContextStore object that can be used to retrieve the
packet-in payload
|
static java.lang.String |
CONTEXT_PI_PAYLOAD
A value stored in the floodlight context containing a parsed packet
representation of the payload of a packet-in message.
|
static java.lang.String |
SERVICE_DIRECTORY_SERVICE_NAME
Service name used in the service directory representing
the OpenFlow controller-switch channel
|
Modifier and Type | Method and Description |
---|---|
void |
addCompletionListener(IControllerCompletionListener listener)
Add a completion listener to the controller
|
void |
addHAListener(IHAListener listener)
Adds a listener for HA role events
|
void |
addInfoProvider(java.lang.String type,
IInfoProvider provider)
Add an info provider of a particular type
|
void |
addOFMessageListener(org.projectfloodlight.openflow.protocol.OFType type,
IOFMessageListener listener)
Adds an OpenFlow message listener
|
void |
addUpdateToQueue(Controller.IUpdate update)
Add an update task for asynchronous, serialized execution
|
java.lang.String |
getControllerId()
Gets the ID of the controller
|
java.util.Map<java.lang.String,java.lang.Object> |
getControllerInfo(java.lang.String type)
Return information of a particular type (for rest services)
|
java.util.Map<java.lang.String,java.lang.String> |
getControllerNodeIPs()
Get the current mapping of controller IDs to their IP addresses
Returns a copy of the current mapping.
|
java.util.Map<org.projectfloodlight.openflow.protocol.OFType,java.util.List<IOFMessageListener>> |
getListeners()
Return a non-modifiable list of all current listeners
|
java.util.Map<java.lang.String,java.lang.Long> |
getMemory()
Get controller memory information
|
Controller.ModuleLoaderState |
getModuleLoaderState()
Gets the current module loading state.
|
HARole |
getRole()
Get the current role of the controller
|
RoleInfo |
getRoleInfo()
Get the current role of the controller
|
RoleManager |
getRoleManager()
Gets the role manager
|
long |
getSystemStartTime()
Return the controller start time in milliseconds
|
java.lang.Long |
getUptime()
returns the uptime of this controller.
|
void |
handleMessage(IOFSwitch sw,
org.projectfloodlight.openflow.protocol.OFMessage m,
FloodlightContext bContext) |
void |
handleOutgoingMessage(IOFSwitch sw,
org.projectfloodlight.openflow.protocol.OFMessage m)
Process written messages through the message listeners for the controller
|
void |
removeCompletionListener(IControllerCompletionListener listener)
Remove a completion listener from the controller
|
void |
removeHAListener(IHAListener listener)
Removes a listener for HA role events
|
void |
removeInfoProvider(java.lang.String type,
IInfoProvider provider)
Remove an info provider of a particular type
|
void |
removeOFMessageListener(org.projectfloodlight.openflow.protocol.OFType type,
IOFMessageListener listener)
Removes an OpenFlow message listener
|
void |
run()
Run the main I/O loop of the Controller.
|
void |
setRole(HARole role,
java.lang.String changeDescription)
Set the role of the controller
|
static final java.lang.String CONTEXT_PI_PAYLOAD
static final FloodlightContextStore<Ethernet> bcStore
static final java.lang.String SERVICE_DIRECTORY_SERVICE_NAME
ILocalServiceAddressTracker
,
IClusterServiceAddressDirectory
,
Constant Field Valuesvoid addOFMessageListener(org.projectfloodlight.openflow.protocol.OFType type, IOFMessageListener listener)
type
- The OFType the component wants to listen forlistener
- The component that wants to listen for the messagevoid removeOFMessageListener(org.projectfloodlight.openflow.protocol.OFType type, IOFMessageListener listener)
type
- The OFType the component no long wants to listen forlistener
- The component that no longer wants to receive the messagejava.util.Map<org.projectfloodlight.openflow.protocol.OFType,java.util.List<IOFMessageListener>> getListeners()
HARole getRole()
RoleInfo getRoleInfo()
java.util.Map<java.lang.String,java.lang.String> getControllerNodeIPs()
IHAListener
java.lang.String getControllerId()
void setRole(HARole role, java.lang.String changeDescription)
role
- The new role for the controller nodechangeDescription
- The reason or other information for this role changevoid addUpdateToQueue(Controller.IUpdate update)
update
- void addHAListener(IHAListener listener)
listener
- The module that wants to listen for eventsvoid removeHAListener(IHAListener listener)
listener
- The module that no longer wants to listen for eventsvoid handleOutgoingMessage(IOFSwitch sw, org.projectfloodlight.openflow.protocol.OFMessage m)
sw
- The switch being written tom
- the messagejava.lang.NullPointerException
- if switch or msg is nullvoid run()
run
in interface java.lang.Runnable
void addInfoProvider(java.lang.String type, IInfoProvider provider)
type
- provider
- void removeInfoProvider(java.lang.String type, IInfoProvider provider)
type
- provider
- java.util.Map<java.lang.String,java.lang.Object> getControllerInfo(java.lang.String type)
type
- long getSystemStartTime()
java.util.Map<java.lang.String,java.lang.Long> getMemory()
java.lang.Long getUptime()
void handleMessage(IOFSwitch sw, org.projectfloodlight.openflow.protocol.OFMessage m, FloodlightContext bContext)
RoleManager getRoleManager()
Controller.ModuleLoaderState getModuleLoaderState()
void addCompletionListener(IControllerCompletionListener listener)
listener
- void removeCompletionListener(IControllerCompletionListener listener)
listener
-