View Javadoc

1   /*
2    *
3    * Licensed to the Apache Software Foundation (ASF) under one
4    * or more contributor license agreements.  See the NOTICE file
5    * distributed with this work for additional information
6    * regarding copyright ownership.  The ASF licenses this file
7    * to you under the Apache License, Version 2.0 (the
8    * "License"); you may not use this file except in compliance
9    * with the License.  You may obtain a copy of the License at
10   *
11   *     http://www.apache.org/licenses/LICENSE-2.0
12   *
13   * Unless required by applicable law or agreed to in writing, software
14   * distributed under the License is distributed on an "AS IS" BASIS,
15   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   * See the License for the specific language governing permissions and
17   * limitations under the License.
18   */
19  
20  package org.apache.hadoop.hbase.client;
21  
22  import org.apache.commons.lang.StringUtils;
23  import org.apache.commons.lang.builder.EqualsBuilder;
24  import org.apache.commons.lang.builder.HashCodeBuilder;
25  import org.apache.commons.lang.builder.ToStringBuilder;
26  import org.apache.hadoop.hbase.classification.InterfaceAudience;
27  
28  /**
29   * SlowLog params object that contains detailed info as params and region name : to be used
30   * for filter purpose
31   */
32  @InterfaceAudience.Private
33  public class SlowLogParams {
34  
35    private final String regionName;
36    private final String params;
37  
38    public SlowLogParams(String regionName, String params) {
39      this.regionName = regionName;
40      this.params = params;
41    }
42  
43    public SlowLogParams(String params) {
44      this.regionName = StringUtils.EMPTY;
45      this.params = params;
46    }
47  
48    public String getRegionName() {
49      return regionName;
50    }
51  
52    public String getParams() {
53      return params;
54    }
55  
56    @Override
57    public String toString() {
58      return new ToStringBuilder(this)
59        .append("regionName", regionName)
60        .append("params", params)
61        .toString();
62    }
63  
64    @Override
65    public boolean equals(Object o) {
66      if (this == o) {
67        return true;
68      }
69  
70      if (o == null || getClass() != o.getClass()) {
71        return false;
72      }
73  
74      SlowLogParams that = (SlowLogParams) o;
75  
76      return new EqualsBuilder()
77        .append(regionName, that.regionName)
78        .append(params, that.params)
79        .isEquals();
80    }
81  
82    @Override
83    public int hashCode() {
84      return new HashCodeBuilder(17, 37)
85        .append(regionName)
86        .append(params)
87        .toHashCode();
88    }
89  }