2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License. You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
19 package org
.apache
.hadoop
.hbase
.regionserver
;
21 import java
.io
.IOException
;
22 import java
.util
.Optional
;
24 import org
.apache
.hadoop
.hbase
.client
.TestFromClientSideWithCoprocessor
;
25 import org
.apache
.hadoop
.hbase
.coprocessor
.ObserverContext
;
26 import org
.apache
.hadoop
.hbase
.coprocessor
.RegionCoprocessor
;
27 import org
.apache
.hadoop
.hbase
.coprocessor
.RegionCoprocessorEnvironment
;
28 import org
.apache
.hadoop
.hbase
.coprocessor
.RegionObserver
;
29 import org
.apache
.hadoop
.hbase
.regionserver
.compactions
.CompactionLifeCycleTracker
;
30 import org
.apache
.hadoop
.hbase
.regionserver
.compactions
.CompactionRequest
;
33 * RegionObserver that just reimplements the default behavior, in order to validate that all the
34 * necessary APIs for this are public This observer is also used in
35 * {@link TestFromClientSideWithCoprocessor} and {@link TestCompactionWithCoprocessor} to make sure
36 * that a wide range of functionality still behaves as expected.
38 public class NoOpScanPolicyObserver
implements RegionCoprocessor
, RegionObserver
{
41 public Optional
<RegionObserver
> getRegionObserver() {
42 return Optional
.of(this);
46 public InternalScanner
preFlush(ObserverContext
<RegionCoprocessorEnvironment
> c
, Store store
,
47 InternalScanner scanner
, FlushLifeCycleTracker tracker
) throws IOException
{
48 return new DelegatingInternalScanner(scanner
);
52 public InternalScanner
preCompact(ObserverContext
<RegionCoprocessorEnvironment
> c
, Store store
,
53 InternalScanner scanner
, ScanType scanType
, CompactionLifeCycleTracker tracker
,
54 CompactionRequest request
) throws IOException
{
55 return new DelegatingInternalScanner(scanner
);
58 // TODO add for postScannerOpen