This is an automated email from the ASF dual-hosted git repository.

elserj pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-ratis-thirdparty.git


The following commit(s) were added to refs/heads/master by this push:
     new 67a635b  RATIS-335 Create a thirdparty-hadoop module
67a635b is described below

commit 67a635b7289388ef2655b1f4ff3a0ce8375a9ffb
Author: Josh Elser <[email protected]>
AuthorDate: Wed Sep 26 22:19:15 2018 -0400

    RATIS-335 Create a thirdparty-hadoop module
    
    * Based on ratis-hadoop-shaded. Thirdparty repo now contains two modules.
    * Includes updated hadoop version
---
 hadoop/pom.xml                                     | 151 +++++++++++++
 pom.xml                                            | 246 +++++++--------------
 thirdparty/pom.xml                                 | 196 ++++++++++++++++
 .../src}/main/appended-resources/META-INF/LICENSE  |   0
 .../src}/main/appended-resources/META-INF/NOTICE   |   0
 5 files changed, 423 insertions(+), 170 deletions(-)

diff --git a/hadoop/pom.xml b/hadoop/pom.xml
new file mode 100644
index 0000000..bfc5fcd
--- /dev/null
+++ b/hadoop/pom.xml
@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed 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. See accompanying LICENSE file.
+-->
+<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";>
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.ratis</groupId>
+    <artifactId>ratis-thirdparty-parent</artifactId>
+    <version>0.1.0-SNAPSHOT</version>
+  </parent>
+  <artifactId>ratis-thirdparty-hadoop</artifactId>
+  <groupId>org.apache.ratis</groupId>
+  <name>Apache Ratis Thirdparty Hadoop</name>
+  <packaging>jar</packaging>
+  <description>Hadoop dependencies for Apache Ratis</description>
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.ratis</groupId>
+      <artifactId>ratis-thirdparty</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.hadoop</groupId>
+      <artifactId>hadoop-common</artifactId>
+      <version>${hadoop.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>com.google.errorprone</groupId>
+      <artifactId>error_prone_annotations</artifactId>
+      <version>2.2.0</version>
+    </dependency>
+    <dependency>
+      <groupId>com.google.j2objc</groupId>
+      <artifactId>j2objc-annotations</artifactId>
+      <version>1.3</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.mojo</groupId>
+      <artifactId>animal-sniffer-annotations</artifactId>
+      <version>1.16</version>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <!--Make it so assembly:single does nothing in here-->
+        <artifactId>maven-assembly-plugin</artifactId>
+        <configuration>
+          <skipAssembly>true</skipAssembly>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-shade-plugin</artifactId>
+        <executions>
+          <execution>
+            <phase>package</phase>
+            <goals>
+              <goal>shade</goal>
+            </goals>
+            <configuration>
+              <shadeSourcesContent>true</shadeSourcesContent>
+              <createSourcesJar>true</createSourcesJar>
+              <!-- Replace the original artifact which is no good on its own 
-->
+              <shadedArtifactAttached>false</shadedArtifactAttached>
+              
<dependencyReducedPomLocation>${project.build.directory}/dependency-reduced-pom.xml</dependencyReducedPomLocation>
+              <!-- Using shade-plugin to relocate hadoop's protobuf dependency 
and find it in ratis-thirdparty.
+                   So dirty. -->
+              <relocations>
+                <relocation>
+                  <pattern>com.google.protobuf</pattern>
+                  
<shadedPattern>org.apache.ratis.thirdparty.com.google.protobuf</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>org.apache.hadoop.ipc.protobuf</pattern>
+                  
<shadedPattern>org.apache.ratis.shaded.org.apache.hadoop.ipc.protobuf</shadedPattern>
+                </relocation>
+              </relocations>
+
+              <filters>
+                <filter>
+                  <artifact>org.apache.hadoop:hadoop-common</artifact>
+                  <includes>
+                    <include>org/apache/hadoop/ipc/protobuf/**</include>
+                  </includes>
+                </filter>
+              </filters>
+
+              <artifactSet>
+                <includes>
+                  <!--  Must list explicitly, otherwise we pull in all of 
hadoop-common's
+                        transitive dependencies. -->
+                  <include>org.apache.hadoop:hadoop-common</include>
+                  <include>com.google.j2objc:j2objc-annotations</include>
+                  
<include>com.google.errorprone:error_prone_annotations</include>
+                  
<include>org.codehaus.mojo:animal-sniffer-annotations</include>
+                </includes>
+              </artifactSet>
+              <!-- Pick up any LICENSE/NOTICE files from our dependencies -->
+              <transformers>
+                <!-- There are transformers for LICENSE and NOTICE, but none 
of our dependencies have proper upstream
+                     L&N files, so we can just manage it ourselves with less 
pain and more correctness. -->
+                <transformer 
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"
 />
+              </transformers>
+            </configuration>
+          </execution>
+        </executions>
+      </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-shade-plugin</artifactId>
+                    <versionRange>[3.1.1,)</versionRange>
+                    <goals>
+                      <goal>shade</goal>
+                    </goals>
+                  </pluginExecutionFilter>
+                  <action>
+                    <ignore/>
+                  </action>
+                </pluginExecution>
+              </pluginExecutions>
+            </lifecycleMappingMetadata>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+</project>
diff --git a/pom.xml b/pom.xml
index 5dc69f2..204a317 100644
--- a/pom.xml
+++ b/pom.xml
@@ -20,14 +20,18 @@
     <version>18</version>
     <relativePath /> <!-- resolve from repository -->
   </parent>
-  <artifactId>ratis-thirdparty</artifactId>
+  <artifactId>ratis-thirdparty-parent</artifactId>
   <groupId>org.apache.ratis</groupId>
   <version>0.1.0-SNAPSHOT</version>
-  <name>Apache Ratis Thirdparty</name>
-  <packaging>jar</packaging>
+  <name>Apache Ratis Thirdparty Parent</name>
+  <packaging>pom</packaging>
   <description>Thirdparty dependencies for Apache Ratis</description>
   <url>https://ratis.apache.org/</url>
   <inceptionYear>2017</inceptionYear>
+  <modules>
+    <module>thirdparty</module>
+    <module>hadoop</module>
+  </modules>
   <licenses>
     <license>
       <name>Apache License, Version 2.0</name>
@@ -35,9 +39,9 @@
     </license>
   </licenses>
   <scm>
-    
<connection>scm:git:git://git.apache.org/incubator-ratis-thirdparty.git</connection>
-    
<developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/incubator-ratis-thirdparty.git</developerConnection>
-    
<url>https://git-wip-us.apache.org/repos/asf?p=incubator-ratis-thirdparty.git</url>
+    
<connection>scm:git:git://github.com/apache/incubator-ratis-thirdparty.git</connection>
+    
<developerConnection>scm:git:https://github.com/apache/incubator-ratis-thirdparty.git</developerConnection>
+    <url>https://github.com/apache/incubator-ratis-thirdparty</url>
     <tag>HEAD</tag>
   </scm>
   <issueManagement>
@@ -83,60 +87,74 @@
 
     <io.opencensus.version>0.12.2</io.opencensus.version>
     
<ratis.thirdparty.shaded.prefix>org.apache.ratis.thirdparty</ratis.thirdparty.shaded.prefix>
+
+    <hadoop.version>3.1.1</hadoop.version>
   </properties>
 
-  <dependencies>
-    <dependency>
-      <groupId>com.google.protobuf</groupId>
-      <artifactId>protobuf-java</artifactId>
-      <version>${shaded.protobuf.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>io.grpc</groupId>
-      <artifactId>grpc-netty</artifactId>
-      <version>${shaded.grpc.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>io.grpc</groupId>
-      <artifactId>grpc-protobuf</artifactId>
-      <version>${shaded.grpc.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>io.grpc</groupId>
-      <artifactId>grpc-stub</artifactId>
-      <version>${shaded.grpc.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>io.grpc</groupId>
-      <artifactId>grpc-context</artifactId>
-      <version>${shaded.grpc.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>com.google.guava</groupId>
-      <artifactId>guava</artifactId>
-      <version>24.1-jre</version>
-    </dependency>
-    <dependency>
-      <groupId>io.netty</groupId>
-      <artifactId>netty-all</artifactId>
-      <version>${shaded.netty.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>com.google.code.gson</groupId>
-      <artifactId>gson</artifactId>
-      <version>2.8.2</version>
-    </dependency>
-    <dependency>
-      <groupId>io.opencensus</groupId>
-      <artifactId>opencensus-api</artifactId>
-      <version>${io.opencensus.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>io.opencensus</groupId>
-      <artifactId>opencensus-contrib-grpc-metrics</artifactId>
-      <version>${io.opencensus.version}</version>
-    </dependency>
-  </dependencies>
+  <dependencyManagement>
+    <dependencies>
+      <dependency>
+        <groupId>org.apache.ratis</groupId>
+        <artifactId>ratis-thirdparty</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.ratis</groupId>
+        <artifactId>ratis-thirdparty-hadoop</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>com.google.protobuf</groupId>
+        <artifactId>protobuf-java</artifactId>
+        <version>${shaded.protobuf.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>io.grpc</groupId>
+        <artifactId>grpc-netty</artifactId>
+        <version>${shaded.grpc.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>io.grpc</groupId>
+        <artifactId>grpc-protobuf</artifactId>
+        <version>${shaded.grpc.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>io.grpc</groupId>
+        <artifactId>grpc-stub</artifactId>
+        <version>${shaded.grpc.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>io.grpc</groupId>
+        <artifactId>grpc-context</artifactId>
+        <version>${shaded.grpc.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>com.google.guava</groupId>
+        <artifactId>guava</artifactId>
+        <version>24.1-jre</version>
+      </dependency>
+      <dependency>
+        <groupId>io.netty</groupId>
+        <artifactId>netty-all</artifactId>
+        <version>${shaded.netty.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>com.google.code.gson</groupId>
+        <artifactId>gson</artifactId>
+        <version>2.8.2</version>
+      </dependency>
+      <dependency>
+        <groupId>io.opencensus</groupId>
+        <artifactId>opencensus-api</artifactId>
+        <version>${io.opencensus.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>io.opencensus</groupId>
+        <artifactId>opencensus-contrib-grpc-metrics</artifactId>
+        <version>${io.opencensus.version}</version>
+      </dependency>
+    </dependencies>
+  </dependencyManagement>
 
   <build>
     <extensions>
@@ -325,118 +343,6 @@
         <artifactId>maven-checkstyle-plugin</artifactId>
         <version>${maven-checkstyle-plugin.version}</version>
       </plugin>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-shade-plugin</artifactId>
-        <executions>
-          <execution>
-            <phase>package</phase>
-            <goals>
-              <goal>shade</goal>
-            </goals>
-            <configuration>
-              <shadeSourcesContent>true</shadeSourcesContent>
-              <createSourcesJar>true</createSourcesJar>
-              <!-- Replace the original artifact which is no good on its own 
-->
-              <shadedArtifactAttached>false</shadedArtifactAttached>
-              
<dependencyReducedPomLocation>${project.build.directory}/dependency-reduced-pom.xml</dependencyReducedPomLocation>
-              <relocations>
-                <relocation>
-                  <pattern>com.google.api</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.api</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>com.google.cloud.audit</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.cloud.audit</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>com.google.common</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.common</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>com.google.logging.type</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.logging.type</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>com.google.longrunning</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.longrunning</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>com.google.protobuf</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.protobuf</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>com.google.rpc</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.rpc</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>com.google.thirdparty.publicsuffix</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.thirdparty.publicsuffix</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>com.google.type</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.type</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>io.grpc</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.io.grpc</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>io.netty</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.io.netty</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>io.opencensus</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.io.opencensus</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>com.google.gson</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.gson</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>afu</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.afu</shadedPattern>
-                </relocation>
-                <relocation>
-                  <pattern>org.checkerframework</pattern>
-                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.org.checkerframework</shadedPattern>
-                </relocation>
-              </relocations>
-              <artifactSet>
-                <includes>
-                  <!-- Package all listed dependencies -->
-                  <include>*:*</include>
-                </includes>
-                <excludes>
-                  <!-- Remove ransitive stuff we don't need coming from google 
deps -->
-                  <exclude>com.google.code.findbugs:jsr305</exclude>
-                  
<exclude>com.google.errorprone:error_prone_annotations</exclude>
-                  <exclude>com.google.j2objc:j2objc-annotations</exclude>
-                  <!-- Specifying netty-all gets all of these -->
-                  <exclude>io.netty:netty-buffer</exclude>
-                  <exclude>io.netty:netty-codec-http2</exclude>
-                  <exclude>io.netty:netty-codec-http</exclude>
-                  <exclude>io.netty:netty-codec-socks</exclude>
-                  <exclude>io.netty:netty-codec</exclude>
-                  <exclude>io.netty:netty-common</exclude>
-                  <exclude>io.netty:netty-handler-proxy</exclude>
-                  <exclude>io.netty:netty-handler</exclude>
-                  <exclude>io.netty:netty-resolver</exclude>
-                  <exclude>io.netty:netty-transport</exclude>
-                  <!-- Transitive stuff we don't need coming from google deps 
-->
-                  
<exclude>org.codehaus.mojo:animal-sniffer-annotations</exclude>
-                </excludes>
-              </artifactSet>
-              <!-- Pick up any LICENSE/NOTICE files from our dependencies -->
-              <transformers>
-                <!-- There are transformers for LICENSE and NOTICE, but none 
of our dependencies have proper upstream
-                     L&N files, so we can just manage it ourselves with less 
pain and more correctness. -->
-                <transformer 
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"
 />
-              </transformers>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
     </plugins>
   </build>
 
diff --git a/thirdparty/pom.xml b/thirdparty/pom.xml
new file mode 100644
index 0000000..ef0acb4
--- /dev/null
+++ b/thirdparty/pom.xml
@@ -0,0 +1,196 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed 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. See accompanying LICENSE file.
+-->
+<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";>
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.ratis</groupId>
+    <artifactId>ratis-thirdparty-parent</artifactId>
+    <version>0.1.0-SNAPSHOT</version>
+  </parent>
+  <artifactId>ratis-thirdparty</artifactId>
+  <groupId>org.apache.ratis</groupId>
+  <name>Apache Ratis Thirdparty</name>
+  <packaging>jar</packaging>
+  <description>Thirdparty dependencies for Apache Ratis</description>
+  <dependencies>
+    <dependency>
+      <groupId>com.google.protobuf</groupId>
+      <artifactId>protobuf-java</artifactId>
+      <version>${shaded.protobuf.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>io.grpc</groupId>
+      <artifactId>grpc-netty</artifactId>
+      <version>${shaded.grpc.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>io.grpc</groupId>
+      <artifactId>grpc-protobuf</artifactId>
+      <version>${shaded.grpc.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>io.grpc</groupId>
+      <artifactId>grpc-stub</artifactId>
+      <version>${shaded.grpc.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>io.grpc</groupId>
+      <artifactId>grpc-context</artifactId>
+      <version>${shaded.grpc.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>com.google.guava</groupId>
+      <artifactId>guava</artifactId>
+      <version>24.1-jre</version>
+    </dependency>
+    <dependency>
+      <groupId>io.netty</groupId>
+      <artifactId>netty-all</artifactId>
+      <version>${shaded.netty.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>com.google.code.gson</groupId>
+      <artifactId>gson</artifactId>
+      <version>2.8.2</version>
+    </dependency>
+    <dependency>
+      <groupId>io.opencensus</groupId>
+      <artifactId>opencensus-api</artifactId>
+      <version>${io.opencensus.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>io.opencensus</groupId>
+      <artifactId>opencensus-contrib-grpc-metrics</artifactId>
+      <version>${io.opencensus.version}</version>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-shade-plugin</artifactId>
+        <executions>
+          <execution>
+            <phase>package</phase>
+            <goals>
+              <goal>shade</goal>
+            </goals>
+            <configuration>
+              <shadeSourcesContent>true</shadeSourcesContent>
+              <createSourcesJar>true</createSourcesJar>
+              <!-- Replace the original artifact which is no good on its own 
-->
+              <shadedArtifactAttached>false</shadedArtifactAttached>
+              
<dependencyReducedPomLocation>${project.build.directory}/dependency-reduced-pom.xml</dependencyReducedPomLocation>
+              <relocations>
+                <relocation>
+                  <pattern>com.google.api</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.api</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>com.google.cloud.audit</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.cloud.audit</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>com.google.common</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.common</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>com.google.logging.type</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.logging.type</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>com.google.longrunning</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.longrunning</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>com.google.protobuf</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.protobuf</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>com.google.rpc</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.rpc</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>com.google.thirdparty.publicsuffix</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.thirdparty.publicsuffix</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>com.google.type</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.type</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>io.grpc</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.io.grpc</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>io.netty</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.io.netty</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>io.opencensus</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.io.opencensus</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>com.google.gson</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.com.google.gson</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>afu</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.afu</shadedPattern>
+                </relocation>
+                <relocation>
+                  <pattern>org.checkerframework</pattern>
+                  
<shadedPattern>${ratis.thirdparty.shaded.prefix}.org.checkerframework</shadedPattern>
+                </relocation>
+              </relocations>
+              <artifactSet>
+                <includes>
+                  <!-- Package all listed dependencies -->
+                  <include>*:*</include>
+                </includes>
+                <excludes>
+                  <!-- Remove ransitive stuff we don't need coming from google 
deps -->
+                  <exclude>com.google.code.findbugs:jsr305</exclude>
+                  
<exclude>com.google.errorprone:error_prone_annotations</exclude>
+                  <exclude>com.google.j2objc:j2objc-annotations</exclude>
+                  <!-- Specifying netty-all gets all of these -->
+                  <exclude>io.netty:netty-buffer</exclude>
+                  <exclude>io.netty:netty-codec-http2</exclude>
+                  <exclude>io.netty:netty-codec-http</exclude>
+                  <exclude>io.netty:netty-codec-socks</exclude>
+                  <exclude>io.netty:netty-codec</exclude>
+                  <exclude>io.netty:netty-common</exclude>
+                  <exclude>io.netty:netty-handler-proxy</exclude>
+                  <exclude>io.netty:netty-handler</exclude>
+                  <exclude>io.netty:netty-resolver</exclude>
+                  <exclude>io.netty:netty-transport</exclude>
+                  <!-- Transitive stuff we don't need coming from google deps 
-->
+                  
<exclude>org.codehaus.mojo:animal-sniffer-annotations</exclude>
+                </excludes>
+              </artifactSet>
+              <!-- Pick up any LICENSE/NOTICE files from our dependencies -->
+              <transformers>
+                <!-- There are transformers for LICENSE and NOTICE, but none 
of our dependencies have proper upstream
+                     L&N files, so we can just manage it ourselves with less 
pain and more correctness. -->
+                <transformer 
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"
 />
+              </transformers>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/src/main/appended-resources/META-INF/LICENSE 
b/thirdparty/src/main/appended-resources/META-INF/LICENSE
similarity index 100%
rename from src/main/appended-resources/META-INF/LICENSE
rename to thirdparty/src/main/appended-resources/META-INF/LICENSE
diff --git a/src/main/appended-resources/META-INF/NOTICE 
b/thirdparty/src/main/appended-resources/META-INF/NOTICE
similarity index 100%
rename from src/main/appended-resources/META-INF/NOTICE
rename to thirdparty/src/main/appended-resources/META-INF/NOTICE

Reply via email to