12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- package com.winhc.fast.query.configuration;
- import lombok.AllArgsConstructor;
- import lombok.SneakyThrows;
- import lombok.extern.slf4j.Slf4j;
- import org.apache.hadoop.hbase.HBaseConfiguration;
- import org.apache.hadoop.hbase.client.AsyncConnection;
- import org.apache.hadoop.hbase.client.ConnectionFactory;
- import org.springframework.boot.context.properties.EnableConfigurationProperties;
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.Configuration;
- import java.util.Map;
- import java.util.Set;
- import java.util.concurrent.CompletableFuture;
- /**
- * @author: XuJiakai
- * 2022/5/25 11:05
- */
- @Slf4j
- @Configuration
- @AllArgsConstructor
- @EnableConfigurationProperties(HbaseProperties.class)
- public class HbaseConfiguration {
- private final HbaseProperties properties;
- @SneakyThrows
- @Bean
- public AsyncConnection asyncConnection() {
- CompletableFuture<AsyncConnection> asyncConnection = ConnectionFactory.createAsyncConnection(configuration());
- return asyncConnection.get();
- }
- public org.apache.hadoop.conf.Configuration configuration() {
- org.apache.hadoop.conf.Configuration configuration = HBaseConfiguration.create();
- Map<String, String> config = properties.getConfig();
- Set<String> keySet = config.keySet();
- for (String key : keySet) {
- configuration.set(key, config.get(key));
- }
- return configuration;
- }
- }
|