http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/a2c72902/ranger-yarn-plugin-shim/src/main/java/org/apache/ranger/authorization/yarn/authorizer/RangerYarnAuthorizer.java
----------------------------------------------------------------------
diff --git 
a/ranger-yarn-plugin-shim/src/main/java/org/apache/ranger/authorization/yarn/authorizer/RangerYarnAuthorizer.java
 
b/ranger-yarn-plugin-shim/src/main/java/org/apache/ranger/authorization/yarn/authorizer/RangerYarnAuthorizer.java
new file mode 100644
index 0000000..289d1c0
--- /dev/null
+++ 
b/ranger-yarn-plugin-shim/src/main/java/org/apache/ranger/authorization/yarn/authorizer/RangerYarnAuthorizer.java
@@ -0,0 +1,205 @@
+
+/*
+ * 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.
+ */
+
+package org.apache.ranger.authorization.yarn.authorizer;
+
+import java.util.Map;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.security.UserGroupInformation;
+import org.apache.hadoop.security.authorize.AccessControlList;
+import org.apache.hadoop.yarn.security.AccessType;
+import org.apache.hadoop.yarn.security.PrivilegedEntity;
+import org.apache.hadoop.yarn.security.YarnAuthorizationProvider;
+import org.apache.ranger.plugin.classloader.RangerPluginClassLoader;
+
+
+
+public class RangerYarnAuthorizer extends YarnAuthorizationProvider {
+       private static final Log LOG  = 
LogFactory.getLog(RangerYarnAuthorizer.class);
+
+       private static final String   RANGER_PLUGIN_TYPE                      = 
"yarn";
+       private static final String[] RANGER_PLUGIN_LIB_DIR                   = 
new String[] {"lib/ranger-yarn-plugin"};
+       private static final String   RANGER_YARN_AUTHORIZER_IMPL_CLASSNAME   = 
"org.apache.ranger.authorization.yarn.authorizer.RangerYarnAuthorizer";
+
+       private YarnAuthorizationProvider               
yarnAuthorizationProviderImpl = null;
+       private static RangerPluginClassLoader  rangerPluginClassLoader         
  = null;
+       
+       public RangerYarnAuthorizer() {
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("==> 
RangerYarnAuthorizer.RangerYarnAuthorizer()");
+               }
+
+               this.init();
+
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("<== 
RangerYarnAuthorizer.RangerYarnAuthorizer()");
+               }
+       }
+
+       private void init(){
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("==> RangerYarnAuthorizer.init()");
+               }
+
+               try {
+                       
+                       rangerPluginClassLoader = 
RangerPluginClassLoader.getInstance(RANGER_PLUGIN_TYPE, this.getClass());
+                       
+                       @SuppressWarnings("unchecked")
+                       Class<YarnAuthorizationProvider> cls = 
(Class<YarnAuthorizationProvider>) 
Class.forName(RANGER_YARN_AUTHORIZER_IMPL_CLASSNAME, true, 
rangerPluginClassLoader);
+
+                       activatePluginClassLoader();
+
+                       yarnAuthorizationProviderImpl = cls.newInstance();
+               } catch (Exception e) {
+                       // check what need to be done
+                       LOG.error("Error Enabling RangerYarnPluing", e);
+               } finally {
+                       deactivatePluginClassLoader();
+               }
+
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("<== RangerYarnAuthorizer.init()");
+               }
+       }
+
+       @Override
+       public void init(Configuration conf) {
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("==> RangerYarnAuthorizer.init()");
+               }
+
+               try {
+                       activatePluginClassLoader();
+
+                       yarnAuthorizationProviderImpl.init(conf);
+               } finally {
+                       deactivatePluginClassLoader();
+               }
+
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("<== RangerYarnAuthorizer.start()");
+               }
+       }
+
+       @Override
+       public boolean checkPermission(AccessType accessType, PrivilegedEntity 
target, UserGroupInformation user) {
+               
+               boolean ret = false;
+               
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("==> RangerYarnAuthorizer.checkPermission()");
+               }
+
+               try {
+                       activatePluginClassLoader();
+
+                       ret = 
yarnAuthorizationProviderImpl.checkPermission(accessType, target, user);
+               } finally {
+                       deactivatePluginClassLoader();
+               }
+
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("<== RangerYarnAuthorizer.checkPermission()");
+               }
+               
+               return ret;
+       }
+
+       @Override
+       public void setPermission(PrivilegedEntity target,      Map<AccessType, 
AccessControlList> acls, UserGroupInformation ugi) {
+               
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("==> RangerYarnAuthorizer.setPermission()");
+               }
+
+               try {
+                       activatePluginClassLoader();
+
+                       yarnAuthorizationProviderImpl.setPermission(target, 
acls, ugi);
+               } finally {
+                       deactivatePluginClassLoader();
+               }
+
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("<== RangerYarnAuthorizer.setPermission()");
+               }
+       }
+
+       @Override
+       public void setAdmins(AccessControlList acls, UserGroupInformation ugi) 
{
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("==> RangerYarnAuthorizer.setAdmins()");
+               }
+
+               try {
+                       activatePluginClassLoader();
+
+                       yarnAuthorizationProviderImpl.setAdmins(acls, ugi);
+               } finally {
+                       deactivatePluginClassLoader();
+               }
+
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("<== RangerYarnAuthorizer.setAdmins()");
+               }
+       }
+
+       @Override
+       public boolean isAdmin(UserGroupInformation ugi) {
+               
+               boolean ret = false;
+               
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("==> RangerYarnAuthorizer.setAdmins()");
+               }
+
+               try {
+                       activatePluginClassLoader();
+
+                       ret = yarnAuthorizationProviderImpl.isAdmin(ugi);
+               } finally {
+                       deactivatePluginClassLoader();
+               }
+
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("<== RangerYarnAuthorizer.setAdmins()");
+               }
+               
+               return ret;
+       }
+       
+       private void activatePluginClassLoader() {
+               if(rangerPluginClassLoader != null) {
+                       rangerPluginClassLoader.activate();
+               }
+       }
+
+       private void deactivatePluginClassLoader() {
+               if(rangerPluginClassLoader != null) {
+                       rangerPluginClassLoader.deactivate();
+               }
+       }
+
+       
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/a2c72902/src/main/assembly/hbase-agent.xml
----------------------------------------------------------------------
diff --git a/src/main/assembly/hbase-agent.xml 
b/src/main/assembly/hbase-agent.xml
index 0f22066..0ffc65c 100644
--- a/src/main/assembly/hbase-agent.xml
+++ b/src/main/assembly/hbase-agent.xml
@@ -28,21 +28,34 @@
      <binaries>
         <includeDependencies>false</includeDependencies>
         <unpack>false</unpack>
+           <directoryMode>755</directoryMode>
+           <fileMode>644</fileMode>
+           <outputDirectory>/lib</outputDirectory>
+     </binaries>
+     <includes>
+         
<include>security_plugins.ranger-hbase-plugin-shim:ranger-hbase-plugin-shim</include>
+         
<include>security_plugins.ranger-plugin-classloader:ranger-plugin-classloader</include>
+     </includes>
+    </moduleSet>    
+    <moduleSet>
+     <binaries>
+        <includeDependencies>false</includeDependencies>
+        <unpack>false</unpack>
        <directoryMode>755</directoryMode>
        <fileMode>644</fileMode>
         <dependencySets>
             <dependencySet>
-                <outputDirectory>/lib</outputDirectory>
+                
<outputDirectory>/lib/ranger-hbase-plugin-impl</outputDirectory>
                 <includes>
                     <include>com.google.code.gson:gson*</include>
                     <include>org.eclipse.persistence:eclipselink</include>
-                   
<include>org.apache.httpcomponents:httpmime:jar:${httpcomponent.httpmime.version}</include>
-                   <include>org.noggit:noggit:jar:${noggit.version}</include>
+                               
<include>org.apache.httpcomponents:httpmime:jar:${httpcomponent.httpmime.version}</include>
+                                       
<include>org.noggit:noggit:jar:${noggit.version}</include>
                 </includes>
                 <unpack>false</unpack>
             </dependencySet>
         </dependencySets>
-        <outputDirectory>/lib</outputDirectory>
+        <outputDirectory>/lib/ranger-hbase-plugin-impl</outputDirectory>
      </binaries>
      <includes>
        <include>org.apache.ranger:ranger_solrj</include>
@@ -55,7 +68,7 @@
     </moduleSet>
     <moduleSet>
      <binaries>
-        <includeDependencies>false</includeDependencies>
+        <includeDependencies>true</includeDependencies>
         <dependencySets>
                 <dependencySet>
                     <outputDirectory>/install/lib</outputDirectory>
@@ -67,7 +80,7 @@
                         
<include>commons-io:commons-io:jar:${commons.io.version}</include>
                         <include>commons-lang:commons-lang</include>
                         
<include>commons-logging:commons-logging:jar:${commons.logging.version}</include>
-                        
<include>com.google.guava:guava:jar:${guava.version}</include>
+                        
<include>com.google.guava:guava:jar:${google.guava.version}</include>
                         <include>org.hamcrest:hamcrest-all</include>
                         <include>junit:junit</include>
                         
<include>org.slf4j:slf4j-api:jar:${slf4j-api.version}</include>

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/a2c72902/src/main/assembly/hdfs-agent.xml
----------------------------------------------------------------------
diff --git a/src/main/assembly/hdfs-agent.xml b/src/main/assembly/hdfs-agent.xml
index 2c18001..deec461 100644
--- a/src/main/assembly/hdfs-agent.xml
+++ b/src/main/assembly/hdfs-agent.xml
@@ -24,39 +24,24 @@
   <baseDirectory>${project.name}-${project.version}-hdfs-plugin</baseDirectory>
   <includeBaseDirectory>true</includeBaseDirectory>
   <moduleSets>
+    
     <moduleSet>
      <binaries>
         <includeDependencies>false</includeDependencies>
         <unpack>false</unpack>
            <directoryMode>755</directoryMode>
            <fileMode>644</fileMode>
-               <dependencySets>
-                       <dependencySet>
-                       <outputDirectory>/lib</outputDirectory>
-                               <includes>
-                                       
<include>com.google.code.gson:gson*</include>
-                                       
<include>org.eclipse.persistence:javax.persistence</include>
-                                       
<include>org.eclipse.persistence:eclipselink</include>
-                                       
<include>org.apache.httpcomponents:httpmime:jar:${httpcomponent.httpmime.version}</include>
-                                       
<include>org.noggit:noggit:jar:${noggit.version}</include>
-                               </includes>
-                               <unpack>false</unpack>
-                       </dependencySet>
-               </dependencySets>
-        <outputDirectory>/lib</outputDirectory>
+           <outputDirectory>/lib</outputDirectory>
      </binaries>
      <includes>
-       <include>org.apache.ranger:ranger_solrj</include>
-       
<include>security_plugins.ranger-plugins-audit:ranger-plugins-audit</include>
-       
<include>security_plugins.ranger-plugins-cred:ranger-plugins-cred</include>
-       
<include>security_plugins.ranger-plugins-impl:ranger-plugins-impl</include>
-       
<include>security_plugins.ranger-plugins-common:ranger-plugins-common</include>
-       
<include>security_plugins.ranger-hdfs-plugin:ranger-hdfs-plugin</include>
-     </includes>
+         
<include>security_plugins.ranger-hdfs-plugin-shim:ranger-hdfs-plugin-shim</include>
+         
<include>security_plugins.ranger-plugin-classloader:ranger-plugin-classloader</include>
+      </includes>
     </moduleSet>
+    
     <moduleSet>
      <binaries>
-        <includeDependencies>false</includeDependencies>
+        <includeDependencies>true</includeDependencies>
                <dependencySets>
                 <dependencySet>
                     <outputDirectory>/install/lib</outputDirectory>
@@ -68,9 +53,9 @@
                         
<include>commons-io:commons-io:jar:${commons.io.version}</include>
                         <include>commons-lang:commons-lang</include>
                         
<include>commons-logging:commons-logging:jar:${commons.logging.version}</include>
-                        
<include>com.google.guava:guava:jar:${guava.version}</include>
+                        
<include>com.google.guava:guava:jar:${google.guava.version}</include>
                         <include>org.hamcrest:hamcrest-all</include>
-                        <include>junit:junit</include>
+                        <include>junit:junit:${junit.version}</include>
                         
<include>org.slf4j:slf4j-api:jar:${slf4j-api.version}</include>
                         
<include>org.apache.hadoop:hadoop-common:jar:${hadoop-common.version}</include>
                         
<include>org.apache.hadoop:hadoop-auth:jar:${hadoop-common.version}</include>
@@ -85,6 +70,38 @@
         <include>org.apache.ranger:credentialbuilder</include>
      </includes>
     </moduleSet>
+    
+    <moduleSet>
+     <binaries>
+        <includeDependencies>true</includeDependencies>
+        <unpack>false</unpack>
+           <directoryMode>755</directoryMode>
+           <fileMode>644</fileMode>
+               <dependencySets>
+                       <dependencySet>
+                       
<outputDirectory>/lib/ranger-hdfs-plugin-impl</outputDirectory>
+                               <includes>
+                                       
<include>com.google.code.gson:gson*</include>
+                                       
<include>org.eclipse.persistence:javax.persistence</include>
+                                       
<include>org.eclipse.persistence:eclipselink</include>
+                                       
<include>org.apache.httpcomponents:httpmime:jar:${httpcomponent.httpmime.version}</include>
+                                       
<include>org.noggit:noggit:jar:${noggit.version}</include>
+                               </includes>
+                               <unpack>false</unpack>
+                       </dependencySet>
+               </dependencySets>
+        <outputDirectory>/lib/ranger-hdfs-plugin-impl</outputDirectory>
+     </binaries>
+    <includes>
+       <include>org.apache.ranger:ranger_solrj</include>
+       
<include>security_plugins.ranger-plugins-audit:ranger-plugins-audit</include>
+       
<include>security_plugins.ranger-plugins-cred:ranger-plugins-cred</include>
+       
<include>security_plugins.ranger-plugins-impl:ranger-plugins-impl</include>
+       
<include>security_plugins.ranger-plugins-common:ranger-plugins-common</include>
+       
<include>security_plugins.ranger-hdfs-plugin:ranger-hdfs-plugin</include>
+    </includes>
+    </moduleSet>
+    
   </moduleSets>        
   <fileSets>
     <!-- conf.templates for enable -->

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/a2c72902/src/main/assembly/hive-agent.xml
----------------------------------------------------------------------
diff --git a/src/main/assembly/hive-agent.xml b/src/main/assembly/hive-agent.xml
index d21c6b8..9122547 100644
--- a/src/main/assembly/hive-agent.xml
+++ b/src/main/assembly/hive-agent.xml
@@ -24,6 +24,19 @@
   <baseDirectory>${project.name}-${project.version}-hive-plugin</baseDirectory>
   <includeBaseDirectory>true</includeBaseDirectory>
   <moduleSets>
+     <moduleSet>
+     <binaries>
+        <includeDependencies>false</includeDependencies>
+        <unpack>false</unpack>
+           <directoryMode>755</directoryMode>
+           <fileMode>644</fileMode>
+           <outputDirectory>/lib</outputDirectory>
+     </binaries>
+     <includes>
+         
<include>security_plugins.ranger-hive-plugin-shim:ranger-hive-plugin-shim</include>
+         
<include>security_plugins.ranger-plugin-classloader:ranger-plugin-classloader</include>
+     </includes>
+    </moduleSet>
     <moduleSet>
      <binaries>
         <includeDependencies>false</includeDependencies>
@@ -32,18 +45,18 @@
            <fileMode>644</fileMode>
         <dependencySets>
             <dependencySet>
-                <outputDirectory>/lib</outputDirectory>
+                <outputDirectory>/lib/ranger-hive-plugin-impl</outputDirectory>
                 <includes>
                     <include>com.google.code.gson:gson*</include>
                                        
<include>org.eclipse.persistence:eclipselink</include>
                     
<include>org.eclipse.persistence:javax.persistence</include>
-                   
<include>org.apache.httpcomponents:httpmime:jar:${httpcomponent.httpmime.version}</include>
-                   <include>org.noggit:noggit:jar:${noggit.version}</include>
+                               
<include>org.apache.httpcomponents:httpmime:jar:${httpcomponent.httpmime.version}</include>
+                                       
<include>org.noggit:noggit:jar:${noggit.version}</include>
                 </includes>
                 <unpack>false</unpack>
             </dependencySet>
         </dependencySets>
-        <outputDirectory>/lib</outputDirectory>
+        <outputDirectory>/lib/ranger-hive-plugin-impl</outputDirectory>
      </binaries>
      <includes>
        <include>org.apache.ranger:ranger_solrj</include>
@@ -56,7 +69,7 @@
     </moduleSet>
     <moduleSet>
      <binaries>
-        <includeDependencies>false</includeDependencies>
+        <includeDependencies>true</includeDependencies>
        <dependencySets>
                 <dependencySet>
                     <outputDirectory>/install/lib</outputDirectory>
@@ -68,7 +81,7 @@
                         
<include>commons-io:commons-io:jar:${commons.io.version}</include>
                         <include>commons-lang:commons-lang</include>
                         
<include>commons-logging:commons-logging:jar:${commons.logging.version}</include>
-                        
<include>com.google.guava:guava:jar:${guava.version}</include>
+                        
<include>com.google.guava:guava:jar:${google.guava.version}</include>
                         <include>org.hamcrest:hamcrest-all</include>
                         <include>junit:junit</include>
                         
<include>org.slf4j:slf4j-api:jar:${slf4j-api.version}</include>

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/a2c72902/src/main/assembly/knox-agent.xml
----------------------------------------------------------------------
diff --git a/src/main/assembly/knox-agent.xml b/src/main/assembly/knox-agent.xml
index 4806343..dc73f69 100644
--- a/src/main/assembly/knox-agent.xml
+++ b/src/main/assembly/knox-agent.xml
@@ -24,6 +24,21 @@
   <baseDirectory>${project.name}-${project.version}-knox-plugin</baseDirectory>
   <includeBaseDirectory>true</includeBaseDirectory>
   <moduleSets>
+  
+    <moduleSet>
+     <binaries>
+        <includeDependencies>false</includeDependencies>
+        <unpack>false</unpack>
+           <directoryMode>755</directoryMode>
+           <fileMode>644</fileMode>
+           <outputDirectory>/lib</outputDirectory>
+     </binaries>
+     <includes>
+         
<include>security_plugins.ranger-knox-plugin-shim:ranger-knox-plugin-shim</include>
+         
<include>security_plugins.ranger-plugin-classloader:ranger-plugin-classloader</include>
+      </includes>
+    </moduleSet>
+    
     <moduleSet>
      <binaries>
         <includeDependencies>false</includeDependencies>
@@ -32,10 +47,10 @@
            <fileMode>644</fileMode>
         <dependencySets>
             <dependencySet>
-                <outputDirectory>/lib</outputDirectory>
+                <outputDirectory>/lib/ranger-knox-plugin-impl</outputDirectory>
                 <includes>
                     
<include>commons-configuration:commons-configuration</include>
-                   <include>com.google.code.gson:gson*</include>
+                               <include>com.google.code.gson:gson*</include>
                            
<include>org.apache.httpcomponents:httpmime:jar:${httpcomponent.httpmime.version}</include>
                                
<include>org.noggit:noggit:jar:${noggit.version}</include>
                                
<include>com.google.protobuf:protobuf-java:jar:${protobuf-java.version}</include>
@@ -45,7 +60,7 @@
                 <unpack>false</unpack>
             </dependencySet>
         </dependencySets>
-        <outputDirectory>/lib</outputDirectory>
+        <outputDirectory>/lib/ranger-knox-plugin-impl</outputDirectory>
      </binaries>
      <includes>
                <include>org.apache.ranger:ranger_solrj</include>
@@ -72,7 +87,7 @@
                         
<include>commons-io:commons-io:jar:${commons.io.version}</include>
                         <include>commons-lang:commons-lang</include>
                         
<include>commons-logging:commons-logging:jar:${commons.logging.version}</include>
-                        
<include>com.google.guava:guava:jar:${guava.version}</include>
+                        
<include>com.google.guava:guava:jar:${google.guava.version}</include>
                         <include>org.hamcrest:hamcrest-all</include>
                         <include>junit:junit</include>
                                                
<include>org.slf4j:slf4j-api:jar:${slf4j-api.version}</include>

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/a2c72902/src/main/assembly/plugin-kafka.xml
----------------------------------------------------------------------
diff --git a/src/main/assembly/plugin-kafka.xml 
b/src/main/assembly/plugin-kafka.xml
index 3727bde..31498e5 100644
--- a/src/main/assembly/plugin-kafka.xml
+++ b/src/main/assembly/plugin-kafka.xml
@@ -20,14 +20,28 @@
        <includeBaseDirectory>true</includeBaseDirectory>
        <moduleSets>
                <moduleSet>
+            <binaries>
+               <includeDependencies>false</includeDependencies>
+               <unpack>false</unpack>
+                   <directoryMode>755</directoryMode>
+                   <fileMode>644</fileMode>
+                   <outputDirectory>/lib</outputDirectory>
+            </binaries>
+            <includes>
+                 
<include>security_plugins.ranger-kafka-plugin-shim:ranger-kafka-plugin-shim</include>
+                 
<include>security_plugins.ranger-plugin-classloader:ranger-plugin-classloader</include>
+             </includes>
+           </moduleSet>
+        
+               <moduleSet>
                        <binaries>
-                               <includeDependencies>false</includeDependencies>
+                               <includeDependencies>true</includeDependencies>
                                <unpack>false</unpack>
                                <directoryMode>755</directoryMode>
                                <fileMode>644</fileMode>
                                <dependencySets>
                                        <dependencySet>
-                                               
<outputDirectory>/lib</outputDirectory>
+                                               
<outputDirectory>lib/ranger-kafka-plugin-impl</outputDirectory>
                                                <unpack>false</unpack>
                                                <includes>
                                                        
<include>commons-configuration:commons-configuration:jar:${commons.configuration.version}
@@ -38,6 +52,7 @@
                                                        </include>
                                                        
<include>org.apache.hadoop:hadoop-auth:jar:${hadoop-common.version}
                                                        </include>
+                                                       
<include>org.apache.hadoop:hadoop-hdfs:jar:${hadoop.version}</include>
                                                        
<include>com.google.code.gson:gson</include>
                                                        
<include>org.eclipse.persistence:eclipselink</include>
                                                        
<include>org.eclipse.persistence:javax.persistence</include>
@@ -47,7 +62,7 @@
                                                        </include>
                                                        
<include>commons-lang:commons-lang</include>
                                                        
<include>commons-io:commons-io</include>
-                                                       
<include>com.google.guava:guava:jar:${guava.version}</include>
+                                                       
<include>com.google.guava:guava:jar:${google.guava.version}</include>
                                                        
<include>org.apache.httpcomponents:httpclient:jar:${httpcomponent.httpclient.version}
                                                        </include>
                                                        
<include>org.apache.httpcomponents:httpcore:jar:${httpcomponent.httpcore.version}
@@ -59,7 +74,6 @@
                                                        
<include>org.codehaus.jackson:jackson-jaxrs</include>
                                                        
<include>org.codehaus.jackson:jackson-mapper-asl</include>
                                                        
<include>org.codehaus.jackson:jackson-xc</include>
-
                                                </includes>
                                        </dependencySet>
                                        <dependencySet>
@@ -77,7 +91,7 @@
                                                        
<include>commons-lang:commons-lang:jar:${commons.lang.version}
                                                        </include>
                                                        
<include>commons-logging:commons-logging</include>
-                                                       
<include>com.google.guava:guava:jar:${guava.version}</include>
+                                                       
<include>com.google.guava:guava:jar:${google.guava.version}</include>
                                                        
<include>org.hamcrest:hamcrest-all</include>
                                                        
<include>junit:junit</include>
                                                        
<include>org.slf4j:slf4j-api:jar:${slf4j-api.version}</include>
@@ -91,20 +105,14 @@
                                                </includes>
                                        </dependencySet>
                                </dependencySets>
-                               <outputDirectory>/lib</outputDirectory>
+                               
<outputDirectory>lib/ranger-kafka-plugin-impl</outputDirectory>
                        </binaries>
                        <includes>
+                               
<include>security_plugins.ranger-kafka-plugin:ranger-kafka-plugin</include>
                                
<include>org.apache.ranger:ranger_solrj</include>
-                               
<include>security_plugins.ranger-plugins-audit:ranger-plugins-audit
-                               </include>
-                               
<include>security_plugins.ranger-plugins-cred:ranger-plugins-cred
-                               </include>
-                               
<include>security_plugins.ranger-plugins-impl:ranger-plugins-impl
-                               </include>
-                               
<include>security_plugins.ranger-plugins-common:ranger-plugins-common
-                               </include>
-                               
<include>security_plugins.ranger-kafka-plugin:ranger-kafka-plugin
-                               </include>
+                               
<include>security_plugins.ranger-plugins-audit:ranger-plugins-audit</include>
+                               
<include>security_plugins.ranger-plugins-cred:ranger-plugins-cred</include>
+                               
<include>security_plugins.ranger-plugins-common:ranger-plugins-common</include>
                        </includes>
                </moduleSet>
                <moduleSet>

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/a2c72902/src/main/assembly/plugin-yarn.xml
----------------------------------------------------------------------
diff --git a/src/main/assembly/plugin-yarn.xml 
b/src/main/assembly/plugin-yarn.xml
index a791bba..6f8e33b 100644
--- a/src/main/assembly/plugin-yarn.xml
+++ b/src/main/assembly/plugin-yarn.xml
@@ -24,6 +24,20 @@
   <baseDirectory>${project.name}-${project.version}-yarn-plugin</baseDirectory>
   <includeBaseDirectory>true</includeBaseDirectory>
   <moduleSets>
+     <moduleSet>
+     <binaries>
+        <includeDependencies>false</includeDependencies>
+        <unpack>false</unpack>
+           <directoryMode>755</directoryMode>
+           <fileMode>644</fileMode>
+           <outputDirectory>/lib</outputDirectory>
+     </binaries>
+     <includes>
+         
<include>security_plugins.ranger-yarn-plugin-shim:ranger-yarn-plugin-shim</include>
+         
<include>security_plugins.ranger-plugin-classloader:ranger-plugin-classloader</include>
+      </includes>
+    </moduleSet>
+    
     <moduleSet>
      <binaries>
         <includeDependencies>false</includeDependencies>
@@ -32,7 +46,7 @@
            <fileMode>644</fileMode>
         <dependencySets>
             <dependencySet>
-                <outputDirectory>/lib</outputDirectory>
+                <outputDirectory>/lib/ranger-yarn-plugin-impl</outputDirectory>
                 <unpack>false</unpack>
                 <includes>
                     
<include>org.apache.hadoop:hadoop-common:jar:${hadoop-common.version}</include>
@@ -54,8 +68,8 @@
                         
<include>commons-configuration:commons-configuration:jar:${commons.configuration.version}</include>
                         
<include>commons-io:commons-io:jar:${commons.io.version}</include>
                         
<include>commons-lang:commons-lang:jar:${commons.lang.version}</include>
-                        <include>commons-logging:commons-logging</include>
-                        
<include>com.google.guava:guava:jar:${guava.version}</include>
+                        
<include>commons-logging:commons-logging:jar:${commons.logging.version}</include>
+                        
<include>com.google.guava:guava:jar:${google.guava.version}</include>
                         <include>org.hamcrest:hamcrest-all</include>
                         <include>junit:junit</include>
                         
<include>org.slf4j:slf4j-api:jar:${slf4j-api.version}</include>
@@ -66,7 +80,7 @@
                     </includes>
             </dependencySet>
         </dependencySets>
-        <outputDirectory>/lib</outputDirectory>
+        <outputDirectory>/lib/ranger-yarn-plugin-impl</outputDirectory>
      </binaries>
      <includes>
                <include>org.apache.ranger:ranger_solrj</include>
@@ -79,7 +93,7 @@
     </moduleSet>
     <moduleSet>
      <binaries>
-        <includeDependencies>false</includeDependencies>
+        <includeDependencies>true</includeDependencies>
         <outputDirectory>/install/lib</outputDirectory>
         <unpack>false</unpack>
      </binaries>

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/a2c72902/src/main/assembly/storm-agent.xml
----------------------------------------------------------------------
diff --git a/src/main/assembly/storm-agent.xml 
b/src/main/assembly/storm-agent.xml
index 12ec052..a5f4b2c 100644
--- a/src/main/assembly/storm-agent.xml
+++ b/src/main/assembly/storm-agent.xml
@@ -30,9 +30,22 @@
         <unpack>false</unpack>
            <directoryMode>755</directoryMode>
            <fileMode>644</fileMode>
+           <outputDirectory>/lib</outputDirectory>
+     </binaries>
+     <includes>
+         
<include>security_plugins.ranger-storm-plugin-shim:ranger-storm-plugin-shim</include>
+         
<include>security_plugins.ranger-plugin-classloader:ranger-plugin-classloader</include>
+      </includes>
+    </moduleSet>
+    <moduleSet>
+     <binaries>
+        <includeDependencies>true</includeDependencies>
+        <unpack>false</unpack>
+           <directoryMode>755</directoryMode>
+           <fileMode>644</fileMode>
         <dependencySets>
             <dependencySet>
-                <outputDirectory>/lib</outputDirectory>
+                <outputDirectory>lib/ranger-storm-plugin-impl</outputDirectory>
                 <unpack>false</unpack>
                 <includes>
                     
<include>commons-configuration:commons-configuration:jar:${commons.configuration.version}</include>
@@ -44,7 +57,7 @@
                     <include>commons-collections:commons-collections</include>
                     <include>com.sun.jersey:jersey-bundle</include>
                     
<include>commons-logging:commons-logging:jar:${commons.logging.version}</include>
-                    
<include>com.google.guava:guava:jar:${guava.version}</include>
+                    
<include>com.google.guava:guava:jar:${google.guava.version}</include>
                     
<include>org.codehaus.jackson:jackson-jaxrs:jar:${codehaus.jackson.version}</include>
                     
<include>org.codehaus.jackson:jackson-core-asl:jar:${codehaus.jackson.storm.version}</include>
                     
<include>org.codehaus.jackson:jackson-mapper-asl:jar:${codehaus.jackson.storm.version}</include>
@@ -55,7 +68,7 @@
                     
<include>com.google.protobuf:protobuf-java:jar:${protobuf-java.version}</include>
                     
<include>org.apache.hadoop:hadoop-hdfs:jar:${hadoop.version}</include>
                     
<include>org.apache.htrace:htrace-core:jar:${htrace-core.version}</include>
-                    
<include>commons-cli:commons-cli:jar:${commons.cli.version}</include>
+                    
<include>commons-cli:commons-cli:jar:${commons.cli.version}</include> 
                     
<include>commons-lang:commons-lang:jar:${commons.lang.version}</include>
                     
<include>commons-io:commons-io:jar:${commons.io.version}</include>
                 </includes>
@@ -72,7 +85,7 @@
                         
<include>commons-io:commons-io:jar:${commons.io.version}</include>
                         
<include>commons-lang:commons-lang:jar:${commons.lang.version}</include>
                         <include>commons-logging:commons-logging</include>
-                        
<include>com.google.guava:guava:jar:${guava.version}</include>
+                        
<include>com.google.guava:guava:jar:${google.guava.version}</include>
                         <include>org.hamcrest:hamcrest-all</include>
                         <include>junit:junit</include>
                         
<include>org.slf4j:slf4j-api:jar:${slf4j-api.version}</include>
@@ -83,7 +96,7 @@
                     </includes>
             </dependencySet>
         </dependencySets>
-        <outputDirectory>/lib</outputDirectory>
+        <outputDirectory>lib/ranger-storm-plugin-impl</outputDirectory>
      </binaries>
      <includes>
                <include>org.apache.ranger:ranger_solrj</include>

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/a2c72902/storm-agent/src/main/java/com/xasecure/authorization/storm/authorizer/XaSecureStormAuthorizer.java
----------------------------------------------------------------------
diff --git 
a/storm-agent/src/main/java/com/xasecure/authorization/storm/authorizer/XaSecureStormAuthorizer.java
 
b/storm-agent/src/main/java/com/xasecure/authorization/storm/authorizer/XaSecureStormAuthorizer.java
deleted file mode 100644
index 723dd79..0000000
--- 
a/storm-agent/src/main/java/com/xasecure/authorization/storm/authorizer/XaSecureStormAuthorizer.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * 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.
- */
-
-package com.xasecure.authorization.storm.authorizer;
-
-import org.apache.ranger.authorization.storm.authorizer.RangerStormAuthorizer;
-
-/**
- * This class exists only to provide for seamless upgrade/downgrade 
capabilities.  Class name is in storm conf which must allow for seamles upgrade 
and downgrade.
- * Thus when class names were changed XaSecure* -> Ranger* this shell class 
serves to allow for seamles upgrade as well as downgrade.
- *
- * This class is final because if one needs to customize coprocessor it is 
expected that RangerStormAuthorizer would be modified/extended as that is
- * the "real" authorizer!  This class, hence, should NEVER be more than an 
EMPTY shell!
- */
-final public class XaSecureStormAuthorizer extends RangerStormAuthorizer {
-}

Reply via email to