Java 类org.projectfloodlight.openflow.types.OFMetadata 实例源码

项目:openflowj-otn    文件:MultiplePktInReasonUtil.java   
/**
 * This function is used in BVS T5/6 to decode the multiple packet in
 * reasons in Match.MetaData field.
 * */
public static Set<OFBsnPktinFlag> getOFBsnPktinFlags(OFPacketIn pktIn) {
    if(pktIn.getVersion() != OFVersion.OF_13) {
        throw new IllegalArgumentException("multiple pkt in reasons are "
                                           + "only supported by BVS using "
                                           + "openflow 1.3");
    }

    Match match = pktIn.getMatch();
    if(match == null) {
        return ImmutableSet.<OFBsnPktinFlag>of();
    }
    OFMetadata metaData = match.get(MatchField.METADATA);
    if(metaData == null) {
        return ImmutableSet.<OFBsnPktinFlag>of();
    }
    U64 metaDataValue = metaData.getValue();
    if(metaDataValue == null) {
        return ImmutableSet.<OFBsnPktinFlag>of();
    }
    return OFBsnPktinFlagSerializerVer13.ofWireValue(metaDataValue
                                                           .getValue());
}
项目:loxigen-artifacts    文件:MultiplePktInReasonUtil.java   
/**
 * This function is used in BVS T5/6 to decode the multiple packet in
 * reasons in Match.MetaData field.
 *
 * @param pktIn the packet in message
 * @return the set of packet in reasons
 */
public static Set<OFBsnPktinFlag> getOFBsnPktinFlags(OFPacketIn pktIn) {
    if(pktIn.getVersion().compareTo(OFVersion.OF_13) < 0) {
        throw new IllegalArgumentException("multiple pkt in reasons are "
                                           + "only supported by BVS using "
                                           + "openflow version >= 1.3");
    }

    Match match = pktIn.getMatch();
    if(match == null) {
        return ImmutableSet.<OFBsnPktinFlag>of();
    }
    OFMetadata metaData = match.get(MatchField.METADATA);
    if(metaData == null) {
        return ImmutableSet.<OFBsnPktinFlag>of();
    }
    U64 metaDataValue = metaData.getValue();
    if(metaDataValue == null) {
        return ImmutableSet.<OFBsnPktinFlag>of();
    }
    return OFBsnPktinFlagSerializerVer13.ofWireValue(metaDataValue
                                                           .getValue());
}