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.XmlAccessType;
13 import javax.xml.bind.annotation.XmlAccessorType;
14 import javax.xml.bind.annotation.XmlElement;
15 import javax.xml.bind.annotation.XmlRootElement;
18 * The class represents the State property of an Edge
23 @XmlAccessorType(XmlAccessType.NONE)
24 @SuppressWarnings("serial")
26 public class State extends Property {
27 @XmlElement(name="value")
28 private short stateValue;
30 public static final short EDGE_DOWN = 0;
31 public static final short EDGE_UP = 1;
32 public static final short EDGE_UNK = 0x7fff;
33 public static final String StatePropName = "state";
36 * Private constructor used for JAXB mapping
40 this.stateValue = EDGE_UNK;
43 public State(short state) {
45 this.stateValue = state;
49 public State clone() {
50 return new State(this.stateValue);
53 public short getValue() {
54 return this.stateValue;
58 public int hashCode() {
60 int result = super.hashCode();
61 result = prime * result + stateValue;
66 public boolean equals(Object obj) {
69 if (!super.equals(obj))
71 if (getClass() != obj.getClass())
73 State other = (State) obj;
74 if (stateValue != other.stateValue)
80 public String toString() {
81 return "State[" + stateValue + "]";
85 public String getStringValue() {
86 if (stateValue == 0) {
88 } else if (stateValue == 1) {
90 } else if (stateValue == 0x7fff) {
93 return String.valueOf(stateValue);