Package p4.v1

Interface P4RuntimeOuterClass.TableEntryOrBuilder

All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
All Known Implementing Classes:
P4RuntimeOuterClass.TableEntry, P4RuntimeOuterClass.TableEntry.Builder
Enclosing class:
P4RuntimeOuterClass

public static interface P4RuntimeOuterClass.TableEntryOrBuilder extends com.google.protobuf.MessageOrBuilder
  • Method Details

    • getTableId

      int getTableId()
      uint32 table_id = 1;
      Returns:
      The tableId.
    • getMatchList

      repeated .p4.v1.FieldMatch match = 2;
    • getMatch

      P4RuntimeOuterClass.FieldMatch getMatch(int index)
      repeated .p4.v1.FieldMatch match = 2;
    • getMatchCount

      int getMatchCount()
      repeated .p4.v1.FieldMatch match = 2;
    • getMatchOrBuilderList

      List<? extends P4RuntimeOuterClass.FieldMatchOrBuilder> getMatchOrBuilderList()
      repeated .p4.v1.FieldMatch match = 2;
    • getMatchOrBuilder

      P4RuntimeOuterClass.FieldMatchOrBuilder getMatchOrBuilder(int index)
      repeated .p4.v1.FieldMatch match = 2;
    • hasAction

      boolean hasAction()
      .p4.v1.TableAction action = 3;
      Returns:
      Whether the action field is set.
    • getAction

      .p4.v1.TableAction action = 3;
      Returns:
      The action.
    • getActionOrBuilder

      .p4.v1.TableAction action = 3;
    • getPriority

      int getPriority()
       Should only be set if the match implies a TCAM lookup, i.e. at least one of
       the match fields is Optional, Ternary or Range.  A higher number indicates
       higher priority.  Only a highest priority entry that matches the packet
       must be selected.  Multiple entries in the same table with the same
       priority value are permitted.  See Section "TableEntry" in the
       specification for details of the behavior.
       
      int32 priority = 4;
      Returns:
      The priority.
    • getControllerMetadata

      @Deprecated long getControllerMetadata()
      Deprecated.
      p4.v1.TableEntry.controller_metadata is deprecated. See p4/v1/p4runtime.proto;l=164
       Metadata (cookie) opaque to the target. There is no requirement of where
       this is stored, as long as it is returned with the rest of the entry in
       a Read RPC. This is deprecated in favor of the more flexible metadata
       field.
       
      uint64 controller_metadata = 5 [deprecated = true];
      Returns:
      The controllerMetadata.
    • hasMeterConfig

      boolean hasMeterConfig()
       meter_config, counter_data and meter_counter_data are convenience fields
       that enable the controller to configure the direct resources associated
       with the table at the same time as a match-action entry is inserted or
       modified.
       Table write:
       - If the table does not contain a direct resource, then setting the
       corresponding direct resource field in any table write operation will
       return an error.
       - When inserting a new table entry, leaving these fields unset means that
       the direct resources of this table (if any) will assume default values.
       For counters, the default value is 0, and for meters, the default value
       is always green.
       - When updating a table entry, leaving meter_config unset will reset the
       meter (if any) to its default configuration, while leaving counter_data
       or meter_counter_data unset means that the counter (if any) will not be
       updated.
       Table read:
       - If the table does not contain a direct resource, then the corresponding
       field will not be set in the read table entry.
       - If meter_config is unset in the request, or if the meter has a default
       configuration, meter_config will not be set in the response.
       - If counter_data or meter_counter_data is unset in the request, it will
       be unset in the response as well.
       
      .p4.v1.MeterConfig meter_config = 6;
      Returns:
      Whether the meterConfig field is set.
    • getMeterConfig

       meter_config, counter_data and meter_counter_data are convenience fields
       that enable the controller to configure the direct resources associated
       with the table at the same time as a match-action entry is inserted or
       modified.
       Table write:
       - If the table does not contain a direct resource, then setting the
       corresponding direct resource field in any table write operation will
       return an error.
       - When inserting a new table entry, leaving these fields unset means that
       the direct resources of this table (if any) will assume default values.
       For counters, the default value is 0, and for meters, the default value
       is always green.
       - When updating a table entry, leaving meter_config unset will reset the
       meter (if any) to its default configuration, while leaving counter_data
       or meter_counter_data unset means that the counter (if any) will not be
       updated.
       Table read:
       - If the table does not contain a direct resource, then the corresponding
       field will not be set in the read table entry.
       - If meter_config is unset in the request, or if the meter has a default
       configuration, meter_config will not be set in the response.
       - If counter_data or meter_counter_data is unset in the request, it will
       be unset in the response as well.
       
      .p4.v1.MeterConfig meter_config = 6;
      Returns:
      The meterConfig.
    • getMeterConfigOrBuilder

      P4RuntimeOuterClass.MeterConfigOrBuilder getMeterConfigOrBuilder()
       meter_config, counter_data and meter_counter_data are convenience fields
       that enable the controller to configure the direct resources associated
       with the table at the same time as a match-action entry is inserted or
       modified.
       Table write:
       - If the table does not contain a direct resource, then setting the
       corresponding direct resource field in any table write operation will
       return an error.
       - When inserting a new table entry, leaving these fields unset means that
       the direct resources of this table (if any) will assume default values.
       For counters, the default value is 0, and for meters, the default value
       is always green.
       - When updating a table entry, leaving meter_config unset will reset the
       meter (if any) to its default configuration, while leaving counter_data
       or meter_counter_data unset means that the counter (if any) will not be
       updated.
       Table read:
       - If the table does not contain a direct resource, then the corresponding
       field will not be set in the read table entry.
       - If meter_config is unset in the request, or if the meter has a default
       configuration, meter_config will not be set in the response.
       - If counter_data or meter_counter_data is unset in the request, it will
       be unset in the response as well.
       
      .p4.v1.MeterConfig meter_config = 6;
    • hasCounterData

      boolean hasCounterData()
      .p4.v1.CounterData counter_data = 7;
      Returns:
      Whether the counterData field is set.
    • getCounterData

      .p4.v1.CounterData counter_data = 7;
      Returns:
      The counterData.
    • getCounterDataOrBuilder

      P4RuntimeOuterClass.CounterDataOrBuilder getCounterDataOrBuilder()
      .p4.v1.CounterData counter_data = 7;
    • hasMeterCounterData

      boolean hasMeterCounterData()
       Per color counters for tables with a direct meter.
       Added in v1.4.0
       
      .p4.v1.MeterCounterData meter_counter_data = 12;
      Returns:
      Whether the meterCounterData field is set.
    • getMeterCounterData

       Per color counters for tables with a direct meter.
       Added in v1.4.0
       
      .p4.v1.MeterCounterData meter_counter_data = 12;
      Returns:
      The meterCounterData.
    • getMeterCounterDataOrBuilder

      P4RuntimeOuterClass.MeterCounterDataOrBuilder getMeterCounterDataOrBuilder()
       Per color counters for tables with a direct meter.
       Added in v1.4.0
       
      .p4.v1.MeterCounterData meter_counter_data = 12;
    • getIsDefaultAction

      boolean getIsDefaultAction()
       Set to true if the table entry is being used to update the non-const
       default action of the table. If true, the "match" field must be empty and
       the "action" field must be populated with a valid direct action.
       
      bool is_default_action = 8;
      Returns:
      The isDefaultAction.
    • getIdleTimeoutNs

      long getIdleTimeoutNs()
       The TTL for the entry, in nanoseconds. A value of 0 means that the table
       entry never "expires".
       
      int64 idle_timeout_ns = 9;
      Returns:
      The idleTimeoutNs.
    • hasTimeSinceLastHit

      boolean hasTimeSinceLastHit()
       Table write: this field should be left unset.
       Table read: if the table supports idle timeout and time_since_last_hit is
       set in the request, this field will be set in the response.
       
      .p4.v1.TableEntry.IdleTimeout time_since_last_hit = 10;
      Returns:
      Whether the timeSinceLastHit field is set.
    • getTimeSinceLastHit

       Table write: this field should be left unset.
       Table read: if the table supports idle timeout and time_since_last_hit is
       set in the request, this field will be set in the response.
       
      .p4.v1.TableEntry.IdleTimeout time_since_last_hit = 10;
      Returns:
      The timeSinceLastHit.
    • getTimeSinceLastHitOrBuilder

       Table write: this field should be left unset.
       Table read: if the table supports idle timeout and time_since_last_hit is
       set in the request, this field will be set in the response.
       
      .p4.v1.TableEntry.IdleTimeout time_since_last_hit = 10;
    • getMetadata

      com.google.protobuf.ByteString getMetadata()
       Arbitrary metadata from the controller that is opaque to the target.
       
      bytes metadata = 11;
      Returns:
      The metadata.
    • getIsConst

      boolean getIsConst()
       True if and only if the entry cannot be deleted or modified,
       i.e. any of the following:
       + Any entry read from a table declared with `const entries`
       + The default entry read from a table declared with `const
       default_action`
       + Any entry declared with `entries` without the `const` qualifier
       before `entries`, where the individual entry has the `const`
       qualifier on it in the P4 source code.
       Note: Older P4Runtime API servers before the `is_const` field was
       added to this message will not return a value for `is_const` in
       the first two cases above, but newer P4Runtime API servers will.
       Added in 1.4.0.
       
      bool is_const = 13;
      Returns:
      The isConst.