Bug 1227: Removed #close() from Write Transactions.
[controller.git] / opendaylight / sal / api / src / main / java / org / opendaylight / controller / sal / core / Description.java
index 4233dcbb683b0db55ab9170aefa6561152e7820b..2e3707416a0fccd5636be5e53ddecd3b73cc3e5c 100644 (file)
@@ -1,19 +1,26 @@
+/*
+ * Copyright (c) 2014 Cisco Systems, Inc. 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
+ */
 package org.opendaylight.controller.sal.core;
 
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
 
-import org.apache.commons.lang3.builder.EqualsBuilder;
-import org.apache.commons.lang3.builder.HashCodeBuilder;
-
 /**
  * The class represents the Name property of an element.
  */
 @XmlRootElement
 @SuppressWarnings("serial")
+@XmlAccessorType(XmlAccessType.NONE)
 public class Description extends Property {
-    @XmlElement
-    private String description;
+    @XmlElement(name="value")
+    private String descriptionValue;
     public static final String propertyName = "description";
 
     /*
@@ -21,34 +28,56 @@ public class Description extends Property {
      */
     private Description() {
         super(propertyName);
-        this.description = null;
+        this.descriptionValue = null;
     }
 
     public Description(String description) {
         super(propertyName);
-        this.description = description;
+        this.descriptionValue = description;
     }
 
+    @Override
     public Description clone() {
-        return new Description(this.description);
+        return new Description(this.descriptionValue);
     }
 
     public String getValue() {
-        return this.description;
+        return this.descriptionValue;
     }
 
     @Override
     public int hashCode() {
-        return HashCodeBuilder.reflectionHashCode(this);
+        final int prime = 31;
+        int result = super.hashCode();
+        result = prime * result
+                + ((descriptionValue == null) ? 0 : descriptionValue.hashCode());
+        return result;
     }
 
     @Override
     public boolean equals(Object obj) {
-        return EqualsBuilder.reflectionEquals(this, obj);
+        if (this == obj)
+            return true;
+        if (!super.equals(obj))
+            return false;
+        if (getClass() != obj.getClass())
+            return false;
+        Description other = (Description) obj;
+        if (descriptionValue == null) {
+            if (other.descriptionValue != null)
+                return false;
+        } else if (!descriptionValue.equals(other.descriptionValue))
+            return false;
+        return true;
     }
 
     @Override
     public String toString() {
-        return "Description[" + description + "]";
+        return "Description[" + descriptionValue + "]";
+    }
+
+    @Override
+    public String getStringValue() {
+        return descriptionValue;
     }
 }