新增adapter-launcher springboot工程

This commit is contained in:
mcy
2018-10-24 11:29:28 +08:00
parent 3e49e33f9f
commit a91f204682
21 changed files with 806 additions and 46 deletions

View File

@@ -22,7 +22,8 @@
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>1.17</version>
<version>1.19</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
@@ -45,15 +46,23 @@
<build>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<addMavenDescriptor>true</addMavenDescriptor>
</archive>
<excludes>
<exclude>**/hbase-mapping/**</exclude>
</excludes>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
@@ -65,9 +74,8 @@
</goals>
<configuration>
<tasks>
<copy todir="${project.basedir}/../../client-launcher/target/canal_client/conf/hbase-mapping" overwrite="true" >
<fileset dir="${project.basedir}/src/main/resources/hbase-mapping" erroronmissingdir="true">
<include name="*.conf"/>
<copy todir="${project.basedir}/../adapter-launcher/target/config/hbase" overwrite="true" >
<fileset dir="${project.basedir}/src/main/resources/hbase" erroronmissingdir="true">
<include name="*.yml"/>
</fileset>
</copy>

View File

@@ -4,6 +4,7 @@ import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Collection;
import java.util.LinkedHashMap;
import java.util.Map;
@@ -12,12 +13,10 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.yaml.snakeyaml.Yaml;
import com.alibaba.otter.canal.client.adapter.support.AdapterConfigs;
/**
* HBase表映射配置加载器
* <p>
* 配置统一从hbase-mapping/configs.conf文件作为入口, 该文件包含所有表映射配置的名称或者文件名列表。
* 每个对应的表配置可以yml配置文件或者以database.table为配置名的简化形式
* </p>
*
* @author machengyuan 2018-8-21 下午06:45:49
* @version 1.0.0
@@ -26,7 +25,7 @@ public class MappingConfigLoader {
private static Logger logger = LoggerFactory.getLogger(MappingConfigLoader.class);
private static final String BASE_PATH = "hbase-mapping/";
private static final String BASE_PATH = "hbase";
/**
* 加载HBase表映射配置
@@ -35,12 +34,11 @@ public class MappingConfigLoader {
*/
public static Map<String, MappingConfig> load() {
logger.info("## Start loading mapping config ... ");
String mappingConfigContent = readConfigContent(BASE_PATH + "configs.conf");
Map<String, MappingConfig> result = new LinkedHashMap<>();
String[] configLines = mappingConfigContent.split("\n");
for (String c : configLines) {
Collection<String> configs = AdapterConfigs.configs.get("hbase");
for (String c : configs) {
if (c == null) {
continue;
}

View File

@@ -1,5 +0,0 @@
# 详细映射配置
mytest_person2.yml
# 简易配置, 只用指定数据库名.表名, 详细配置全部使用默认
mytest.person