Bumped supported revisions of P4 tools
Includes:
- Use new P4Runtime "v1" package names
- Removed VALID match
- New table entry priority spec (1 is min priority, not 0)
- Fixed p4c-bm2-ss to include arch flag
- Re-compiled P4 programs with more recent p4c (with updated p4info)
Change-Id: I05908f40eda0f0c755009268fd261fb8bcc9be35
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/ActionProfileGroupEncoder.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/ActionProfileGroupEncoder.java
index 9a01a82..20f39df 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/ActionProfileGroupEncoder.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/ActionProfileGroupEncoder.java
@@ -21,10 +21,10 @@
import org.onosproject.net.pi.model.PiPipeconf;
import org.onosproject.net.pi.runtime.PiActionGroup;
import org.onosproject.net.pi.runtime.PiActionGroupId;
-import p4.P4RuntimeOuterClass.ActionProfileGroup;
-import p4.P4RuntimeOuterClass.ActionProfileGroup.Member;
-import p4.P4RuntimeOuterClass.ActionProfileMember;
-import p4.config.P4InfoOuterClass;
+import p4.v1.P4RuntimeOuterClass.ActionProfileGroup;
+import p4.v1.P4RuntimeOuterClass.ActionProfileGroup.Member;
+import p4.v1.P4RuntimeOuterClass.ActionProfileMember;
+import p4.config.v1.P4InfoOuterClass;
import java.util.Collection;
import java.util.Map;
@@ -34,7 +34,8 @@
/**
* Encoder/Decoder for action profile group.
*/
-public final class ActionProfileGroupEncoder {
+final class ActionProfileGroupEncoder {
+
private ActionProfileGroupEncoder() {
// hide default constructor
}
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/ActionProfileMemberEncoder.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/ActionProfileMemberEncoder.java
index 7170eba..ba31e69 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/ActionProfileMemberEncoder.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/ActionProfileMemberEncoder.java
@@ -20,9 +20,9 @@
import org.onosproject.net.pi.model.PiPipeconf;
import org.onosproject.net.pi.runtime.PiActionGroupMember;
import org.onosproject.net.pi.runtime.PiActionGroupMemberId;
-import p4.P4RuntimeOuterClass;
-import p4.P4RuntimeOuterClass.ActionProfileMember;
-import p4.config.P4InfoOuterClass;
+import p4.config.v1.P4InfoOuterClass;
+import p4.v1.P4RuntimeOuterClass;
+import p4.v1.P4RuntimeOuterClass.ActionProfileMember;
import static java.lang.String.format;
import static org.onosproject.p4runtime.ctl.TableEntryEncoder.decodeActionMsg;
@@ -39,20 +39,13 @@
/**
* Encode a PiActionGroupMember to a ActionProfileMember.
*
- * @param group the PI action group of members
- * @param member the member to encode
- * @param pipeconf the pipeconf
- * @return encoded member
- */
- /**
- * Encode a PiActionGroupMember to a ActionProfileMember.
- *
* @param profileId the PI action group profile ID of members
- * @param member the member to encode
- * @param pipeconf the pipeconf, as encode spec
+ * @param member the member to encode
+ * @param pipeconf the pipeconf, as encode spec
* @return encoded member
- * @throws P4InfoBrowser.NotFoundException can't find action profile from P4Info browser
- * @throws EncodeException can't find P4Info from pipeconf
+ * @throws P4InfoBrowser.NotFoundException can't find action profile from
+ * P4Info browser
+ * @throws EncodeException can't find P4Info from pipeconf
*/
static ActionProfileMember encode(PiActionProfileId profileId,
PiActionGroupMember member,
@@ -88,12 +81,14 @@
/**
* Decode an action profile member to PI action group member.
*
- * @param member the action profile member
- * @param weight the weight of the member
+ * @param member the action profile member
+ * @param weight the weight of the member
* @param pipeconf the pipeconf, as decode spec
* @return decoded PI action group member
- * @throws P4InfoBrowser.NotFoundException can't find definition of action from P4 info
- * @throws EncodeException can't get P4 info browser from pipeconf
+ * @throws P4InfoBrowser.NotFoundException can't find definition of action
+ * from P4 info
+ * @throws EncodeException can't get P4 info browser from
+ * pipeconf
*/
static PiActionGroupMember decode(ActionProfileMember member,
int weight,
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/CounterEntryCodec.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/CounterEntryCodec.java
index 17bff76..ec50c68 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/CounterEntryCodec.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/CounterEntryCodec.java
@@ -24,11 +24,11 @@
import org.onosproject.net.pi.runtime.PiCounterCellId;
import org.onosproject.net.pi.runtime.PiTableEntry;
import org.slf4j.Logger;
-import p4.P4RuntimeOuterClass;
-import p4.P4RuntimeOuterClass.CounterData;
-import p4.P4RuntimeOuterClass.CounterEntry;
-import p4.P4RuntimeOuterClass.DirectCounterEntry;
-import p4.P4RuntimeOuterClass.Entity;
+import p4.v1.P4RuntimeOuterClass;
+import p4.v1.P4RuntimeOuterClass.CounterData;
+import p4.v1.P4RuntimeOuterClass.CounterEntry;
+import p4.v1.P4RuntimeOuterClass.DirectCounterEntry;
+import p4.v1.P4RuntimeOuterClass.Entity;
import java.util.Collection;
import java.util.Collections;
@@ -38,8 +38,8 @@
import static java.lang.String.format;
import static org.onosproject.p4runtime.ctl.P4RuntimeUtils.indexMsg;
import static org.slf4j.LoggerFactory.getLogger;
-import static p4.P4RuntimeOuterClass.Entity.EntityCase.COUNTER_ENTRY;
-import static p4.P4RuntimeOuterClass.Entity.EntityCase.DIRECT_COUNTER_ENTRY;
+import static p4.v1.P4RuntimeOuterClass.Entity.EntityCase.COUNTER_ENTRY;
+import static p4.v1.P4RuntimeOuterClass.Entity.EntityCase.DIRECT_COUNTER_ENTRY;
/**
* Encoder/decoder of PI counter IDs to counter entry protobuf messages, and
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/DefaultArbitration.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/DefaultArbitration.java
index 8c83bee..e8b8658 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/DefaultArbitration.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/DefaultArbitration.java
@@ -19,7 +19,7 @@
import org.onosproject.net.DeviceId;
import org.onosproject.net.MastershipRole;
import org.onosproject.p4runtime.api.P4RuntimeEventSubject;
-import p4.P4RuntimeOuterClass.Uint128;
+import p4.v1.P4RuntimeOuterClass.Uint128;
/**
* Default implementation of arbitration in P4Runtime.
@@ -36,7 +36,7 @@
* @param role the role
* @param electionId the election id
*/
- public DefaultArbitration(DeviceId deviceId, MastershipRole role, Uint128 electionId) {
+ DefaultArbitration(DeviceId deviceId, MastershipRole role, Uint128 electionId) {
this.deviceId = deviceId;
this.role = role;
this.electionId = electionId;
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/MeterEntryCodec.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/MeterEntryCodec.java
index a830f6d..12379fd 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/MeterEntryCodec.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/MeterEntryCodec.java
@@ -25,11 +25,11 @@
import org.onosproject.net.pi.runtime.PiMeterCellId;
import org.onosproject.net.pi.runtime.PiTableEntry;
import org.slf4j.Logger;
-import p4.P4RuntimeOuterClass;
-import p4.P4RuntimeOuterClass.DirectMeterEntry;
-import p4.P4RuntimeOuterClass.Entity;
-import p4.P4RuntimeOuterClass.MeterConfig;
-import p4.P4RuntimeOuterClass.MeterEntry;
+import p4.v1.P4RuntimeOuterClass;
+import p4.v1.P4RuntimeOuterClass.DirectMeterEntry;
+import p4.v1.P4RuntimeOuterClass.Entity;
+import p4.v1.P4RuntimeOuterClass.MeterConfig;
+import p4.v1.P4RuntimeOuterClass.MeterEntry;
import java.util.Collection;
import java.util.Collections;
@@ -39,8 +39,8 @@
import static java.lang.String.format;
import static org.onosproject.p4runtime.ctl.P4RuntimeUtils.indexMsg;
import static org.slf4j.LoggerFactory.getLogger;
-import static p4.P4RuntimeOuterClass.Entity.EntityCase.DIRECT_METER_ENTRY;
-import static p4.P4RuntimeOuterClass.Entity.EntityCase.METER_ENTRY;
+import static p4.v1.P4RuntimeOuterClass.Entity.EntityCase.DIRECT_METER_ENTRY;
+import static p4.v1.P4RuntimeOuterClass.Entity.EntityCase.METER_ENTRY;
/**
* Encoder/decoder of PI meter cell configurations to meter entry protobuf
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4DataCodec.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4DataCodec.java
index 5b0a2c5..551bf5c 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4DataCodec.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4DataCodec.java
@@ -18,9 +18,9 @@
import com.google.protobuf.ByteString;
import org.onlab.util.ImmutableByteSequence;
+import org.onosproject.net.pi.model.PiData;
import org.onosproject.net.pi.runtime.data.PiBitString;
import org.onosproject.net.pi.runtime.data.PiBool;
-import org.onosproject.net.pi.model.PiData;
import org.onosproject.net.pi.runtime.data.PiEnumString;
import org.onosproject.net.pi.runtime.data.PiErrorString;
import org.onosproject.net.pi.runtime.data.PiHeader;
@@ -29,13 +29,16 @@
import org.onosproject.net.pi.runtime.data.PiHeaderUnionStack;
import org.onosproject.net.pi.runtime.data.PiStruct;
import org.onosproject.net.pi.runtime.data.PiTuple;
-import org.slf4j.Logger;
-import p4.P4Types;
import java.util.List;
import java.util.stream.Collectors;
-import static org.slf4j.LoggerFactory.getLogger;
+import static p4.v1.P4DataOuterClass.P4Data;
+import static p4.v1.P4DataOuterClass.P4Header;
+import static p4.v1.P4DataOuterClass.P4HeaderStack;
+import static p4.v1.P4DataOuterClass.P4HeaderUnion;
+import static p4.v1.P4DataOuterClass.P4HeaderUnionStack;
+import static p4.v1.P4DataOuterClass.P4StructLike;
/**
* Encoder/decoder of PI Data entry to P4 Data entry protobuf
@@ -43,14 +46,12 @@
*/
final class P4DataCodec {
- private static final Logger log = getLogger(P4DataCodec.class);
-
private P4DataCodec() {
// Hides constructor.
}
- private static P4Types.P4Header encodeHeader(PiHeader piHeader) {
- P4Types.P4Header.Builder builder = P4Types.P4Header.newBuilder();
+ private static P4Header encodeHeader(PiHeader piHeader) {
+ P4Header.Builder builder = P4Header.newBuilder();
int i = 0;
for (ImmutableByteSequence bitString : piHeader.bitStrings()) {
builder.setBitstrings(i, ByteString.copyFrom(bitString.asArray()));
@@ -59,7 +60,7 @@
return builder.setIsValid(piHeader.isValid()).build();
}
- private static PiHeader decodeHeader(P4Types.P4Header p4Header) {
+ private static PiHeader decodeHeader(P4Header p4Header) {
List<ImmutableByteSequence> bitStrings = p4Header.getBitstringsList().stream()
.map(bit -> ImmutableByteSequence.copyFrom(bit.asReadOnlyByteBuffer()))
.collect(Collectors.toList());
@@ -67,9 +68,9 @@
return PiHeader.of(p4Header.getIsValid(), bitStrings);
}
- private static P4Types.P4HeaderUnion encodeHeaderUnion(PiHeaderUnion headerUnion) {
+ private static P4HeaderUnion encodeHeaderUnion(PiHeaderUnion headerUnion) {
- P4Types.P4HeaderUnion.Builder builder = P4Types.P4HeaderUnion.newBuilder();
+ P4HeaderUnion.Builder builder = P4HeaderUnion.newBuilder();
if (headerUnion.isValid()) {
builder.setValidHeader(encodeHeader(headerUnion.header()));
builder.setValidHeaderName(headerUnion.headerName());
@@ -82,45 +83,45 @@
return builder.build();
}
- private static PiHeaderUnion decodeHeaderUnion(P4Types.P4HeaderUnion p4HeaderUnion) {
+ private static PiHeaderUnion decodeHeaderUnion(P4HeaderUnion p4HeaderUnion) {
return PiHeaderUnion.of(p4HeaderUnion.getValidHeaderName(),
decodeHeader(p4HeaderUnion.getValidHeader()));
}
- private static P4Types.P4StructLike encodeStruct(PiStruct piStruct) {
- P4Types.P4StructLike.Builder builder = P4Types.P4StructLike.newBuilder();
+ private static P4StructLike encodeStruct(PiStruct piStruct) {
+ P4StructLike.Builder builder = P4StructLike.newBuilder();
builder.addAllMembers(piStruct.struct().stream()
- .map(piData -> encodeP4Data(piData))
+ .map(P4DataCodec::encodeP4Data)
.collect(Collectors.toList()));
return builder.build();
}
- private static PiStruct decodeStruct(P4Types.P4StructLike p4StructLike) {
+ private static PiStruct decodeStruct(P4StructLike p4StructLike) {
return PiStruct.of(p4StructLike.getMembersList().stream()
- .map(p4Data -> decodeP4Data(p4Data))
+ .map(P4DataCodec::decodeP4Data)
.collect(Collectors.toList()));
}
- private static P4Types.P4StructLike encodeTuple(PiTuple piTuple) {
- P4Types.P4StructLike.Builder builder = P4Types.P4StructLike.newBuilder();
+ private static P4StructLike encodeTuple(PiTuple piTuple) {
+ P4StructLike.Builder builder = P4StructLike.newBuilder();
builder.addAllMembers(piTuple.tuple().stream()
- .map(piData -> encodeP4Data(piData))
+ .map(P4DataCodec::encodeP4Data)
.collect(Collectors.toList()));
return builder.build();
}
- private static PiTuple decodeTuple(P4Types.P4StructLike p4StructLike) {
+ private static PiTuple decodeTuple(P4StructLike p4StructLike) {
return PiTuple.of(p4StructLike.getMembersList().stream()
- .map(p4Data -> decodeP4Data(p4Data))
+ .map(P4DataCodec::decodeP4Data)
.collect(Collectors.toList()));
}
- static P4Types.P4Data encodeP4Data(PiData piData) {
+ static P4Data encodeP4Data(PiData piData) {
- P4Types.P4Data.Builder builder = P4Types.P4Data.newBuilder();
+ P4Data.Builder builder = P4Data.newBuilder();
switch (piData.type()) {
case BITSTRING:
builder.setBitstring(ByteString.copyFrom(((PiBitString) piData).bitString().asArray()));
@@ -144,7 +145,7 @@
builder.setHeader(encodeHeader((PiHeader) piData));
break;
case HEADERSTACK:
- P4Types.P4HeaderStack.Builder headerStack = P4Types.P4HeaderStack.newBuilder();
+ P4HeaderStack.Builder headerStack = P4HeaderStack.newBuilder();
int i = 0;
for (PiHeader header : ((PiHeaderStack) piData).headers()) {
headerStack.setEntries(i, encodeHeader(header));
@@ -156,7 +157,7 @@
builder.setHeaderUnion(encodeHeaderUnion((PiHeaderUnion) piData));
break;
case HEADERUNIONSTACK:
- P4Types.P4HeaderUnionStack.Builder headerUnionStack = P4Types.P4HeaderUnionStack.newBuilder();
+ P4HeaderUnionStack.Builder headerUnionStack = P4HeaderUnionStack.newBuilder();
int j = 0;
for (PiHeaderUnion headerUnion : ((PiHeaderUnionStack) piData).headerUnions()) {
headerUnionStack.setEntries(j, encodeHeaderUnion(headerUnion));
@@ -171,7 +172,7 @@
return builder.build();
}
- static PiData decodeP4Data(P4Types.P4Data p4Data) {
+ static PiData decodeP4Data(P4Data p4Data) {
PiData piData = null;
switch (p4Data.getDataCase()) {
@@ -195,13 +196,13 @@
break;
case HEADER_STACK:
piData = PiHeaderStack.of(p4Data.getHeaderStack().getEntriesList().stream()
- .map(p4header -> decodeHeader(p4header))
+ .map(P4DataCodec::decodeHeader)
.collect(Collectors.toList()));
break;
case HEADER_UNION_STACK:
piData = PiHeaderUnionStack.of(p4Data.getHeaderUnionStack()
.getEntriesList().stream()
- .map(p4HeaderUnion -> decodeHeaderUnion(p4HeaderUnion))
+ .map(P4DataCodec::decodeHeaderUnion)
.collect(Collectors.toList()));
break;
case ENUM:
@@ -218,4 +219,4 @@
return piData;
}
-}
\ No newline at end of file
+}
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4InfoBrowser.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4InfoBrowser.java
index 055b0c3..801ce36 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4InfoBrowser.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4InfoBrowser.java
@@ -19,17 +19,17 @@
import com.google.common.collect.Maps;
import com.google.protobuf.Message;
-import p4.config.P4InfoOuterClass.Action;
-import p4.config.P4InfoOuterClass.ActionProfile;
-import p4.config.P4InfoOuterClass.ControllerPacketMetadata;
-import p4.config.P4InfoOuterClass.Counter;
-import p4.config.P4InfoOuterClass.DirectCounter;
-import p4.config.P4InfoOuterClass.DirectMeter;
-import p4.config.P4InfoOuterClass.MatchField;
-import p4.config.P4InfoOuterClass.Meter;
-import p4.config.P4InfoOuterClass.P4Info;
-import p4.config.P4InfoOuterClass.Preamble;
-import p4.config.P4InfoOuterClass.Table;
+import p4.config.v1.P4InfoOuterClass.Action;
+import p4.config.v1.P4InfoOuterClass.ActionProfile;
+import p4.config.v1.P4InfoOuterClass.ControllerPacketMetadata;
+import p4.config.v1.P4InfoOuterClass.Counter;
+import p4.config.v1.P4InfoOuterClass.DirectCounter;
+import p4.config.v1.P4InfoOuterClass.DirectMeter;
+import p4.config.v1.P4InfoOuterClass.MatchField;
+import p4.config.v1.P4InfoOuterClass.Meter;
+import p4.config.v1.P4InfoOuterClass.P4Info;
+import p4.config.v1.P4InfoOuterClass.Preamble;
+import p4.config.v1.P4InfoOuterClass.Table;
import java.util.Map;
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4RuntimeClientImpl.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4RuntimeClientImpl.java
index 624c41c..43d01e5 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4RuntimeClientImpl.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4RuntimeClientImpl.java
@@ -52,24 +52,24 @@
import org.onosproject.p4runtime.api.P4RuntimeClient;
import org.onosproject.p4runtime.api.P4RuntimeEvent;
import org.slf4j.Logger;
-import p4.P4RuntimeGrpc;
-import p4.P4RuntimeOuterClass;
-import p4.P4RuntimeOuterClass.ActionProfileGroup;
-import p4.P4RuntimeOuterClass.ActionProfileMember;
-import p4.P4RuntimeOuterClass.Entity;
-import p4.P4RuntimeOuterClass.ForwardingPipelineConfig;
-import p4.P4RuntimeOuterClass.MasterArbitrationUpdate;
-import p4.P4RuntimeOuterClass.PacketIn;
-import p4.P4RuntimeOuterClass.ReadRequest;
-import p4.P4RuntimeOuterClass.ReadResponse;
-import p4.P4RuntimeOuterClass.SetForwardingPipelineConfigRequest;
-import p4.P4RuntimeOuterClass.StreamMessageRequest;
-import p4.P4RuntimeOuterClass.StreamMessageResponse;
-import p4.P4RuntimeOuterClass.TableEntry;
-import p4.P4RuntimeOuterClass.Uint128;
-import p4.P4RuntimeOuterClass.Update;
-import p4.P4RuntimeOuterClass.WriteRequest;
-import p4.config.P4InfoOuterClass.P4Info;
+import p4.v1.P4RuntimeGrpc;
+import p4.v1.P4RuntimeOuterClass;
+import p4.v1.P4RuntimeOuterClass.ActionProfileGroup;
+import p4.v1.P4RuntimeOuterClass.ActionProfileMember;
+import p4.v1.P4RuntimeOuterClass.Entity;
+import p4.v1.P4RuntimeOuterClass.ForwardingPipelineConfig;
+import p4.v1.P4RuntimeOuterClass.MasterArbitrationUpdate;
+import p4.v1.P4RuntimeOuterClass.PacketIn;
+import p4.v1.P4RuntimeOuterClass.ReadRequest;
+import p4.v1.P4RuntimeOuterClass.ReadResponse;
+import p4.v1.P4RuntimeOuterClass.SetForwardingPipelineConfigRequest;
+import p4.v1.P4RuntimeOuterClass.StreamMessageRequest;
+import p4.v1.P4RuntimeOuterClass.StreamMessageResponse;
+import p4.v1.P4RuntimeOuterClass.TableEntry;
+import p4.v1.P4RuntimeOuterClass.Uint128;
+import p4.v1.P4RuntimeOuterClass.Update;
+import p4.v1.P4RuntimeOuterClass.WriteRequest;
+import p4.config.v1.P4InfoOuterClass.P4Info;
import p4.tmp.P4Config;
import java.nio.ByteBuffer;
@@ -96,11 +96,11 @@
import static java.lang.String.format;
import static org.onlab.util.Tools.groupedThreads;
import static org.slf4j.LoggerFactory.getLogger;
-import static p4.P4RuntimeOuterClass.Entity.EntityCase.ACTION_PROFILE_GROUP;
-import static p4.P4RuntimeOuterClass.Entity.EntityCase.ACTION_PROFILE_MEMBER;
-import static p4.P4RuntimeOuterClass.Entity.EntityCase.TABLE_ENTRY;
-import static p4.P4RuntimeOuterClass.PacketOut;
-import static p4.P4RuntimeOuterClass.SetForwardingPipelineConfigRequest.Action.VERIFY_AND_COMMIT;
+import static p4.v1.P4RuntimeOuterClass.Entity.EntityCase.ACTION_PROFILE_GROUP;
+import static p4.v1.P4RuntimeOuterClass.Entity.EntityCase.ACTION_PROFILE_MEMBER;
+import static p4.v1.P4RuntimeOuterClass.Entity.EntityCase.TABLE_ENTRY;
+import static p4.v1.P4RuntimeOuterClass.PacketOut;
+import static p4.v1.P4RuntimeOuterClass.SetForwardingPipelineConfigRequest.Action.VERIFY_AND_COMMIT;
/**
* Implementation of a P4Runtime client.
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4RuntimeUtils.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4RuntimeUtils.java
index 25ef153..5dafe2b 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4RuntimeUtils.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/P4RuntimeUtils.java
@@ -17,14 +17,14 @@
package org.onosproject.p4runtime.ctl;
import com.google.protobuf.ByteString;
-import p4.P4RuntimeOuterClass;
+import p4.v1.P4RuntimeOuterClass;
import static java.lang.String.format;
/**
* Utilities for P4 runtime control.
*/
-public final class P4RuntimeUtils {
+final class P4RuntimeUtils {
private P4RuntimeUtils() {
// Hide default construction
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/PacketIOCodec.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/PacketIOCodec.java
index 485689f..726e092 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/PacketIOCodec.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/PacketIOCodec.java
@@ -25,7 +25,7 @@
import org.onosproject.net.pi.runtime.PiControlMetadata;
import org.onosproject.net.pi.runtime.PiPacketOperation;
import org.slf4j.Logger;
-import p4.config.P4InfoOuterClass;
+import p4.config.v1.P4InfoOuterClass;
import java.util.Collections;
import java.util.List;
@@ -35,9 +35,9 @@
import static org.onlab.util.ImmutableByteSequence.copyFrom;
import static org.onosproject.p4runtime.ctl.P4InfoBrowser.NotFoundException;
import static org.slf4j.LoggerFactory.getLogger;
-import static p4.P4RuntimeOuterClass.PacketIn;
-import static p4.P4RuntimeOuterClass.PacketMetadata;
-import static p4.P4RuntimeOuterClass.PacketOut;
+import static p4.v1.P4RuntimeOuterClass.PacketIn;
+import static p4.v1.P4RuntimeOuterClass.PacketMetadata;
+import static p4.v1.P4RuntimeOuterClass.PacketOut;
/**
* Encoder of packet metadata, from ONOS Pi* format, to P4Runtime protobuf messages, and vice versa.
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/PipeconfHelper.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/PipeconfHelper.java
index a49fdd8..85fa2a8 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/PipeconfHelper.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/PipeconfHelper.java
@@ -24,7 +24,7 @@
import org.onosproject.net.pi.model.PiPipeconf;
import org.onosproject.net.pi.model.PiPipeconfId;
import org.slf4j.Logger;
-import p4.config.P4InfoOuterClass.P4Info;
+import p4.config.v1.P4InfoOuterClass.P4Info;
import java.io.IOException;
import java.io.InputStream;
diff --git a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/TableEntryEncoder.java b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/TableEntryEncoder.java
index 647b9cd..505b4cb 100644
--- a/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/TableEntryEncoder.java
+++ b/protocols/p4runtime/ctl/src/main/java/org/onosproject/p4runtime/ctl/TableEntryEncoder.java
@@ -37,13 +37,12 @@
import org.onosproject.net.pi.runtime.PiTableAction;
import org.onosproject.net.pi.runtime.PiTableEntry;
import org.onosproject.net.pi.runtime.PiTernaryFieldMatch;
-import org.onosproject.net.pi.runtime.PiValidFieldMatch;
import org.slf4j.Logger;
-import p4.P4RuntimeOuterClass.Action;
-import p4.P4RuntimeOuterClass.FieldMatch;
-import p4.P4RuntimeOuterClass.TableAction;
-import p4.P4RuntimeOuterClass.TableEntry;
-import p4.config.P4InfoOuterClass;
+import p4.v1.P4RuntimeOuterClass.Action;
+import p4.v1.P4RuntimeOuterClass.FieldMatch;
+import p4.v1.P4RuntimeOuterClass.TableAction;
+import p4.v1.P4RuntimeOuterClass.TableEntry;
+import p4.config.v1.P4InfoOuterClass;
import java.util.Collection;
import java.util.Collections;
@@ -348,13 +347,6 @@
.setLow(rangeLowValue)
.build())
.build();
- case VALID:
- PiValidFieldMatch validMatch = (PiValidFieldMatch) piFieldMatch;
- return fieldMatchMsgBuilder.setValid(
- FieldMatch.Valid.newBuilder()
- .setValue(validMatch.isValid())
- .build())
- .build();
default:
throw new EncodeException(format(
"Building of match type %s not implemented", piFieldMatch.type()));
@@ -422,9 +414,6 @@
ImmutableByteSequence rangeHighValue = copyFrom(rangeFieldMatch.getHigh().asReadOnlyByteBuffer());
ImmutableByteSequence rangeLowValue = copyFrom(rangeFieldMatch.getLow().asReadOnlyByteBuffer());
return new PiRangeFieldMatch(headerFieldId, rangeLowValue, rangeHighValue);
- case VALID:
- FieldMatch.Valid validFieldMatch = fieldMatchMsg.getValid();
- return new PiValidFieldMatch(headerFieldId, validFieldMatch.getValue());
default:
throw new EncodeException(format(
"Decoding of field match type '%s' not implemented", typeCase.name()));