Merge pull request #1 from joshelser/21002-kafka-connection-pom
HBASE-21002 Reorganize the Kafka Connector codebase
diff --git a/hbase-kafka-proxy/.pom.xml.swp b/hbase-kafka-proxy/.pom.xml.swp
deleted file mode 100644
index 0507dd6..0000000
--- a/hbase-kafka-proxy/.pom.xml.swp
+++ /dev/null
Binary files differ
diff --git a/conf/kafka-route-rules.xml b/kafka/conf/kafka-route-rules.xml
similarity index 70%
rename from conf/kafka-route-rules.xml
rename to kafka/conf/kafka-route-rules.xml
index 4d31ee2..0099501 100644
--- a/conf/kafka-route-rules.xml
+++ b/kafka/conf/kafka-route-rules.xml
@@ -1,3 +1,22 @@
+<!--
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
<!-- rules used by hbase kafka proxy to route mutations to kafka topics-->
<rules>
<!--
diff --git a/hbase-kafka-model/pom.xml b/kafka/hbase-kafka-model/pom.xml
similarity index 67%
rename from hbase-kafka-model/pom.xml
rename to kafka/hbase-kafka-model/pom.xml
index 8c497b1..44891c2 100644
--- a/hbase-kafka-model/pom.xml
+++ b/kafka/hbase-kafka-model/pom.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<!--
@@ -22,10 +22,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <groupId>org.apache.hbase</groupId>
+ <groupId>org.apache.hbase.connectors</groupId>
<artifactId>hbase-connectors</artifactId>
<version>1.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../..</relativePath>
</parent>
<artifactId>hbase-kafka-model</artifactId>
@@ -40,25 +40,6 @@
</dependencies>
<build>
- <sourceDirectory>${project.basedir}/target/java</sourceDirectory>
- <resources>
- <resource>
- <directory>src/main/resources/</directory>
- <includes>
- <include>hbase-default.xml</include>
- </includes>
- </resource>
- </resources>
- <testResources>
- <testResource>
- <directory>src/test/resources/META-INF/</directory>
- <targetPath>META-INF/</targetPath>
- <includes>
- <include>NOTICE</include>
- </includes>
- <filtering>true</filtering>
- </testResource>
- </testResources>
<plugins>
<plugin>
<groupId>org.apache.avro</groupId>
@@ -72,7 +53,7 @@
</goals>
<configuration>
<sourceDirectory>${project.basedir}/src/main/avro/</sourceDirectory>
- <outputDirectory>${project.basedir}/target/java/</outputDirectory>
+ <outputDirectory>${project.build.directory}/generated-sources/java</outputDirectory>
<includes>
<include>**/*.avro</include>
</includes>
@@ -80,8 +61,24 @@
</execution>
</executions>
</plugin>
-
-
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>add-source</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>add-source</goal>
+ </goals>
+ <configuration>
+ <sources>
+ <source>${project.build.directory}/generated-sources/java/</source>
+ </sources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-remote-resources-plugin</artifactId>
@@ -100,26 +97,10 @@
<skipAssembly>true</skipAssembly>
</configuration>
</plugin>
- <plugin>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <properties>
- <property>
- <name>listener</name>
- <value>org.apache.hadoop.hbase.ResourceCheckerJUnitListener</value>
- </property>
- </properties>
- </configuration>
- </plugin>
<!-- Make a jar and put the sources in the jar -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
- <configuration>
- <excludes>
- <exclude>hbase-default.xml</exclude>
- </excludes>
- </configuration>
</plugin>
</plugins>
<pluginManagement>
@@ -135,37 +116,11 @@
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <versionRange>[${maven.antrun.version}]</versionRange>
+ <groupId>org.apache.avro</groupId>
+ <artifactId>avro-maven-plugin</artifactId>
+ <versionRange>[1.7.7,)</versionRange>
<goals>
- <goal>run</goal>
- </goals>
- </pluginExecutionFilter>
- <action>
- <execute/>
- </action>
- </pluginExecution>
- <pluginExecution>
- <pluginExecutionFilter>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-dependency-plugin</artifactId>
- <versionRange>[2.8,)</versionRange>
- <goals>
- <goal>build-classpath</goal>
- </goals>
- </pluginExecutionFilter>
- <action>
- <ignore></ignore>
- </action>
- </pluginExecution>
- <pluginExecution>
- <pluginExecutionFilter>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <versionRange>[3.2,)</versionRange>
- <goals>
- <goal>compile</goal>
+ <goal>schema</goal>
</goals>
</pluginExecutionFilter>
<action>
@@ -179,8 +134,6 @@
</plugins>
</pluginManagement>
</build>
-
-
<profiles>
<!-- Needs to make the profile in apache parent pom -->
<profile>
diff --git a/hbase-kafka-model/src/main/avro/HbaseKafkaEvent.avro b/kafka/hbase-kafka-model/src/main/avro/HbaseKafkaEvent.avro
similarity index 100%
rename from hbase-kafka-model/src/main/avro/HbaseKafkaEvent.avro
rename to kafka/hbase-kafka-model/src/main/avro/HbaseKafkaEvent.avro
diff --git a/hbase-kafka-proxy/pom.xml b/kafka/hbase-kafka-proxy/pom.xml
similarity index 68%
rename from hbase-kafka-proxy/pom.xml
rename to kafka/hbase-kafka-proxy/pom.xml
index 7ece36f..b4b3226 100644
--- a/hbase-kafka-proxy/pom.xml
+++ b/kafka/hbase-kafka-proxy/pom.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<!--
@@ -22,10 +22,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <groupId>org.apache.hbase</groupId>
+ <groupId>org.apache.hbase.connectors</groupId>
<artifactId>hbase-connectors</artifactId>
<version>1.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../..</relativePath>
</parent>
<artifactId>hbase-kafka-proxy</artifactId>
@@ -71,70 +71,6 @@
</configuration>
</plugin>
</plugins>
- <pluginManagement>
- <plugins>
- <!--This plugin's configuration is used to store Eclipse m2e settings
- only. It has no influence on the Maven build itself. -->
- <plugin>
- <groupId>org.eclipse.m2e</groupId>
- <artifactId>lifecycle-mapping</artifactId>
- <version>1.0.0</version>
- <configuration>
- <lifecycleMappingMetadata>
- <pluginExecutions>
- <pluginExecution>
- <pluginExecutionFilter>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <versionRange>[${maven.antrun.version}]</versionRange>
- <goals>
- <goal>run</goal>
- </goals>
- </pluginExecutionFilter>
- <action>
- <execute/>
- </action>
- </pluginExecution>
- <pluginExecution>
- <pluginExecutionFilter>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-dependency-plugin</artifactId>
- <versionRange>[2.8,)</versionRange>
- <goals>
- <goal>build-classpath</goal>
- </goals>
- </pluginExecutionFilter>
- <action>
- <ignore></ignore>
- </action>
- </pluginExecution>
- <pluginExecution>
- <pluginExecutionFilter>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <versionRange>[3.2,)</versionRange>
- <configuration>
- <source>${compileSource}</source>
- <target>${compileSource}</target>
- <showWarnings>true</showWarnings>
- <showDeprecation>false</showDeprecation>
- <useIncrementalCompilation>false</useIncrementalCompilation>
- <compilerArgument>-Xlint:-options</compilerArgument>
- </configuration>
- <goals>
- <goal>compile</goal>
- </goals>
- </pluginExecutionFilter>
- <action>
- <ignore></ignore>
- </action>
- </pluginExecution>
- </pluginExecutions>
- </lifecycleMappingMetadata>
- </configuration>
- </plugin>
- </plugins>
- </pluginManagement>
</build>
<dependencies>
<dependency>
@@ -144,7 +80,6 @@
<dependency>
<groupId>org.apache.hbase.connectors</groupId>
<artifactId>hbase-kafka-model</artifactId>
- <scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
@@ -193,13 +128,11 @@
<groupId>org.apache.commons</groupId>
<artifactId>commons-collections4</artifactId>
<version>${collections.version}</version>
- <scope>compile</scope>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>${commons-io.version}</version>
- <scope>compile</scope>
</dependency>
</dependencies>
@@ -251,8 +184,5 @@
<surefire.skipSecondPart>true</surefire.skipSecondPart>
</properties>
</profile>
-
-
-
</profiles>
</project>
diff --git a/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/DropRule.java b/kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/DropRule.java
similarity index 100%
rename from hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/DropRule.java
rename to kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/DropRule.java
diff --git a/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/DumpToStringListener.java b/kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/DumpToStringListener.java
similarity index 100%
rename from hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/DumpToStringListener.java
rename to kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/DumpToStringListener.java
diff --git a/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaBridgeConnection.java b/kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaBridgeConnection.java
similarity index 100%
rename from hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaBridgeConnection.java
rename to kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaBridgeConnection.java
diff --git a/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaProxy.java b/kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaProxy.java
similarity index 100%
rename from hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaProxy.java
rename to kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaProxy.java
diff --git a/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaTableForBridge.java b/kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaTableForBridge.java
similarity index 100%
rename from hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaTableForBridge.java
rename to kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/KafkaTableForBridge.java
diff --git a/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/Rule.java b/kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/Rule.java
similarity index 100%
rename from hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/Rule.java
rename to kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/Rule.java
diff --git a/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/TopicRoutingRules.java b/kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/TopicRoutingRules.java
similarity index 100%
rename from hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/TopicRoutingRules.java
rename to kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/TopicRoutingRules.java
diff --git a/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/TopicRule.java b/kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/TopicRule.java
similarity index 100%
rename from hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/TopicRule.java
rename to kafka/hbase-kafka-proxy/src/main/java/org/apache/hadoop/hbase/kafka/TopicRule.java
diff --git a/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/ProducerForTesting.java b/kafka/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/ProducerForTesting.java
similarity index 100%
rename from hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/ProducerForTesting.java
rename to kafka/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/ProducerForTesting.java
diff --git a/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestDropRule.java b/kafka/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestDropRule.java
similarity index 100%
rename from hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestDropRule.java
rename to kafka/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestDropRule.java
diff --git a/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestProcessMutations.java b/kafka/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestProcessMutations.java
similarity index 100%
rename from hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestProcessMutations.java
rename to kafka/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestProcessMutations.java
diff --git a/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestQualifierMatching.java b/kafka/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestQualifierMatching.java
similarity index 100%
rename from hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestQualifierMatching.java
rename to kafka/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestQualifierMatching.java
diff --git a/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestRouteRules.java b/kafka/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestRouteRules.java
similarity index 100%
rename from hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestRouteRules.java
rename to kafka/hbase-kafka-proxy/src/test/java/org/apache/hadoop/hbase/kafka/TestRouteRules.java
diff --git a/pom.xml b/pom.xml
index f487f47..45f2523 100644
--- a/pom.xml
+++ b/pom.xml
@@ -18,15 +18,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
-
- ON MVN COMPILE NOT WORKING
-
- If you wondering why 'mvn compile' does not work building HBase
- (in particular, if you are doing it for the first time), instead do
- 'mvn package'. If you are interested in the full story, see
- https://issues.apache.org/jira/browse/HBASE-6795.
-
-->
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -36,7 +27,7 @@
<relativePath/>
<!-- no parent resolution -->
</parent>
- <groupId>org.apache.hbase</groupId>
+ <groupId>org.apache.hbase.connectors</groupId>
<artifactId>hbase-connectors</artifactId>
<version>1.0.0-SNAPSHOT</version>
<name>Apache HBase Connectors</name>
@@ -54,8 +45,8 @@
</license>
</licenses>
<modules>
- <module>hbase-kafka-model</module>
- <module>hbase-kafka-proxy</module>
+ <module>kafka/hbase-kafka-model</module>
+ <module>kafka/hbase-kafka-proxy</module>
</modules>
<scm>
<connection>scm:git:git://gitbox.apache.org/repos/asf/hbase-connectors.git</connection>
@@ -181,6 +172,11 @@
<artifactId>hbase-kafka-model</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.hbase.connectors</groupId>
+ <artifactId>hbase-kafka-proxy</artifactId>
+ <version>${project.version}</version>
+ </dependency>
</dependencies>
</dependencyManagement>
<build>
@@ -227,39 +223,14 @@
<version>0.11</version>
<configuration>
<excludes>
- <exclude>**/*.versionsBackup</exclude>
- <exclude>**/*.log</exclude>
- <exclude>**/.*</exclude>
- <exclude>**/*.tgz</exclude>
- <exclude>**/*.orig</exclude>
+ <exclude>target/*</exclude>
<exclude>**/.idea/**</exclude>
<exclude>**/*.iml</exclude>
- <exclude>**/CHANGES.txt</exclude>
- <exclude>**/generated/**</exclude>
- <exclude>**/gen-*/**</exclude>
- <exclude>**/*.avpr</exclude>
- <exclude>**/*.svg</exclude>
- <!-- vector graphics -->
- <exclude>**/*.vm</exclude>
- <!-- apache doxia generated -->
- <exclude>**/control</exclude>
- <exclude>**/conffile</exclude>
- <!-- auto-gen docs -->
- <exclude>docs/*</exclude>
- <exclude>logs/*</exclude>
<!-- exclude source control files -->
<exclude>.git/**</exclude>
- <exclude>.svn/**</exclude>
<exclude>**/.settings/**</exclude>
<exclude>**/patchprocess/**</exclude>
- <exclude>**/dependency-reduced-pom.xml</exclude>
- <exclude>**/rat.txt</exclude>
- <!-- exclude the shaded protobuf files -->
- <exclude>**/src/main/patches/**</exclude>
- <!--Exclude the unpacked google src-->
- <exclude>**/src/main/java/com/google/protobuf/**</exclude>
- <exclude>**/src/main/java/google/**</exclude>
- <exclude>**/src/main/java/META-INF/**</exclude>
+ <exclude>README.md</exclude>
</excludes>
</configuration>
</plugin>
@@ -280,31 +251,12 @@
<timestampPropertyName>build.year</timestampPropertyName>
</configuration>
</plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-shade-plugin</artifactId>
- <version>3.0.0</version>
- </plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
- <artifactId>maven-clean-plugin</artifactId>
- <configuration>
- <filesets>
- <fileset>
- <directory>${basedir}</directory>
- <includes>
- <include>dependency-reduced-pom.xml</include>
- </includes>
- </fileset>
- </filesets>
- </configuration>
- </plugin>
- <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
- <version>1.4</version>
<dependencies>
<dependency>
<groupId>org.codehaus.mojo</groupId>
@@ -350,15 +302,6 @@
</execution>
</executions>
</plugin>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <version>3.0.0</version>
- <configuration>
- <descriptors>
- <descriptor>src/main/assembly/src.xml</descriptor>
- </descriptors>
- </configuration>
- </plugin>
</plugins>
</build>
<profiles>