1 /**
2 * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
3 * agreements. See the NOTICE file distributed with this work for additional information regarding
4 * copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the
5 * "License"); you may not use this file except in compliance with the License. You may obtain a
6 * copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable
7 * law or agreed to in writing, software distributed under the License is distributed on an "AS IS"
8 * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License
9 * for the specific language governing permissions and limitations under the License.
10 */
11 package org.apache.hadoop.hbase.quotas;
12
13 import java.io.IOException;
14
15 import org.apache.hadoop.hbase.HRegionInfo;
16 import org.apache.hadoop.hbase.classification.InterfaceAudience;
17
18 /**
19 * The listener interface for receiving region state events.
20 */
21 @InterfaceAudience.Private
22 public interface RegionStateListener {
23
24 /**
25 * Process region split event.
26 * @param hri An instance of HRegionInfo
27 * @throws IOException
28 */
29 void onRegionSplit(HRegionInfo hri) throws IOException;
30
31 /**
32 * Process region split reverted event.
33 * @param hri An instance of HRegionInfo
34 * @throws IOException Signals that an I/O exception has occurred.
35 */
36 void onRegionSplitReverted(HRegionInfo hri) throws IOException;
37
38 /**
39 * Process region merge event.
40 * @param hri An instance of HRegionInfo
41 * @throws IOException
42 */
43 void onRegionMerged(HRegionInfo hri) throws IOException;
44 }