3 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
5 * This program and the accompanying materials are made available under the
6 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
7 * and is available at http://www.eclipse.org/legal/epl-v10.html
10 package org.opendaylight.controller.sal.core;
12 import javax.xml.bind.annotation.XmlElement;
13 import javax.xml.bind.annotation.XmlRootElement;
15 import org.apache.commons.lang3.builder.EqualsBuilder;
16 import org.apache.commons.lang3.builder.HashCodeBuilder;
21 * @brief Class representing actions
23 * Describes supported actions
27 public class Actions extends Property {
28 private static final long serialVersionUID = 1L;
30 private int actionsValue;
32 public enum ActionType {
33 OUTPUT_PORT_ACTION(1<<0),
34 VLAN_VID_ACTION(1<<1),
35 VLAN_PCP_ACTION(1<<2),
36 VLAN_STRIP_ACTION(1<<3),
44 ENQUEUE_ACTION(1<<11),
45 VENDOR_ACTION(0xffff);
50 public int getValue() {
55 public static final String ActionsPropName = "actions";
57 * Construct a actions property
59 * @param actions the actions value
60 * @return Constructed object
62 public Actions(int actions) {
63 super(ActionsPropName);
64 this.actionsValue = actions;
68 * Private constructor used for JAXB mapping
71 super(ActionsPropName);
72 this.actionsValue = 0;
75 public Actions clone() {
76 return new Actions(this.actionsValue);
79 public int getValue() {
80 return this.actionsValue;
85 public int hashCode() {
86 return HashCodeBuilder.reflectionHashCode(this);
90 public boolean equals(Object obj) {
91 return EqualsBuilder.reflectionEquals(this, obj);
95 public String toString() {
96 return "Actions[" + actionsValue + "]";