1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.hadoop.hbase.metrics;
20
21 import com.google.common.base.Objects;
22 import com.google.common.base.Preconditions;
23
24 import org.apache.hadoop.classification.InterfaceAudience;
25 import org.apache.hadoop.metrics2.MetricsInfo;
26
27
28
29
30 @InterfaceAudience.Private
31 class MetricsInfoImpl implements MetricsInfo {
32 private final String name, description;
33
34 MetricsInfoImpl(String name, String description) {
35 this.name = Preconditions.checkNotNull(name, "name");
36 this.description = Preconditions.checkNotNull(description, "description");
37 }
38
39 @Override public String name() {
40 return name;
41 }
42
43 @Override public String description() {
44 return description;
45 }
46
47 @Override public boolean equals(Object obj) {
48 if (obj instanceof MetricsInfo) {
49 MetricsInfo other = (MetricsInfo) obj;
50 return Objects.equal(name, other.name()) &&
51 Objects.equal(description, other.description());
52 }
53 return false;
54 }
55
56 @Override public int hashCode() {
57 return Objects.hashCode(name, description);
58 }
59
60 @Override public String toString() {
61 return Objects.toStringHelper(this)
62 .add("name", name).add("description", description)
63 .toString();
64 }
65 }