/** * Copyright (c) <2013> <Radware Ltd.> and others. All rights reserved. * * This program and the accompanying materials are made available under the terms of the Eclipse Public License * v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html * @author Gera Goft * @version 0.1 */ //package org.opendaylight.controller.sal.action; // ///** // * The enumeration of actions supported by the controller // * Each entry has a unique id and the values range for the action element where applicable // */ //public enum ActionType { // DROP("drop", 0, 0), // LOOPBACK("loopback", 0, 0), // FLOOD("flood", 0, 0), // regular switching flood (obeys to stp port state) // FLOOD_ALL("floodAll", 0, 0), // flood to all ports regardless of stp port state // CONTROLLER("controller", 0, 0), // INTERFACE("interface", 0, 0), // Interface // SW_PATH("software path", 0, 0), // OF Local // HW_PATH("harware path", 0, 0), // OUTPUT("output", 0, 0xffff), // physical port // ENQUEUE("enqueue", 0, 0xffff), // SET_DL_SRC("setDlSrc", 0, 0), // SET_DL_DST("setDlDst", 0, 0), // SET_VLAN_ID("setVlan", 1, 0xfff), // SET_VLAN_PCP("setVlanPcp", 0, 0x7), // SET_VLAN_CFI("setVlanCif", 0, 0x1), // POP_VLAN("stripVlan", 0, 0), // Pop // PUSH_VLAN("pushVlan", 0, 0xffff), // Push (the max value only takes into account the TCI portion of the 802.1q header) // SET_DL_TYPE("setDlType", 0, 0xffff), // Set ethertype/length field // SET_NW_SRC("setNwSrc", 0, 0), // SET_NW_DST("setNwDst", 0, 0), // SET_NW_TOS("setNwTos", 0, 0x3f), // SET_TP_SRC("setTpSrc", 1, 0xffff), // SET_TP_DST("setTpDst", 1, 0xffff), // SET_NEXT_HOP("setNextHop", 0, 0); // // private String id; // private int minValue; // private int maxValue; // // private ActionType(String id, int minValue, int maxValue) { // this.id = id; // this.minValue = minValue; // this.maxValue = maxValue; // } // // public String getId() { // return id; // } // // public boolean isValidTarget(int value) { // return (value >= minValue && value <= maxValue); // } // // public String getRange() { // return "[0x" + Long.toHexString(minValue) + "-0x" + Long.toHexString(maxValue) + "]"; // } // // public boolean takesParameter() { // switch (this) { // case POP_VLAN: // case DROP: // case SW_PATH: // case HW_PATH: // case CONTROLLER: // case LOOPBACK: // case FLOOD: // case FLOOD_ALL: // return false; // default: // return true; // } // } //} package org.opendaylight.defense4all.odl.pojos; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; @JsonIgnoreProperties(ignoreUnknown = true) public class FlowConfigActionType { public static String getOutput(String actionValue) {return "OUTPUT" + actionValue;} public static String getDrop(String actionValue) {return "DROP" + actionValue;} public static String getSendToNormal() {return "HW_PATH";} }