Java 类org.projectfloodlight.openflow.protocol.oxm.OFOxms 实例源码

项目:open-kilda    文件:SwitchManager.java   
/**
 * Create an OFAction to change the outer most vlan.
 *
 * @param sw      switch object
 * @param newVlan final VLAN to be set on the packet
 * @return {@link OFAction}
 */
private OFAction actionReplaceVlan(final IOFSwitch sw, final int newVlan) {
    OFFactory factory = sw.getOFFactory();
    OFOxms oxms = factory.oxms();
    OFActions actions = factory.actions();

    if (OF_12.compareTo(factory.getVersion()) == 0) {
        return actions.buildSetField().setField(oxms.buildVlanVid()
                .setValue(OFVlanVidMatch.ofRawVid((short) newVlan))
                .build()).build();
    } else {
        return actions.buildSetField().setField(oxms.buildVlanVid()
                .setValue(OFVlanVidMatch.ofVlan(newVlan))
                .build()).build();
    }
}
项目:SDN-Multicast    文件:MulticastTree.java   
private OFMatchV3 buildOFMatchV3() {
    OFFactory of13Factory = OFFactories.getFactory(OFVersion.OF_13);
    OFOxms oxms = of13Factory.oxms();

    OFOxmEthType ofOxmEthType = oxms.buildEthType().setValue(EthType.IPv4).build();
    OFOxmIpv4Src ofOxmIpv4Src = oxms.buildIpv4Src().setValue(IPv4Address.of(multicastGroup.sourceIP)).build();
    OFOxmIpProto ofOxmIpProto = oxms.buildIpProto().setValue(IpProtocol.UDP).build();
    OFOxmIpv4Dst ofOxmIpv4Dst = oxms.buildIpv4Dst().setValue(IPv4Address.of(multicastGroup.groupIP)).build();
    OFOxmList oxmList = OFOxmList.of(ofOxmEthType, ofOxmIpv4Src, ofOxmIpv4Dst, ofOxmIpProto);
    OFMatchV3 of13Match = of13Factory.buildMatchV3().setOxmList(oxmList).build();
    return of13Match;       
}
项目:open-kilda    文件:SwitchManager.java   
/**
 * Create an action to set the DstMac of a packet
 *
 * @param sw         switch object
 * @param macAddress MacAddress to set
 * @return {@link OFAction}
 */
private OFAction actionSetDstMac(final IOFSwitch sw, final MacAddress macAddress) {
    OFOxms oxms = sw.getOFFactory().oxms();
    OFActions actions = sw.getOFFactory().actions();
    return actions.buildSetField()
            .setField(oxms.buildEthDst().setValue(macAddress).build()).build();
}