Five more Equals/HashCode/StringBuilder replacements
[controller.git] / opendaylight / sal / api / src / main / java / org / opendaylight / controller / sal / core / Tables.java
1
2 /*
3  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
4  *
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
8  */
9
10 package org.opendaylight.controller.sal.core;
11
12 import javax.xml.bind.annotation.XmlElement;
13 import javax.xml.bind.annotation.XmlRootElement;
14
15 import org.apache.commons.lang3.builder.EqualsBuilder;
16 import org.apache.commons.lang3.builder.HashCodeBuilder;
17
18 /**
19  * @file   Tables.java
20  *
21  * @brief  Class representing tables
22  *
23  * Describes supported # of datapath tables
24  */
25 @XmlRootElement
26 public class Tables extends Property {
27         private static final long serialVersionUID = 1L;
28     @XmlElement
29     private byte tablesValue;
30     
31     public static final String TablesPropName = "tables";
32     /**
33      * Construct a Tables property
34      *
35      * @param tables the Tables 
36      * @return Constructed object
37      */
38     public Tables(byte tables) {
39         super(TablesPropName);
40         this.tablesValue = tables;
41     }
42
43     /*
44      * Private constructor used for JAXB mapping
45      */
46     private Tables() {
47         super(TablesPropName);
48         this.tablesValue = 0;
49     }
50
51     public Tables clone() {
52         return new Tables(this.tablesValue);
53     }
54
55     public byte getValue() {
56         return this.tablesValue;
57     }
58     
59     @Override
60     public int hashCode() {
61         return HashCodeBuilder.reflectionHashCode(this);
62     }
63
64     @Override
65     public boolean equals(Object obj) {
66         return EqualsBuilder.reflectionEquals(this, obj);
67     }
68
69     @Override
70     public String toString() {
71         return "Tables[" + tablesValue + "]";
72     }
73 }