blob: 4372e3005672ebc2d50480938803425ce71d39e6 [file] [log] [blame]
Andreas Wundsam40e14f72013-05-06 14:49:08 -07001package org.openflow.protocol.match;
2
Yotam Harcholfb4bfb92013-08-01 14:02:04 -07003import org.openflow.types.Masked;
Yotam Harchold7b84202013-07-26 16:08:10 -07004import org.openflow.types.OFValueType;
Andreas Wundsam40e14f72013-05-06 14:49:08 -07005
Yotam Harchold7b84202013-07-26 16:08:10 -07006public interface MatchBuilder extends Match {
Yotam Harcholfb4bfb92013-08-01 14:02:04 -07007 public <F extends OFValueType<F>> MatchBuilder setExact(MatchField<F> field, F value);
Yotam Harchol5c9d6f42013-08-01 11:09:20 -07008
Yotam Harcholfb4bfb92013-08-01 14:02:04 -07009 public <F extends OFValueType<F>> MatchBuilder setMasked(MatchField<F> field, F value, F mask);
Andreas Wundsam40e14f72013-05-06 14:49:08 -070010
Yotam Harcholfb4bfb92013-08-01 14:02:04 -070011 public <F extends OFValueType<F>> MatchBuilder setMasked(MatchField<F> field, Masked<F> valueWithMask);
12
13 public <F extends OFValueType<F>> MatchBuilder wildcard(MatchField<F> field);
14
Andreas Wundsam40e14f72013-05-06 14:49:08 -070015 public Match getMatch();
16}