public interface FlowRule extends PiTranslatable
Modifier and Type | Interface and Description |
---|---|
static interface |
FlowRule.Builder
A flowrule builder.
|
static class |
FlowRule.FlowRemoveReason
Reason for flow parameter received from switches.
|
Modifier and Type | Field and Description |
---|---|
static IndexTableId |
DEFAULT_TABLE |
static int |
MAX_PRIORITY |
static int |
MAX_TIMEOUT |
static int |
MIN_PRIORITY |
Modifier and Type | Method and Description |
---|---|
short |
appId()
Returns the application id of this flow.
|
DeviceId |
deviceId()
Returns the identity of the device where this rule applies.
|
boolean |
equals(java.lang.Object obj)
Equality for flow rules only considers 'match equality'.
|
boolean |
exactMatch(FlowRule rule)
Returns whether this flow rule is an exact match to the flow rule given
in the argument.
|
GroupId |
groupId()
Returns the group id of this flow.
|
int |
hardTimeout()
Returns the hard timeout for this flow requested by an application.
|
FlowId |
id()
Returns the ID of this flow.
|
boolean |
isPermanent()
Returns whether the flow is permanent i.e.
|
FlowRuleExtPayLoad |
payLoad()
Deprecated.
in Junco release
|
int |
priority()
Returns the flow rule priority given in natural order; higher numbers
mean higher priorities.
|
FlowRule.FlowRemoveReason |
reason()
Returns the reason for the flow received from switches.
|
TrafficSelector |
selector()
Returns the traffic selector that identifies what traffic this rule
should apply to.
|
TableId |
table()
Returns the table identifier for this rule.
|
int |
tableId()
Deprecated.
in Loon release (version 1.11.0). Use
table() instead. |
int |
timeout()
Returns the timeout for this flow requested by an application.
|
TrafficTreatment |
treatment()
Returns the traffic treatment that applies to selected traffic.
|
static final IndexTableId DEFAULT_TABLE
static final int MAX_TIMEOUT
static final int MIN_PRIORITY
static final int MAX_PRIORITY
FlowId id()
short appId()
GroupId groupId()
int priority()
DeviceId deviceId()
TrafficSelector selector()
TrafficTreatment treatment()
int timeout()
int hardTimeout()
FlowRule.FlowRemoveReason reason()
boolean isPermanent()
@Deprecated int tableId()
table()
instead.TableId table()
boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
obj
- the reference object with which to compare.true
if this object is the same as the obj
argument; false
otherwise.boolean exactMatch(FlowRule rule)
Exact match means that deviceId, priority, selector, tableId, flowId and treatment are equal. Note that this differs from the notion of object equality for flow rules, which does not consider the flowId or treatment when testing equality.
rule
- other rule to match against@Deprecated FlowRuleExtPayLoad payLoad()