## Uses of Class
com.h3c.of.lib.ProtocolVersion

- Packages that use ProtocolVersion
  Package | Description
  --- | ---
  com.h3c.of.common | Code shared by the OpenFlow Controller and Mock OpenFlow Switch implementations.
  com.h3c.of.ctl | Public API for the OpenFlow Controller.
  com.h3c.of.ctl.pkt | Public API for the OpenFlow Packet Sequencer and participating Packet Listeners.
  com.h3c.of.json | JSON factory and codecs for Openflow structures.
  com.h3c.of.lib | OpenFlow Protocol Library.
  com.h3c.of.lib.dt | A set of classes representing data values used in the OpenFlow protocol.
  com.h3c.of.lib.err | OpenFlow Error Type enumerations.
  com.h3c.of.lib.instr | Representations of OpenFlow Protocol Instructions and Actions.
  com.h3c.of.lib.match | Representations of OpenFlow Protocol Match Structures.
  com.h3c.of.lib.mp | Representations of OpenFlow Protocol Multipart Message bodies.
  com.h3c.of.lib.msg | Representations of OpenFlow Protocol Messages.
  com.h3c.of.sw | Provides mock implementations of OpenFlow switches.
  com.h3c.sdn.misc.net |

- - ### Uses of ProtocolVersion in com.h3c.of.common

    Methods in com.h3c.of.common that return ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `static ProtocolVersion` | HandshakeLogic.`negotiateVersion(OfmHello h1, OfmHello h2)` Determines the protocol version that is common to both HELLO messages; returns null if no such version exists.

    Methods in com.h3c.of.common with parameters of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `void` | ProgrammableSink.`dataPathAdded(DataPathId dpid, ProtocolVersion negotiated, IpAddress ip)` Invoked by the controller when a new datapath has completed the handshake sequence and is ready to talk OpenFlow.
    `void` | MessageSink.`dataPathAdded(DataPathId dpid, ProtocolVersion negotiated, IpAddress ip)` Invoked by the controller when a new datapath has completed the handshake sequence and is ready to talk OpenFlow.
    `void` | ProgrammableSink.`dataPathRemoved(DataPathId dpid, ProtocolVersion negotiated, IpAddress ip)` Invoked by the controller when a datapath connection is dropped.
    `void` | MessageSink.`dataPathRemoved(DataPathId dpid, ProtocolVersion negotiated, IpAddress ip)` Invoked by the controller when a datapath connection is dropped.
    `void` | ProgrammableSink.`dataPathRevoked(DataPathId dpid, ProtocolVersion negotiated, IpAddress ip)` Invoked by the controller when a datapath connection is refused because a datapath with the given ID is already connected.
    `void` | MessageSink.`dataPathRevoked(DataPathId dpid, ProtocolVersion negotiated, IpAddress ip)` Invoked by the controller when a datapath connection is refused because a datapath with the given ID is already connected.
    `void` | ProgrammableSink.`msgRx(OpenflowMessage msg, DataPathId dpid, int auxId, ProtocolVersion negotiated)` Incoming OpenFlow messages are routed through this API method.
    `void` | MessageSink.`msgRx(OpenflowMessage msg, DataPathId dpid, int auxId, ProtocolVersion negotiated)` OpenFlow message received from the specified datapath on the given auxiliary channel.

  - ### Uses of ProtocolVersion in com.h3c.of.ctl

    Methods in com.h3c.of.ctl that return ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `ProtocolVersion` | ConnectionDetails.`negotiated()` Returns the version of the OpenFlow protocol that the datapath has negotiated with the controller, via the exchange of HELLO messages.
    `ProtocolVersion` | DataPathEvent.`negotiated()` Returns the protocol version negotiated between the controller and the associated datapath.
    `ProtocolVersion` | MessageEvent.`negotiated()` Returns the protocol version negotiated between the controller and the associated datapath.
    `ProtocolVersion` | ControllerService.`versionOf(DataPathId dpid)` Returns the (negotiated) protocol version of the specified datapath.
    `ProtocolVersion` | ControllerServiceAdapter.`versionOf(DataPathId dpid)`

    Methods in com.h3c.of.ctl with parameters of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `MessageContext` | ControllerService.`createMsgContext(OpenflowEventType type, OpenflowMessage msg, DataPathId dpid, int auxId, ProtocolVersion pv)`
    `MessageContext` | ControllerServiceAdapter.`createMsgContext(OpenflowEventType type, OpenflowMessage msg, DataPathId dpid, int auxId, ProtocolVersion pv)`

  - ### Uses of ProtocolVersion in com.h3c.of.ctl.pkt

    Methods in com.h3c.of.ctl.pkt that return ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `ProtocolVersion` | MessageContext.`getVersion()` Returns the protocol version of the associated PacketIn message event.
    `ProtocolVersion` | MessageContextAdapter.`getVersion()`

  - ### Uses of ProtocolVersion in com.h3c.of.json

    Methods in com.h3c.of.json that return ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `static ProtocolVersion` | CodecUtils.`decodeProtocolVersion(com.fasterxml.jackson.databind.JsonNode value)` Converts JsonNode into ProtocolVersion object.
    `protected ProtocolVersion` | OfJsonCodec.`version(com.fasterxml.jackson.databind.node.ObjectNode node)` Retrieve the protocol version from a given json node that contains the `OfJsonCodec.VERSION` tag.

    Methods in com.h3c.of.json with parameters of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `static String` | CodecUtils.`encodeProtocolVersion(ProtocolVersion pv)` Converts ProtocolVersion into String that can be used as a JSON value.

  - ### Uses of ProtocolVersion in com.h3c.of.lib

    Fields in com.h3c.of.lib declared as ProtocolVersion
    Modifier and Type | Field and Description
    --- | ---
    `protected ProtocolVersion` | OpenflowStructure.`version` Every structure knows what version it is representing.

    Methods in com.h3c.of.lib that return ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `static ProtocolVersion` | ProtocolVersion.`decode(byte v)` Decodes the version byte value and returns the version constant associated with that value.
    `static ProtocolVersion` | ProtocolVersion.`fromString(String s)` Returns the constant that has the "friendly" text representation specified, or null if no match is found.
    `ProtocolVersion` | OpenflowStructure.`getVersion()`
    `ProtocolVersion` | Structure.`getVersion()` Returns the protocol version of this OpenFlow structure.
    `static ProtocolVersion` | ProtocolVersion.`latest()` Returns the latest protocol version; currently `V_1_3`.
    `static ProtocolVersion` | ProtocolVersion.`max(Set<ProtocolVersion> versions)` Returns the highest protocol version from the given set.
    `static ProtocolVersion` | ProtocolVersion.`valueOf(String name)` Returns the enum constant of this type with the specified name.
    `static ProtocolVersion[]` | ProtocolVersion.`values()` Returns an array containing the constants of this enum type, in the order they are declared.

    Methods in com.h3c.of.lib with parameters of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `Set<E>` | AbstractBitCodec.`decode(int bitmap, ProtocolVersion pv)` Decodes the given int value into a set of flags from the enumeration class associated with this codec instance.
    `int` | AbstractBitCodec.`encode(Set<E> flags, ProtocolVersion pv)` Encodes the given set of flags into a bitmap represented by an integer value.
    `boolean` | ProtocolVersion.`ge(ProtocolVersion v)` Returns true if this protocol version is later than (greater than) or equal to the specified version.
    `int` | OfpBitmapEnum.`getBit(ProtocolVersion pv)` Returns the bit value for the constant, under the given protocol version.
    `protected abstract int` | AbstractBitCodec.`getBitToMap(E flag, ProtocolVersion pv)` Given a flag and a protocol version, this method should return the appropriate bit in the map that represents this flag.
    `protected int` | OfpCodeBasedCodec.`getBitToMap(E flag, ProtocolVersion pv)`
    `protected int` | OfpBitmapCodec.`getBitToMap(E flag, ProtocolVersion pv)`
    `int` | OfpCodeBasedEnum.`getCode(ProtocolVersion pv)` Returns the code for the constant, under the given protocol version.
    `protected abstract int` | AbstractBitCodec.`getValue(E flag, ProtocolVersion pv)` Returns the value (bit, or code) from the given flag, for the given version.
    `protected int` | OfpCodeBasedCodec.`getValue(E flag, ProtocolVersion pv)`
    `protected int` | OfpBitmapCodec.`getValue(E flag, ProtocolVersion pv)`
    `boolean` | ProtocolVersion.`gt(ProtocolVersion v)` Returns true if this protocol version is later than (greater than) the specified version.
    `boolean` | ProtocolVersion.`le(ProtocolVersion v)` Returns true if this protocol version is earlier than (less than) or equal to the specified version.
    `boolean` | ProtocolVersion.`lt(ProtocolVersion v)` Returns true if this protocol version is earlier than (less than) the specified version.
    `static void` | CommonUtils.`notDeprecated(ProtocolVersion pv, ProtocolVersion deprecatedAt, String text)` Ensures that the specified protocol version is prior to the specified deprecated version (the version at which the feature is no longer valid).
    `static void` | CommonUtils.`sameVersion(String text, ProtocolVersion... vers)` Ensures that the specified versions are all the same.
    `static void` | CommonUtils.`verMin11(ProtocolVersion pv)` Ensures that the specified protocol version is `1.1` at a minimum.
    `static void` | CommonUtils.`verMin11(ProtocolVersion pv, String text)` Ensures that the specified protocol version is `1.1` at a minimum.
    `static void` | CommonUtils.`verMin12(ProtocolVersion pv)` Ensures that the specified protocol version is `1.2` at a minimum.
    `static void` | CommonUtils.`verMin12(ProtocolVersion pv, String text)` Ensures that the specified protocol version is `1.2` at a minimum.
    `static void` | CommonUtils.`verMin13(ProtocolVersion pv)` Ensures that the specified protocol version is `1.3` at a minimum.
    `static void` | CommonUtils.`verMin13(ProtocolVersion pv, String text)` Ensures that the specified protocol version is `1.3` at a minimum.
    `static void` | CommonUtils.`verMinSince(ProtocolVersion pv, ProtocolVersion since, String text)` Ensures that the specified protocol version is, at a minimum the specified since version.

    Method parameters in com.h3c.of.lib with type arguments of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `static ProtocolVersion` | ProtocolVersion.`max(Set<ProtocolVersion> versions)` Returns the highest protocol version from the given set.

    Constructors in com.h3c.of.lib with parameters of type ProtocolVersion
    Constructor and Description
    `OpenflowStructure(ProtocolVersion pv)` Constructs an OpenFlow structure.

  - ### Uses of ProtocolVersion in com.h3c.of.lib.dt

    Methods in com.h3c.of.lib.dt that return ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `ProtocolVersion` | DataPathInfo.`negotiated()` Returns the version of the OpenFlow protocol that the datapath has negotiated with the controller, via the exchange of Hello messages (on the "main" connection).
    `ProtocolVersion` | DataPathInfoAdapter.`negotiated()`

  - ### Uses of ProtocolVersion in com.h3c.of.lib.err

    Methods in com.h3c.of.lib.err with parameters of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `static ErrorType` | ErrorType.`decode(int code, ProtocolVersion pv)` Decodes the error type code and returns the corresponding constant.
    `int` | ErrorType.`getCode(ProtocolVersion pv)`
    `int` | ECodeFlowModFailed.`getCode(ProtocolVersion pv)`
    `int` | ECodeBadInstruction.`getCode(ProtocolVersion pv)`
    `int` | ECodeTableModFailed.`getCode(ProtocolVersion pv)`
    `int` | ECodeQueueOpFailed.`getCode(ProtocolVersion pv)`
    `int` | ECodeBadMatch.`getCode(ProtocolVersion pv)`
    `int` | ECodeBadAction.`getCode(ProtocolVersion pv)`
    `int` | ECodeMeterModFailed.`getCode(ProtocolVersion pv)`
    `int` | ECodeTableFeaturesFailed.`getCode(ProtocolVersion pv)`
    `int` | ECodeGroupModFailed.`getCode(ProtocolVersion pv)`
    `int` | ECodePortModFailed.`getCode(ProtocolVersion pv)`
    `int` | ECodeSwitchConfigFailed.`getCode(ProtocolVersion pv)`
    `int` | ECodeRoleRequestFailed.`getCode(ProtocolVersion pv)`
    `int` | ECodeBadRequest.`getCode(ProtocolVersion pv)`
    `int` | ECodeHelloFailed.`getCode(ProtocolVersion pv)`
    `static ErrorCode` | ErrorCodeLookup.`lookup(ErrorType type, int code, ProtocolVersion pv)` Looks up the error code constant for the given encoded value, based on the supplied high-level error type.
    `static void` | ECodeBadAction.`validate(ECodeBadAction code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeBadInstruction.`validate(ECodeBadInstruction code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeBadMatch.`validate(ECodeBadMatch code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeBadRequest.`validate(ECodeBadRequest code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeFlowModFailed.`validate(ECodeFlowModFailed code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeGroupModFailed.`validate(ECodeGroupModFailed code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeHelloFailed.`validate(ECodeHelloFailed code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeMeterModFailed.`validate(ECodeMeterModFailed code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodePortModFailed.`validate(ECodePortModFailed code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeQueueOpFailed.`validate(ECodeQueueOpFailed code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeRoleRequestFailed.`validate(ECodeRoleRequestFailed code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeSwitchConfigFailed.`validate(ECodeSwitchConfigFailed code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeTableFeaturesFailed.`validate(ECodeTableFeaturesFailed code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ECodeTableModFailed.`validate(ECodeTableModFailed code, ProtocolVersion pv)` Validates the given error code against the specified protocol version, silently returning if all is well, throwing an exception otherwise.
    `static void` | ErrorCodeLookup.`validate(ErrorType type, ErrorCode code, ProtocolVersion pv)` Validates the error type/code combination for the specified protocol version, silently returning if all is well, or throwing an exception if the combination is invalid.

  - ### Uses of ProtocolVersion in com.h3c.of.lib.instr

    Methods in com.h3c.of.lib.instr with parameters of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `static Action` | ActionFactory.`createAction(ProtocolVersion pv, ActionType type)` Creates an action (header only, no payload), using the specified protocol version.
    `static Action` | ActionFactory.`createAction(ProtocolVersion pv, ActionType type, BigPortNumber port)` Creates an OUTPUT action.
    `static Action` | ActionFactory.`createAction(ProtocolVersion pv, ActionType type, BigPortNumber port, int maxLen)` Creates an OUTPUT action.
    `static Action` | ActionFactory.`createAction(ProtocolVersion pv, ActionType type, EthernetType ethType)` Creates an EthernetType-based action.
    `static Action` | ActionFactory.`createAction(ProtocolVersion pv, ActionType type, ExperimenterId eid, byte[] data)` Creates an EXPERIMENTER action.
    `static Action` | ActionFactory.`createAction(ProtocolVersion pv, ActionType type, GroupId id)` Creates a GROUP action.
    `static Action` | ActionFactory.`createAction(ProtocolVersion pv, ActionType type, int ttl)` Creates a TTL-based action.
    `static Action` | ActionFactory.`createAction(ProtocolVersion pv, ActionType type, int id, byte[] data)` Creates an EXPERIMENTER action.
    `static Action` | ActionFactory.`createAction(ProtocolVersion pv, ActionType type, MFieldBasic mf)` Creates a SET_FIELD action.
    `static Action` | ActionFactory.`createAction(ProtocolVersion pv, ActionType type, QueueId id)` Creates a SET_QUEUE action for version 1.1 onwards.
    `static Action` | ActionFactory.`createAction(ProtocolVersion pv, ActionType type, QueueId id, BigPortNumber port)` Creates a SET_QUEUE action (used to be named ENQUEUE) for version 1.0.
    `static List<Action>` | ActionFactory.`createActionHeaders(ProtocolVersion pv, Set<ActionType> types)` Creates action headers to be used in encoding a table features actions property.
    `static Action` | ActionFactory.`createActionSetField(ProtocolVersion pv, OxmBasicFieldType ft, EthernetType ethType)` Creates a set-field action for an ETH_TYPE match field, using the given protocol version.
    `static Action` | ActionFactory.`createActionSetField(ProtocolVersion pv, OxmBasicFieldType ft, ICMPv4Type icmpv4Type)` Creates a set-field action for an ICMPv4 Type match field, using the given protocol version.
    `static Action` | ActionFactory.`createActionSetField(ProtocolVersion pv, OxmBasicFieldType ft, ICMPv6Type icmpv6Type)` Creates a set-field action for an ICMPv6 Type match field, using the given protocol version.
    `static Action` | ActionFactory.`createActionSetField(ProtocolVersion pv, OxmBasicFieldType ft, int value)` Creates a set-field action for an int-payload-based match field, using the given protocol version.
    `static Action` | ActionFactory.`createActionSetField(ProtocolVersion pv, OxmBasicFieldType ft, IpAddress ip)` Creates a set-field action for an ip-address-based match field, using the given protocol version.
    `static Action` | ActionFactory.`createActionSetField(ProtocolVersion pv, OxmBasicFieldType ft, IpProtocol ipp)` Creates a set-field action for an IP Protocol match field, using the given protocol version.
    `static Action` | ActionFactory.`createActionSetField(ProtocolVersion pv, OxmBasicFieldType ft, long value)` Creates a set-field action for a long-payload-based match field, using the given protocol version.
    `static Action` | ActionFactory.`createActionSetField(ProtocolVersion pv, OxmBasicFieldType ft, MacAddress mac)` Creates a set-field action for a mac-address-based match field, using the given protocol version.
    `static Action` | ActionFactory.`createActionSetField(ProtocolVersion pv, OxmBasicFieldType ft, Map<IPv6ExtHdr,Boolean> flags)` Creates a set-field action for an IPv6 Extension Header match field, using the given protocol version.
    `static Action` | ActionFactory.`createActionSetField(ProtocolVersion pv, OxmBasicFieldType ft, PortNumber port)` Creates a set-field action for a port-number-based match field, using the given protocol version.
    `static Action` | ActionFactory.`createActionSetField(ProtocolVersion pv, OxmBasicFieldType ft, VId vid)` Creates a set-field action for a VLAN_VID, using the given protocol version.
    `static Instruction` | InstructionFactory.`createInstruction(ProtocolVersion pv, InstructionType type)` Creates a CLEAR_ACTIONS instruction.
    `static Instruction` | InstructionFactory.`createInstruction(ProtocolVersion pv, InstructionType type, ExperimenterId eid, byte[] data)` Creates an EXPERIMENTER instruction.
    `static Instruction` | InstructionFactory.`createInstruction(ProtocolVersion pv, InstructionType type, int id, byte[] data)` Creates an EXPERIMENTER instruction.
    `static Instruction` | InstructionFactory.`createInstruction(ProtocolVersion pv, InstructionType type, long metadata, long mask)` Creates a WRITE_METADATA instruction.
    `static Instruction` | InstructionFactory.`createInstruction(ProtocolVersion pv, InstructionType type, MeterId mid)` Creates a METER instruction.
    `static Instruction` | InstructionFactory.`createInstruction(ProtocolVersion pv, InstructionType type, TableId tid)` Creates a GOTO_TABLE instruction.
    `static List<Instruction>` | InstructionFactory.`createInstructionHeaders(ProtocolVersion pv, Set<InstructionType> types)` Creates instruction headers to be used in encoding a table features instructions property.
    `static InstrMutableAction` | InstructionFactory.`createMutableInstruction(ProtocolVersion pv, InstructionType type)` Creates a mutable (action-based) instruction.
    `static Set<ActionType>` | ActionType.`decodeFlags(int bitmap, ProtocolVersion pv)` Decodes the action type flags, based on the code associated with the flags, and returns the set of corresponding constants.
    `static int` | ActionType.`encodeFlags(Set<ActionType> flags, ProtocolVersion pv)` Encodes a set of action type flags as a bitmap.
    `int` | ActionType.`getCode(ProtocolVersion pv)`
    `int` | InstructionType.`getCode(ProtocolVersion pv)`
    `static Action` | ActionFactory.`parseAction(OfPacketReader pkt, ProtocolVersion pv)` Parses a single action from the supplied buffer.
    `static List<Action>` | ActionFactory.`parseActionHeaders(int targetRi, OfPacketReader pkt, ProtocolVersion pv)` Parses a list of action header structures from the supplied buffer.
    `static List<Action>` | ActionFactory.`parseActionList(int targetRi, OfPacketReader pkt, ProtocolVersion pv)` Parses a list of action structures from the supplied buffer.
    `static Instruction` | InstructionFactory.`parseInstruction(OfPacketReader pkt, ProtocolVersion pv)` Parses an Instruction structure from the supplied buffer.
    `static List<Instruction>` | InstructionFactory.`parseInstructionHeaders(int targetRi, OfPacketReader pkt, ProtocolVersion pv)` Parses a list of instruction header structures from the supplied buffer.
    `static List<Instruction>` | InstructionFactory.`parseInstructionList(int targetRi, OfPacketReader pkt, ProtocolVersion pv)` Parses a list of instruction structures from the supplied buffer.
    `static void` | ActionFactory.`validateAction(ProtocolVersion pv, Action act, String msgType)` Ensures that the specified action is appropriate to add to a message of the specified version.
    `static void` | InstructionFactory.`validateInstruction(ProtocolVersion pv, Instruction ins, String msgType)` Ensures that the specified instruction is appropriate to add to a message of the specified version.

  - ### Uses of ProtocolVersion in com.h3c.of.lib.match

    Methods in com.h3c.of.lib.match with parameters of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, BigPortNumber port)` Creates a basic match field for a big-port-number-based match field.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, EthernetType ethType)` Creates a basic match field for an ETH_TYPE match field.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, ICMPv4Type icmpv4Type)` Creates a basic match field for an ICMPv4 Type match field.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, ICMPv6Type icmpv6Type)` Creates a basic match field for an ICMPv6 Type match field.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, int value)` Creates a basic match field for an int-payload-based match field, without a mask.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, int value, int mask)` Creates a basic match field for an int-payload-based match field, with a mask.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, IpAddress ip)` Creates a basic match field for an ip-address-based match field without a mask.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, IpAddress ip, IpAddress mask)` Creates a basic match field for an ip-address-based match field with a mask.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, IpProtocol ipp)` Creates a basic match field for an IP Protocol match field.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, long value)` Creates a basic match field for a long-payload-based match field.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, long value, long mask)` Creates a basic match field for a long-payload-based match field, with a mask.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, MacAddress mac)` Creates a basic match field for a mac-address-based match field without a mask.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, MacAddress mac, MacAddress mask)` Creates a basic match field for a mac-address-based match field with a mask.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, Map<IPv6ExtHdr,Boolean> flags)` Creates a basic match field for an IPV6_EXTHDR match field.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, PortNumber port)` Creates a basic match field for a port-number-based match field.
    `static MFieldBasic` | FieldFactory.`createBasicField(ProtocolVersion pv, OxmBasicFieldType ft, VId vid)` Creates a basic match field for a VLAN_VID.
    `static MFieldExperimenter` | FieldFactory.`createExperimenterField(ProtocolVersion pv, int rawFieldType, ExperimenterId eid, byte[] payload)` Creates an experimenter match field.
    `static MFieldExperimenter` | FieldFactory.`createExperimenterField(ProtocolVersion pv, int rawFieldType, int experId, byte[] payload)` Creates an experimenter match field.
    `static List<MatchField>` | FieldFactory.`createFieldHeaders(ProtocolVersion pv, Map<OxmBasicFieldType,Boolean> map)` Creates minimal match field headers to be used in encoding a table features OXM property.
    `static MutableMatch` | MatchFactory.`createMatch(ProtocolVersion pv)` Creates a mutable match instance.
    `static MFieldBasicHeader` | MFieldBasicHeader.`createMatchField(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, OxmFieldType fieldType)`
    `static MfbEthDst` | MfbEthDst.`CreateMfbEthDst(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, long mac, long mask, OxmFieldType fieldType)`
    `static MfbEthSrc` | MfbEthSrc.`CreateMfbEthSrc(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, long mac, long mask, OxmFieldType fieldType)`
    `static MfbEthType` | MfbEthType.`CreateMfbEthType(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, int number, OxmFieldType fieldType)`
    `static MfbInPhyPort` | MfbInPhyPort.`CreateMfbInPhyPort(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, long phyPort, OxmFieldType fieldType)`
    `static MfbInPort` | MfbInPort.`CreateMfbInPort(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, long port, OxmFieldType fieldType)`
    `static MfbIpDscp` | MfbIpDscp.`CreateMfbIpDscp(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, int value, int mask, OxmFieldType fieldType)`
    `static MfbIpv4Dst` | MfbIpv4Dst.`CreateMfbIpv4Dst(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, String ip, String mask, OxmFieldType fieldType)`
    `static MfbIpv4Src` | MfbIpv4Src.`CreateMfbIpv4Src(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, String ip, String mask, OxmFieldType fieldType)`
    `static MfbMetadata` | MfbMetadata.`CreateMfbMetadata(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, int value, int mask, OxmFieldType fieldType)`
    `static MfbVlanPcp` | MfbVlanPcp.`CreateMfbVlanPcp(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, int value, int mask, OxmFieldType fieldType)`
    `static MfbVlanVid` | MfbVlanVid.`CreateMfbVlanVid(ProtocolVersion pv, int rawOxmType, int rawClazz, OxmClass clazz, int rawFieldType, boolean hasMask, int length, int vid, OxmFieldType fieldType)`
    `static MFieldMinimal` | FieldFactory.`createMinimalField(ProtocolVersion pv, OxmClass clazz, int rawFieldType, byte[] payload)` Creates a minimal match field for a known OXM Class.
    `static MFieldMinimal` | FieldFactory.`createMinimalField(ProtocolVersion pv, OxmClass clazz, int rawClazz, int rawFieldType, byte[] payload)` Creates a minimal match field for an unknown OXM Class.
    `static int` | IPv6ExtHdr.`encodeBitmap(Set<IPv6ExtHdr> flags, ProtocolVersion pv)` Encodes a set of IPv6 Extension Header flags as a bitmap.
    `int` | IPv6ExtHdr.`getBit(ProtocolVersion pv)`
    `int` | MatchType.`getCode(ProtocolVersion pv)`
    `static MatchField` | FieldFactory.`parseField(OfPacketReader pkt, ProtocolVersion pv)` Parses a single OXM TLV match field from the supplied buffer.
    `static List<MatchField>` | FieldFactory.`parseFieldHeaders(int targetRi, OfPacketReader pkt, ProtocolVersion pv)` Parses a list of match field header structures from the supplied buffer.
    `static Match` | MatchFactory.`parseMatch(OfPacketReader pkt, ProtocolVersion pv)` Parses a Match structure from the supplied buffer.

    Constructors in com.h3c.of.lib.match with parameters of type ProtocolVersion
    Constructor and Description
    `Match(ProtocolVersion pv, MatchType matchType, int length, List<MatchField> fileds)`

  - ### Uses of ProtocolVersion in com.h3c.of.lib.mp

    Methods in com.h3c.of.lib.mp that return ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `ProtocolVersion` | MBodyList.`getVersion()`

    Methods in com.h3c.of.lib.mp with parameters of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `static MultipartBody` | MpBodyFactory.`createReplyBody(ProtocolVersion pv, MultipartType type)` Creates the mutable multipart reply body for the given type and protocol version.
    `static MultipartBody` | MpBodyFactory.`createReplyBodyElement(ProtocolVersion pv, MultipartType type)` Creates the mutable multipart reply body array element for the given type and protocol version.
    `static MultipartBody` | MpBodyFactory.`createRequestBody(ProtocolVersion pv, MultipartType type)` Creates the mutable multipart request body for the given type, for the given protocol version.
    `static MultipartType` | MultipartType.`decode(int code, ProtocolVersion pv)` Decodes the multipart message type code and returns the corresponding constant.
    `int` | MultipartType.`getCode(ProtocolVersion pv)`
    `static MultipartBody` | MpBodyFactory.`parseReplyBody(MultipartType type, OfPacketReader pkt, ProtocolVersion pv)` Parses a multipart reply message body from the supplied buffer.
    `static MultipartBody` | MpBodyFactory.`parseRequestBody(MultipartType type, OfPacketReader pkt, ProtocolVersion pv)` Parses a multipart request message body from the supplied buffer.

    Constructors in com.h3c.of.lib.mp with parameters of type ProtocolVersion
    Constructor and Description
    `MBodyDesc(ProtocolVersion pv)` Constructs a multipart body DESC type.
    `MBodyExperimenter(ProtocolVersion pv)` Constructs a multipart body EXPERIMENTER extension type.
    `MBodyFlowStats(ProtocolVersion pv)` Constructs an OpenFlow structure.
    `MBodyFlowStatsRequest(ProtocolVersion pv)` Constructs a multipart body FLOW type request.
    `MBodyGroupDescStats(ProtocolVersion pv)` Constructs a multipart body GROUP_DESC type.
    `MBodyGroupFeatures(ProtocolVersion pv)` Constructs a multipart body GroupFeatures type.
    `MBodyGroupStats(ProtocolVersion pv)` Constructs a multipart body GROUP type.
    `MBodyGroupStatsRequest(ProtocolVersion pv)` Constructs a multipart body GROUP type request.
    `MBodyMeterConfig(ProtocolVersion pv)` Constructs a multipart body METER_CONFIG type.
    `MBodyMeterFeatures(ProtocolVersion pv)` Constructs a multipart body MeterFeaturestype.
    `MBodyMeterStats(ProtocolVersion pv)` Constructs a multipart body METER_STATS type.
    `MBodyMeterStatsRequest(ProtocolVersion pv)` Constructs a multipart body METER STATS type request.
    `MBodyMutableDesc(ProtocolVersion pv)` Constructs a mutable multipart body DESC type.
    `MBodyMutableExperimenter(ProtocolVersion pv)` Constructs a mutable multipart body EXPERIMENTER extension type.
    `MBodyMutableFlowStats(ProtocolVersion pv)` Constructs a mutable multipart body FLOW stats element.
    `MBodyMutableFlowStatsRequest(ProtocolVersion pv)` Constructs a mutable multipart body FLOW request type.
    `MBodyMutableGroupDescStats(ProtocolVersion pv)`
    `MBodyMutableGroupFeatures(ProtocolVersion pv)` Constructs a mutable multipart body GroupFeatures type.
    `MBodyMutableGroupStats(ProtocolVersion pv)` Constructs a mutable multipart body GROUP stats element.
    `MBodyMutableGroupStatsRequest(ProtocolVersion pv)` Constructs a mutable multipart body GROUP request type.
    `MBodyMutableMeterConfig(ProtocolVersion pv)` Constructs a mutable multipart body METER_CONFIG element.
    `MBodyMutableMeterFeatures(ProtocolVersion pv)` Constructs a mutable multipart body MeterFeaturestype.
    `MBodyMutableMeterStats(ProtocolVersion pv)` Constructs a mutable multipart body METER_STATS type.
    `MBodyMutableMeterStatsRequest(ProtocolVersion pv)` Constructs a mutable multipart body METER STATS type request.
    `MBodyMutablePortStats(ProtocolVersion pv)` Constructs a mutable multipart body PORT_STATS element.
    `MBodyMutablePortStatsRequest(ProtocolVersion pv)` Constructs a mutable multipart body PORT_STATS request type.
    `MBodyMutableQueueStats(ProtocolVersion pv)` Constructs a mutable multipart body QUEUE stats element.
    `MBodyMutableQueueStatsRequest(ProtocolVersion pv)` Constructs a mutable multipart body QUEUE request type.
    `MBodyMutableTableFeatures(ProtocolVersion pv)` Constructs a mutable multipart body TABLE FEATURES element.
    `MBodyMutableTableStats(ProtocolVersion pv)` Constructs a mutable multipart body TABLE stats element.
    `MBodyPortDesc(ProtocolVersion pv)` Constructs a multipart body PORT_DESC type.
    `MBodyPortStats(ProtocolVersion pv)` Constructs a multipart body PORT_STATS type.
    `MBodyPortStatsRequest(ProtocolVersion pv)` Constructs a multipart body PORT_STATS type request.
    `MBodyQueueStats(ProtocolVersion pv)` Constructs an OpenFlow structure.
    `MBodyQueueStatsRequest(ProtocolVersion pv)` Constructs a multipart body QUEUE type request.
    `MBodyTableFeatures(ProtocolVersion pv)` Constructs an OpenFlow structure.
    `MBodyTableStats(ProtocolVersion pv)` Constructs an OpenFlow structure.

  - ### Uses of ProtocolVersion in com.h3c.of.lib.msg

    Methods in com.h3c.of.lib.msg that return ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `ProtocolVersion` | OpenflowMessage.`getVersion()`

    Methods in com.h3c.of.lib.msg that return types with arguments of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `Set<ProtocolVersion>` | HelloElemVersionBitmap.`getSupportedVersions()` Returns the supported versions.
    `static Set<ProtocolVersion>` | MessageFactory.`supportedVersions()` Returns the set of OpenFlow protocol versions that this library supports.

    Methods in com.h3c.of.lib.msg with parameters of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `static void` | MessageFactory.`checkVersionSupported(ProtocolVersion pv)` Throws an exception if the specified version is not supported by this OpenFlow message library.
    `static MutableMessage` | MessageFactory.`create(ProtocolVersion pv, MessageType type)` Creates a mutable OpenFlow message of the specified type, with the specified protocol version, assigning it the next available transaction ID.
    `static MutableMessage` | MessageFactory.`create(ProtocolVersion pv, MessageType type, Enum<?> subtype)` Creates a mutable OpenFlow message of the specified type and subtype, with the specified protocol version, assigning it the next available transaction ID.
    `static TableFeaturePropAction` | TableFeatureFactory.`createActionProp(ProtocolVersion pv, TableFeaturePropType type, Set<ActionType> actionTypes)` Creates a table features action property, for the given protocol version, and the specified action types.
    `static TableFeaturePropAction` | TableFeatureFactory.`createActionProp(ProtocolVersion pv, TableFeaturePropType type, Set<ActionType> actionTypes, List<ActExperimenter> actionExper)` Creates a table features action property, for the given protocol version, and the specified action types and experimenter action types.
    `static MeterBand` | MeterBandFactory.`createBand(ProtocolVersion pv, MeterBandType type, long rate, long burstSize)` Creates a DROP meter band.
    `static MeterBand` | MeterBandFactory.`createBand(ProtocolVersion pv, MeterBandType type, long rate, long burstSize, ExperimenterId eid)` Creates an EXPERIMENTER meter band.
    `static MeterBand` | MeterBandFactory.`createBand(ProtocolVersion pv, MeterBandType type, long rate, long burstSize, int value)` Creates a DSCP_REMARK or EXPERIMENTER meter band.
    `static TableFeaturePropExper` | TableFeatureFactory.`createExperProp(ProtocolVersion pv, TableFeaturePropType type, ExperimenterId eid, long expDefType, byte[] data)` Creates a table features experimenter property, for the given protocol version, and the specified experimenter data.
    `static TableFeaturePropExper` | TableFeatureFactory.`createExperProp(ProtocolVersion pv, TableFeaturePropType type, int id, long expDefType, byte[] data)` Creates a table features experimenter property, for the given protocol version, and the specified experimenter data.
    `static TableFeaturePropInstr` | TableFeatureFactory.`createInstrProp(ProtocolVersion pv, TableFeaturePropType type, Set<InstructionType> ins)` Creates a table features instructions property, for the given protocol version, indicating support for the specified instruction types.
    `static TableFeaturePropInstr` | TableFeatureFactory.`createInstrProp(ProtocolVersion pv, TableFeaturePropType type, Set<InstructionType> ins, List<InstrExperimenter> insExp)` Creates a table features instructions property, for the given protocol version, indicating support for the specified instruction types, as well as the specified experimenter instructions.
    `static MutableBucket` | BucketFactory.`createMutableBucket(ProtocolVersion pv)` Creates a mutable bucket instance.
    `static TableFeaturePropNextTable` | TableFeatureFactory.`createNextTablesProp(ProtocolVersion pv, TableFeaturePropType type, Set<TableId> tableIds)` Creates a table features next-tables property, for the given protocol version, and the specified table IDs.
    `static TableFeaturePropOxm` | TableFeatureFactory.`createOxmProp(ProtocolVersion pv, TableFeaturePropType type, Map<OxmBasicFieldType,Boolean> fields)` Creates a table features OXM property, for the given protocol version, and the specified match fields.
    `static TableFeaturePropOxm` | TableFeatureFactory.`createOxmProp(ProtocolVersion pv, TableFeaturePropType type, Map<OxmBasicFieldType,Boolean> fields, List<MFieldExperimenter> expFields)` Creates a table features OXM property, for the given protocol version, and the specified match fields.
    `static MutablePort` | PortFactory.`createPort(ProtocolVersion pv)` Creates a mutable port.
    `static MutableQueue` | QueueFactory.`createQueue(ProtocolVersion pv)` Creates a mutable queue.
    `static GroupType` | GroupType.`decode(int code, ProtocolVersion pv)` Decodes the group type code and returns the corresponding constant.
    `static Set<GroupCapability>` | GroupCapability.`decodeBitmap(int bitmap, ProtocolVersion pv)` Decodes the group capabilities flags and returns the set of corresponding constants.
    `static Set<FlowModFlag>` | FlowModFlag.`decodeBitmap(int bitmap, ProtocolVersion pv)` Decodes a flow mod flag bitmap to generate the corresponding set of flags.
    `static Set<MeterFlag>` | MeterFlag.`decodeBitmap(int bitmap, ProtocolVersion pv)` Decodes the meter flags and returns the set of corresponding constants.
    `static Set<GroupType>` | GroupType.`decodeFlags(int bitmap, ProtocolVersion pv)` Decodes the group type flags, based on the code associated with the flags, and returns the set of corresponding constants.
    `static Set<MeterBandType>` | MeterBandType.`decodeFlags(int bitmap, ProtocolVersion pv)` Decodes the meter band type flags, based on the code associated with the flags, and returns the set of corresponding constants.
    `static int` | FlowModFlag.`encodeBitmap(Set<FlowModFlag> flags, ProtocolVersion pv)` Encodes a set of flow mod flags as a bitmap.
    `static int` | GroupCapability.`encodeBitmap(Set<GroupCapability> flags, ProtocolVersion pv)` Encodes a set of group capabilities flags as a bitmap.
    `static int` | MeterFlag.`encodeBitmap(Set<MeterFlag> flags, ProtocolVersion pv)` Encodes a set of meter flags as a bitmap.
    `static int` | GroupType.`encodeFlags(Set<GroupType> flags, ProtocolVersion pv)` Encodes a set of group type flags as a bitmap.
    `static int` | MeterBandType.`encodeFlags(Set<MeterBandType> flags, ProtocolVersion pv)` Encodes a set of meter band type flags as a bitmap.
    `static void` | PortFactory.`encodePortNumber(BigPortNumber port, OfPacketWriter pkt, ProtocolVersion pv)` Encodes the given port number, writing it to the specified buffer, for the given protocol version.
    `static void` | TableFeatureFactory.`encodeProp(ProtocolVersion pv, TableFeatureProp prop, OfPacketWriter pkt)` Encodes a table feature property, writing it into the supplied buffer.
    `static void` | TableFeatureFactory.`encodePropList(ProtocolVersion pv, List<TableFeatureProp> props, OfPacketWriter pkt)` Encodes a list of table feature properties, writing them into the supplied buffer.
    `int` | PortConfig.`getBit(ProtocolVersion pv)`
    `int` | Capability.`getBit(ProtocolVersion pv)`
    `int` | ConfigFlag.`getBit(ProtocolVersion pv)`
    `int` | GroupCapability.`getBit(ProtocolVersion pv)`
    `int` | MultipartRequestFlag.`getBit(ProtocolVersion pv)`
    `int` | FlowModFlag.`getBit(ProtocolVersion pv)`
    `int` | MultipartReplyFlag.`getBit(ProtocolVersion pv)`
    `int` | SupportedAction.`getBit(ProtocolVersion pv)`
    `int` | MeterFlag.`getBit(ProtocolVersion pv)`
    `int` | PortFeature.`getBit(ProtocolVersion pv)`
    `int` | PortState.`getBit(ProtocolVersion pv)`
    `int` | TableConfig.`getBit(ProtocolVersion pv)`
    `int` | FlowModCommand.`getCode(ProtocolVersion pv)`
    `int` | GroupType.`getCode(ProtocolVersion pv)`
    `int` | MeterBandType.`getCode(ProtocolVersion pv)` Returns the internal code for the given band type.
    `int` | HelloElementType.`getCode(ProtocolVersion pv)`
    `int` | FlowRemovedReason.`getCode(ProtocolVersion pv)`
    `int` | ControllerRole.`getCode(ProtocolVersion pv)`
    `int` | TableFeaturePropType.`getCode(ProtocolVersion pv)`
    `int` | PacketInReason.`getCode(ProtocolVersion pv)`
    `int` | QueuePropType.`getCode(ProtocolVersion pv)`
    `int` | GroupModCommand.`getCode(ProtocolVersion pv)`
    `int` | MessageType.`getCode(ProtocolVersion pv)` Returns the code for this message type, under the given protocol.
    `int` | MeterModCommand.`getCode(ProtocolVersion pv)`
    `int` | PortReason.`getCode(ProtocolVersion pv)`
    `static int` | PortFactory.`getPortLength(ProtocolVersion pv)` Returns the length of a port structure in bytes.
    `static int` | QueueFactory.`getQueueStatsLength(ProtocolVersion pv)` Returns the length of a queue stats structure in bytes.
    `static boolean` | Port.`isStandardPort(BigPortNumber bpn, ProtocolVersion pv)` Returns true if the given port number is in the range 1 to MAX; false otherwise.
    `static boolean` | MessageFactory.`isVersionSupported(ProtocolVersion pv)` Returns true if the specified version is supported by this OpenFlow message library.
    `static String` | Port.`logicalName(BigPortNumber port, ProtocolVersion pv)` Returns the logical name of the port, or null if the port number is not a special value (for the given protocol version).
    `static List<Bucket>` | BucketFactory.`parseBucketList(int targetRi, OfPacketReader pkt, ProtocolVersion pv)` Parses a list of bucket structures from the supplied buffer.
    `static List<MeterBand>` | MeterBandFactory.`parseMeterBandList(int targetRi, OfPacketReader pkt, ProtocolVersion pv)` Parses a list of meter band structures from the supplied buffer.
    `static Port` | PortFactory.`parsePort(OfPacketReader pkt, ProtocolVersion pv)` Parses the given packet buffer as a port structure.
    `static List<Port>` | PortFactory.`parsePortList(OfPacketReader pkt, ProtocolVersion pv)` Parses a list of port structures from the supplied buffer.
    `static BigPortNumber` | PortFactory.`parsePortNumber(OfPacketReader pkt, ProtocolVersion pv)` Parses a port number from the specified buffer, for the given protocol version.
    `static List<TableFeatureProp>` | TableFeatureFactory.`parsePropList(int targetRi, OfPacketReader pkt, ProtocolVersion pv)` Parses a list of Table Feature properties from the supplied buffer.
    `static List<Queue>` | QueueFactory.`parseQueueList(int targetRi, OfPacketReader pkt, ProtocolVersion pv)` Parses a list of Queue structures from the supplied buffer.
    `static String` | Port.`portNumberToString(BigPortNumber port, ProtocolVersion pv)` Returns a string representation of the port number, for the given protocol version.
    `static void` | Port.`validatePortValue(BigPortNumber bpn, ProtocolVersion pv)` Validates that the given port number is an acceptable value for encoding as a port number for the given protocol.

    Method parameters in com.h3c.of.lib.msg with type arguments of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `static HelloElement` | HelloElementFactory.`createVersionBitmapElement(Set<ProtocolVersion> suppVers)` Creates a VERSION BITMAP hello element for the given supported versions.

    Constructors in com.h3c.of.lib.msg with parameters of type ProtocolVersion
    Constructor and Description
    `Bucket(ProtocolVersion pv)` Constructs a bucket.
    `MutableBucket(ProtocolVersion pv)` Constructs a mutable bucket.
    `MutablePort(ProtocolVersion pv)` Constructs a mutable OpenFlow port structure.
    `OpenflowMessage.Header(ProtocolVersion pv, MessageType type, long xid)`

  - ### Uses of ProtocolVersion in com.h3c.of.sw

    Fields in com.h3c.of.sw declared as ProtocolVersion
    Modifier and Type | Field and Description
    --- | ---
    `protected ProtocolVersion` | MockOpenflowSwitch.`negotiated` The protocol version that we negotiated with the controller.

    Methods in com.h3c.of.sw that return ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `ProtocolVersion` | CfgHello.`getMaxVersion()` Returns the highest protocol version configured.

    Methods in com.h3c.of.sw that return types with arguments of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `Set<ProtocolVersion>` | CfgHello.`getVersions()` Returns the set of supported versions.

    Methods in com.h3c.of.sw with parameters of type ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `protected List<Port>` | MockOpenflowSwitch.`createPorts(ProtocolVersion pv)` Creates ports based on the `feature configuration` information, using the protocol version specified in the `hello configuration`.

    Constructors in com.h3c.of.sw with parameters of type ProtocolVersion
    Constructor and Description
    `CfgHello(CfgHello.Behavior sendHow, ProtocolVersion... pvs)` Configures the mock-switch outbound HELLO message.

  - ### Uses of ProtocolVersion in com.h3c.sdn.misc.net

    Methods in com.h3c.sdn.misc.net that return ProtocolVersion
    Modifier and Type | Method and Description
    --- | ---
    `ProtocolVersion` | MsgContextDTO.`negotiated()`

    Constructors in com.h3c.sdn.misc.net with parameters of type ProtocolVersion
    Constructor and Description
    `MsgContextDTO(ProtocolVersion pv, int auxId, DataPathId dpid, String openflowType, MessageType type, long xid, BufferId bufferId, BigPortNumber inPort, BigPortNumber inPhyPort, int totalLen, PacketInReason reason, TableId tableId, long cookie, Match match, byte[] data)`

Copyright © 2014. All Rights Reserved.