Ignore PI range match field if not provided in flow rule

According to the P4Runtime v1.2.0 spec Sec 9.1.1, it is ok to omit a
range match field, as that means "don't care".

Change-Id: I090a04f98c931334cb2f86454d1acc98bceccb34
(cherry picked from commit 4a0b7f6ef1bbc815c23ee0a56e70cb5cddb7d447)
diff --git a/core/net/src/main/java/org/onosproject/net/pi/impl/PiFlowRuleTranslatorImpl.java b/core/net/src/main/java/org/onosproject/net/pi/impl/PiFlowRuleTranslatorImpl.java
index 561d62a..3647427 100644
--- a/core/net/src/main/java/org/onosproject/net/pi/impl/PiFlowRuleTranslatorImpl.java
+++ b/core/net/src/main/java/org/onosproject/net/pi/impl/PiFlowRuleTranslatorImpl.java
@@ -145,7 +145,7 @@
 
         if (!rule.isPermanent()) {
             if (tableModel.supportsAging()) {
-                tableEntryBuilder.withTimeout((double) rule.timeout());
+                tableEntryBuilder.withTimeout(rule.timeout());
             } else {
                 log.debug("Flow rule is temporary, but table '{}' doesn't support " +
                                   "aging, translating to permanent.", tableModel.id());
@@ -355,13 +355,13 @@
 
             if (!piCriterionFields.containsKey(fieldId) && criterion == null) {
                 // Neither a field in PiCriterion is available nor a Criterion mapping is possible.
-                // Can ignore if the match is ternary or LPM.
+                // Can ignore if match is ternary-like, as it means "don't care".
                 switch (fieldModel.matchType()) {
                     case TERNARY:
                     case LPM:
+                    case RANGE:
                         // Skip field.
                         break;
-                    // FIXME: Can we handle the case of RANGE or VALID match?
                     default:
                         throw new PiTranslationException(format(
                                 "No value found for required match field '%s'", fieldId));