001/*
002 * Licensed to the Apache Software Foundation (ASF) under one
003 * or more contributor license agreements.  See the NOTICE file
004 * distributed with this work for additional information
005 * regarding copyright ownership.  The ASF licenses this file
006 * to you under the Apache License, Version 2.0 (the
007 * "License"); you may not use this file except in compliance
008 * with the License.  You may obtain a copy of the License at
009 *
010 *     http://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing, software
013 * distributed under the License is distributed on an "AS IS" BASIS,
014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
015 * See the License for the specific language governing permissions and
016 * limitations under the License.
017 */
018package org.apache.hadoop.hbase;
019
020import org.apache.yetus.audience.InterfaceAudience;
021
022// TODO move this to hbase-annotations non-test-jar
023
024/**
025 * This class defines constants for different classes of hbase limited private apis
026 */
027@InterfaceAudience.Public
028public final class HBaseInterfaceAudience {
029
030  /**
031   * Can't create this class.
032   */
033  private HBaseInterfaceAudience() {
034  }
035
036  public static final String COPROC = "Coprocesssor";
037  public static final String REPLICATION = "Replication";
038  public static final String PHOENIX = "Phoenix";
039  public static final String SPARK = "Spark";
040  public static final String UNITTEST = "Unittest";
041
042  /**
043   * Denotes class names that appear in user facing configuration files.
044   */
045  public static final String CONFIG = "Configuration";
046
047  /**
048   * Denotes classes used as tools (Used from cmd line). Usually, the compatibility is required for
049   * class name, and arguments.
050   */
051  public static final String TOOLS = "Tools";
052
053  /**
054   * Denotes classes used by hbck tool for fixing inconsistent state of HBase.
055   */
056  public static final String HBCK = "HBCK";
057
058  /**
059   * Denotes classes that can be used to build custom authentication solutions.
060   */
061  public static final String AUTHENTICATION = "Authentication";
062}