Package org.apache.hadoop.hbase.rest
Class RESTServer
java.lang.Object
org.apache.hadoop.hbase.rest.RESTServer
- All Implemented Interfaces:
Constants
Main class for launching REST gateway as a servlet hosted by Jetty.
The following options are supported:
- -p --port : service port
- -ro --readonly : server mode
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic org.apache.hadoop.conf.Configuration(package private) static final int(package private) static final int(package private) static final Stringprivate InfoServer(package private) static org.slf4j.Loggerprivate static final String(package private) static final String(package private) static final String(package private) static final String(package private) static final boolean(package private) static final String(package private) static final String(package private) static final String(package private) static final Stringprivate static booleanstatic final String(package private) booleanprivate org.apache.hbase.thirdparty.org.eclipse.jetty.server.Serverprivate ServerNamestatic final Stringprivate final UserProviderFields inherited from interface org.apache.hadoop.hbase.rest.Constants
CRLF, CUSTOM_FILTERS, DEFAULT_LISTEN_PORT, DEFAULT_MAX_AGE, DEFAULT_REST_CLIENT_CONN_TIMEOUT, DEFAULT_REST_CLIENT_SOCKET_TIMEOUT, DEFAULT_REST_SCANNERCACHE_EXPIRE_TIME_MS, DEFAULT_REST_SCANNERCACHE_SIZE, FILTER, FILTER_B64, FILTER_CLASSES, KEY_ENCODING_QUERY_PARAM_NAME, MIMETYPE_BINARY, MIMETYPE_HTML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, MIMETYPE_PROTOBUF_IETF, MIMETYPE_TEXT, MIMETYPE_XML, NOCACHE_PARAM_NAME, REST_AUTHENTICATION_PRINCIPAL, REST_AUTHENTICATION_TYPE, REST_CLIENT_CONN_TIMEOUT, REST_CLIENT_SOCKET_TIMEOUT, REST_CONNECTOR_ACCEPT_QUEUE_SIZE, REST_DNS_INTERFACE, REST_DNS_NAMESERVER, REST_KERBEROS_PRINCIPAL, REST_KEYTAB_FILE, REST_SCANNERCACHE_EXPIRE_TIME, REST_SCANNERCACHE_SIZE, REST_SSL_ENABLED, REST_SSL_EXCLUDE_CIPHER_SUITES, REST_SSL_EXCLUDE_PROTOCOLS, REST_SSL_INCLUDE_CIPHER_SUITES, REST_SSL_INCLUDE_PROTOCOLS, REST_SSL_KEYSTORE_KEYPASSWORD, REST_SSL_KEYSTORE_PASSWORD, REST_SSL_KEYSTORE_STORE, REST_SSL_KEYSTORE_TYPE, REST_SSL_TRUSTSTORE_PASSWORD, REST_SSL_TRUSTSTORE_STORE, REST_SSL_TRUSTSTORE_TYPE, REST_THREAD_POOL_TASK_QUEUE_SIZE, REST_THREAD_POOL_THREAD_IDLE_TIMEOUT, REST_THREAD_POOL_THREADS_MAX, REST_THREAD_POOL_THREADS_MIN, ROW_KEYS_PARAM_NAME, SCAN_BATCH_SIZE, SCAN_CACHE_BLOCKS, SCAN_COLUMN, SCAN_END_ROW, SCAN_END_TIME, SCAN_FETCH_SIZE, SCAN_FILTER, SCAN_LIMIT, SCAN_MAX_VERSIONS, SCAN_REVERSED, SCAN_START_ROW, SCAN_START_TIME, VERSION_STRING -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddClickjackingPreventionFilter(org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletContextHandler ctxHandler, org.apache.hadoop.conf.Configuration conf) (package private) voidaddCSRFFilter(org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletContextHandler ctxHandler, org.apache.hadoop.conf.Configuration conf) private voidaddSecurityHeadersFilter(org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletContextHandler ctxHandler, org.apache.hadoop.conf.Configuration conf, boolean isSecure) org.apache.hadoop.conf.ConfigurationgetConf()private static StringgetHostName(org.apache.hadoop.conf.Configuration conf) intintgetPort()voidjoin()private static Pair<org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.FilterHolder,Class<? extends org.apache.hbase.thirdparty.org.glassfish.jersey.servlet.ServletContainer>> loginServerPrincipal(UserProvider userProvider, org.apache.hadoop.conf.Configuration conf) static voidThe main method for the HBase rest server.private static voidparseCommandLine(String[] args, org.apache.hadoop.conf.Configuration conf) private static voidprintUsageAndExit(org.apache.hbase.thirdparty.org.apache.commons.cli.Options options, int exitCode) voidrun()Runs the REST server.voidstop()private void
-
Field Details
-
LOG
-
REST_SERVER
- See Also:
-
REST_CSRF_ENABLED_KEY
- See Also:
-
REST_CSRF_ENABLED_DEFAULT
- See Also:
-
restCSRFEnabled
boolean restCSRFEnabled -
REST_CSRF_CUSTOM_HEADER_KEY
- See Also:
-
REST_CSRF_CUSTOM_HEADER_DEFAULT
- See Also:
-
REST_CSRF_METHODS_TO_IGNORE_KEY
- See Also:
-
REST_CSRF_METHODS_TO_IGNORE_DEFAULT
- See Also:
-
SKIP_LOGIN_KEY
- See Also:
-
DEFAULT_HTTP_MAX_HEADER_SIZE
- See Also:
-
HTTP_HEADER_CACHE_SIZE
- See Also:
-
DEFAULT_HTTP_HEADER_CACHE_SIZE
- See Also:
-
PATH_SPEC_ANY
- See Also:
-
REST_HTTP_ALLOW_OPTIONS_METHOD
- See Also:
-
REST_HTTP_ALLOW_OPTIONS_METHOD_DEFAULT
-
REST_CSRF_BROWSER_USERAGENTS_REGEX_KEY
- See Also:
-
conf
-
userProvider
-
server
-
infoServer
-
serverName
-
-
Constructor Details
-
RESTServer
-
-
Method Details
-
printUsageAndExit
private static void printUsageAndExit(org.apache.hbase.thirdparty.org.apache.commons.cli.Options options, int exitCode) -
addCSRFFilter
void addCSRFFilter(org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletContextHandler ctxHandler, org.apache.hadoop.conf.Configuration conf) -
addClickjackingPreventionFilter
private void addClickjackingPreventionFilter(org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletContextHandler ctxHandler, org.apache.hadoop.conf.Configuration conf) -
addSecurityHeadersFilter
private void addSecurityHeadersFilter(org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletContextHandler ctxHandler, org.apache.hadoop.conf.Configuration conf, boolean isSecure) -
loginServerPrincipal
private static Pair<org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.FilterHolder,Class<? extends org.apache.hbase.thirdparty.org.glassfish.jersey.servlet.ServletContainer>> loginServerPrincipal(UserProvider userProvider, org.apache.hadoop.conf.Configuration conf) throws Exception - Throws:
Exception
-
parseCommandLine
-
run
Runs the REST server.- Throws:
Exception
-
getHostName
private static String getHostName(org.apache.hadoop.conf.Configuration conf) throws UnknownHostException - Throws:
UnknownHostException
-
join
- Throws:
Exception
-
stopInfoServer
-
stop
- Throws:
Exception
-
getPort
-
getInfoPort
-
getServerName
-
getConf
-
main
The main method for the HBase rest server.- Parameters:
args- command-line arguments- Throws:
Exception- exception
-