HBASE-24163 MOB compactor implementations should use format specifiers when calling...
[hbase.git] / hbase-common / src / main / java / org / apache / hadoop / hbase / util / ObjectIntPair.java
blobef7f90919662b55615ba73d84e866f8f77ed549f
1 /**
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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.
20 package org.apache.hadoop.hbase.util;
22 import org.apache.yetus.audience.InterfaceAudience;
24 /**
25 * A generic class for pair of an Object and and a primitive int value.
27 @InterfaceAudience.Private
28 public class ObjectIntPair<T> {
30 private T first;
31 private int second;
33 public ObjectIntPair() {
36 public ObjectIntPair(T first, int second) {
37 this.setFirst(first);
38 this.setSecond(second);
41 public T getFirst() {
42 return first;
45 public void setFirst(T first) {
46 this.first = first;
49 public int getSecond() {
50 return second;
53 public void setSecond(int second) {
54 this.second = second;
57 @Override
58 public boolean equals(Object other) {
59 return other instanceof ObjectIntPair && equals(first, ((ObjectIntPair<?>) other).first)
60 && (this.second == ((ObjectIntPair<?>) other).second);
63 private static boolean equals(Object x, Object y) {
64 return (x == null && y == null) || (x != null && x.equals(y));
67 @Override
68 public int hashCode() {
69 return first == null ? 0 : (first.hashCode() * 17) + 13 * second;
72 @Override
73 public String toString() {
74 return "{" + getFirst() + "," + getSecond() + "}";