@Beta public interface PiPipelineInterpreter extends HandlerBehaviour
| Modifier and Type | Interface and Description |
|---|---|
static class |
PiPipelineInterpreter.PiInterpreterException
Signals that an error was encountered while executing the interpreter.
|
| Modifier and Type | Method and Description |
|---|---|
Optional<PiHeaderFieldId> |
mapCriterionType(Criterion.Type type)
Returns the protocol-independent header field identifier that is equivalent to the given
criterion type, if present.
|
Optional<PiTableId> |
mapFlowRuleTableId(int flowRuleTableId)
Returns a protocol-independent table id equivalent to the given numeric table id (as in
FlowRule.tableId()). |
Optional<Criterion.Type> |
mapPiHeaderFieldId(PiHeaderFieldId headerFieldId)
Returns the criterion type that is equivalent to the given protocol-independent header field
identifier, if present.
|
PiTableAction |
mapTreatment(TrafficTreatment treatment,
PiPipeconf pipeconf)
Returns a table action of a protocol-independent pipeline that is functionally equivalent to
the given ONOS traffic treatment for the given pipeline configuration.
|
handler, setHandlerOptional<PiHeaderFieldId> mapCriterionType(Criterion.Type type)
type - criterion typeOptional<Criterion.Type> mapPiHeaderFieldId(PiHeaderFieldId headerFieldId)
headerFieldId - header field identifierOptional<PiTableId> mapFlowRuleTableId(int flowRuleTableId)
FlowRule.tableId()). If not present, it means that the given numeric table id cannot
be mapped to any table of the pipeline model.flowRuleTableId - a numeric table idPiTableAction mapTreatment(TrafficTreatment treatment, PiPipeconf pipeconf) throws PiPipelineInterpreter.PiInterpreterException
treatment - a ONOS traffic treatmentpipeconf - a pipeline configurationPiPipelineInterpreter.PiInterpreterException - if the treatment cannot be mapped to any table action