public static interface FlowRule.Builder
Modifier and Type | Method and Description |
---|---|
FlowRule |
build()
Builds a flow rule object.
|
FlowRule.Builder |
forDevice(DeviceId deviceId)
Sets the deviceId for this flow rule.
|
FlowRule.Builder |
forTable(int tableId)
Sets the table id for this flow rule, when the identifier is of type
TableId.Type.INDEX . |
FlowRule.Builder |
forTable(TableId tableId)
Sets the table identifier for this flow rule.
|
FlowRule.Builder |
fromApp(ApplicationId appId)
Assigns the application that built this flow rule to this object.
|
FlowRule.Builder |
makePermanent()
Makes this rule permanent on the dataplane.
|
FlowRule.Builder |
makeTemporary(int timeout)
Makes this rule temporary and timeout after the specified amount
of time.
|
FlowRule.Builder |
withCookie(long cookie)
Assigns a cookie value to this flowrule.
|
FlowRule.Builder |
withHardTimeout(int timeout)
Sets hard timeout parameter in flow table.
|
default FlowRule.Builder |
withIdleTimeout(int timeout)
Sets the idle timeout parameter in flow table.
|
FlowRule.Builder |
withPriority(int priority)
Sets the priority for this flow rule.
|
FlowRule.Builder |
withReason(FlowRule.FlowRemoveReason reason)
Sets reason parameter received from switches .
|
FlowRule.Builder |
withSelector(TrafficSelector selector)
Sets the selector (or match field) for this flow rule.
|
FlowRule.Builder |
withTreatment(TrafficTreatment treatment)
Sets the traffic treatment for this flow rule.
|
FlowRule.Builder withCookie(long cookie)
cookie
- a long valueFlowRule.Builder fromApp(ApplicationId appId)
appId
- an application idFlowRule.Builder withPriority(int priority)
priority
- an integerFlowRule.Builder forDevice(DeviceId deviceId)
deviceId
- a device idFlowRule.Builder forTable(int tableId)
TableId.Type.INDEX
. Default
value is 0.
Important: This method is left here for backward compatibility with applications that specifies
table identifiers using integers, e.g. as in OpenFlow. Currently there is no plan to deprecate this method,
however, new applications should favor using forTable(TableId)
.
tableId
- an integerFlowRule.Builder forTable(TableId tableId)
TableId.Type.INDEX
and value 0.tableId
- table identifierFlowRule.Builder withSelector(TrafficSelector selector)
selector
- a traffic selectorFlowRule.Builder withTreatment(TrafficTreatment treatment)
treatment
- a traffic treatmentFlowRule.Builder makePermanent()
FlowRule.Builder makeTemporary(int timeout)
timeout
- an integerdefault FlowRule.Builder withIdleTimeout(int timeout)
timeout
- an integerFlowRule.Builder withHardTimeout(int timeout)
timeout
- an integerFlowRule.Builder withReason(FlowRule.FlowRemoveReason reason)
reason
- a shortFlowRule build()