1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.hadoop.hbase.quotas.policies;
18
19 import java.util.Objects;
20
21 import org.apache.hadoop.hbase.TableName;
22 import org.apache.hadoop.hbase.classification.InterfaceAudience;
23 import org.apache.hadoop.hbase.classification.InterfaceStability;
24 import org.apache.hadoop.hbase.quotas.SpaceQuotaSnapshot;
25 import org.apache.hadoop.hbase.quotas.SpaceViolationPolicyEnforcement;
26 import org.apache.hadoop.hbase.regionserver.RegionServerServices;
27
28
29
30
31 @InterfaceAudience.Private
32 @InterfaceStability.Evolving
33 public abstract class AbstractViolationPolicyEnforcement
34 implements SpaceViolationPolicyEnforcement {
35
36 RegionServerServices rss;
37 TableName tableName;
38 SpaceQuotaSnapshot quotaSnapshot;
39
40 public void setRegionServerServices(RegionServerServices rss) {
41 this.rss = Objects.requireNonNull(rss);
42 }
43
44 public void setTableName(TableName tableName) {
45 this.tableName = tableName;
46 }
47
48 public RegionServerServices getRegionServerServices() {
49 return this.rss;
50 }
51
52 public TableName getTableName() {
53 return this.tableName;
54 }
55
56 public void setQuotaSnapshot(SpaceQuotaSnapshot snapshot) {
57 this.quotaSnapshot = Objects.requireNonNull(snapshot);
58 }
59
60 @Override
61 public SpaceQuotaSnapshot getQuotaSnapshot() {
62 return this.quotaSnapshot;
63 }
64
65 @Override
66 public void initialize(
67 RegionServerServices rss, TableName tableName, SpaceQuotaSnapshot snapshot) {
68 setRegionServerServices(rss);
69 setTableName(tableName);
70 setQuotaSnapshot(snapshot);
71 }
72
73 @Override
74 public boolean areCompactionsDisabled() {
75 return false;
76 }
77 }