Package org.onosproject.net.flow
Interface Extension
-
- All Known Subinterfaces:
ExtensionSelector,ExtensionTreatment
- All Known Implementing Classes:
AbstractExtension,UnresolvedExtensionSelector,UnresolvedExtensionTreatment
public interface ExtensionAn extension to the northbound APIs.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voiddeserialize(byte[] data)Deserialize the extension from a byte array.List<String>getProperties()Gets a list of all properties on the extension.<T> TgetPropertyValue(String key)Gets a property value of an extension.byte[]serialize()Serialize the extension to a byte array.<T> voidsetPropertyValue(String key, T value)Sets a property on the extension.
-
-
-
Method Detail
-
setPropertyValue
<T> void setPropertyValue(String key, T value) throws ExtensionPropertyException
Sets a property on the extension.- Type Parameters:
T- class of the value- Parameters:
key- property keyvalue- value to set for the given key- Throws:
ExtensionPropertyException- if the given key is not a valid property on this extension
-
getPropertyValue
<T> T getPropertyValue(String key) throws ExtensionPropertyException
Gets a property value of an extension.- Type Parameters:
T- class of the value- Parameters:
key- property key- Returns:
- value of the property
- Throws:
ExtensionPropertyException- if the given key is not a valid property on this extension
-
getProperties
List<String> getProperties()
Gets a list of all properties on the extension.- Returns:
- list of properties
-
serialize
byte[] serialize()
Serialize the extension to a byte array.- Returns:
- byte array
-
deserialize
void deserialize(byte[] data)
Deserialize the extension from a byte array. The properties of this object will be overwritten with the data in the byte array.- Parameters:
data- input byte array
-
-