-
/*
* Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
*
*/
/**
- * Abstract base class for a Property that can be attached to any sal
- * core element
- *
+ * Abstract base class for a Property that can be attached to any sal core
+ * element
*/
@XmlRootElement
@XmlSeeAlso({ Config.class, Name.class, State.class, TimeStamp.class,
- Latency.class, Bandwidth.class, Tier.class, Actions.class,
- AdvertisedBandwidth.class, Buffers.class, Capabilities.class,
- MacAddress.class, PeerBandwidth.class, SupportedBandwidth.class,
- Tables.class })
-abstract public class Property implements Serializable {
+ Latency.class, Bandwidth.class, Tier.class, Actions.class,
+ AdvertisedBandwidth.class, Buffers.class, Capabilities.class,
+ MacAddress.class, PeerBandwidth.class, SupportedBandwidth.class,
+ Tables.class })
+abstract public class Property implements Serializable, Cloneable {
private static final long serialVersionUID = 1L;
- private String name;
+ private final String name;
/**
* Private constructor used for JAXB mapping
/**
* Used to copy the Property in a polymorphic way
*
- *
* @return A clone of this Property
*/
- abstract public Property clone();
+ @Override
+ public abstract Property clone();
@Override
public int hashCode() {
@Override
public boolean equals(Object obj) {
- if (this == obj)
+ if (this == obj) {
return true;
- if (obj == null)
+ }
+ if (obj == null) {
return false;
- if (getClass() != obj.getClass())
+ }
+ if (getClass() != obj.getClass()) {
return false;
+ }
Property other = (Property) obj;
if (name == null) {
- if (other.name != null)
+ if (other.name != null) {
return false;
- } else if (!name.equals(other.name))
+ }
+ } else if (!name.equals(other.name)) {
return false;
+ }
return true;
}