@Override public <F extends OFValueType<F>> Masked<F> getMasked(MatchField<F> field) throws UnsupportedOperationException { OFOxm<F> value = getOxm(field); if (value == null || !value.isMasked()) return null; // TODO: If changing OXMs to extend Masked, then use it here return Masked.of(value.getValue(), value.getMask()); }
@Override public boolean isPartiallyMasked(MatchField<?> field) { if (!supports(field)) throw new UnsupportedOperationException( "OFMatchV3Ver14 does not support matching on field " + field.getName()); OFOxm<?> oxm = this.oxmList.get(field); return oxm != null && oxm.isMasked(); }
@Override public boolean isPartiallyMasked(MatchField<?> field) { OFOxm<?> value = getOxm(field); return (value != null && value.isMasked()); }
@Override public boolean isExact(MatchField<?> field) { OFOxm<?> value = getOxm(field); return (value != null && !value.isMasked()); }