[jboss-cvs] JBossAS SVN: r95957 - in projects/demos/microcontainer/trunk/classloader/src/main: java/org/jboss/demos and 7 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Nov 3 10:19:34 EST 2009


Author: alesj
Date: 2009-11-03 10:19:33 -0500 (Tue, 03 Nov 2009)
New Revision: 95957

Added:
   projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/bootstrap/
   projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/bootstrap/cl/
   projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/bootstrap/cl/ClassLoaderMain.java
   projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/deployers/
   projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/deployers/CrypterClassLoaderDescribeDeployer.java
   projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/deployers/CrypterClassLoaderPolicyModule.java
   projects/demos/microcontainer/trunk/classloader/src/main/resources/
   projects/demos/microcontainer/trunk/classloader/src/main/resources/META-INF/
   projects/demos/microcontainer/trunk/classloader/src/main/resources/META-INF/classloader-beans.xml
Modified:
   projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/KeyPairProvider.java
   projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/KeyProvider.java
   projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/SingleKeyProvider.java
   projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/Tools.java
Log:
Add crypt deployers.

Added: projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/bootstrap/cl/ClassLoaderMain.java
===================================================================
--- projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/bootstrap/cl/ClassLoaderMain.java	                        (rev 0)
+++ projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/bootstrap/cl/ClassLoaderMain.java	2009-11-03 15:19:33 UTC (rev 95957)
@@ -0,0 +1,45 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.demos.bootstrap.cl;
+
+import org.jboss.demos.bootstrap.Main;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
+ */
+public class ClassLoaderMain
+{
+   public static void main(String[] args)
+   {
+      Main.main(args);
+
+      try
+      {
+         Main.deploy("${demos.home}/classloader/src/main/resources/META-INF/classloader-beans.xml");
+         Main.validate();
+      }
+      catch (Throwable t)
+      {
+         t.printStackTrace();
+      }
+   }
+}

Modified: projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/KeyPairProvider.java
===================================================================
--- projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/KeyPairProvider.java	2009-11-03 15:09:13 UTC (rev 95956)
+++ projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/KeyPairProvider.java	2009-11-03 15:19:33 UTC (rev 95957)
@@ -43,12 +43,12 @@
       return kpg.generateKeyPair();
    }
 
-   public Key getEncriptionKey() throws Exception
+   public Key getEncryptionKey() throws Exception
    {
       return getKey().getPrivate();
    }
 
-   public Key getDecriptionKey() throws Exception
+   public Key getDecryptionKey() throws Exception
    {
       return getKey().getPublic();
    }

Modified: projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/KeyProvider.java
===================================================================
--- projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/KeyProvider.java	2009-11-03 15:09:13 UTC (rev 95956)
+++ projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/KeyProvider.java	2009-11-03 15:19:33 UTC (rev 95957)
@@ -28,9 +28,9 @@
  */
 public interface KeyProvider
 {
-   Key getEncriptionKey() throws Exception;
+   Key getEncryptionKey() throws Exception;
 
-   Key getDecriptionKey() throws Exception;
+   Key getDecryptionKey() throws Exception;
 
    void writeKeys() throws Exception;
 }
\ No newline at end of file

Modified: projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/SingleKeyProvider.java
===================================================================
--- projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/SingleKeyProvider.java	2009-11-03 15:09:13 UTC (rev 95956)
+++ projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/SingleKeyProvider.java	2009-11-03 15:19:33 UTC (rev 95957)
@@ -49,12 +49,12 @@
       return key;
    }
 
-   public Key getEncriptionKey() throws Exception
+   public Key getEncryptionKey() throws Exception
    {
       return getKey();
    }
 
-   public Key getDecriptionKey() throws Exception
+   public Key getDecryptionKey() throws Exception
    {
       return getKey();
    }

Modified: projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/Tools.java
===================================================================
--- projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/Tools.java	2009-11-03 15:09:13 UTC (rev 95956)
+++ projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/crypt/Tools.java	2009-11-03 15:19:33 UTC (rev 95957)
@@ -58,7 +58,7 @@
          if (keystore.exists() == false)
             keyProvider.writeKeys();
 
-         Key key = keyProvider.getEncriptionKey();
+         Key key = keyProvider.getEncryptionKey();
          Tools tools = new Tools(archive, key);
          tools.crypt();
       }

Added: projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/deployers/CrypterClassLoaderDescribeDeployer.java
===================================================================
--- projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/deployers/CrypterClassLoaderDescribeDeployer.java	                        (rev 0)
+++ projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/deployers/CrypterClassLoaderDescribeDeployer.java	2009-11-03 15:19:33 UTC (rev 95957)
@@ -0,0 +1,47 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.demos.classloader.deployers;
+
+import org.jboss.classloading.spi.dependency.policy.ClassLoaderPolicyModule;
+import org.jboss.classloading.spi.metadata.ClassLoadingMetaData;
+import org.jboss.demos.classloader.crypt.Crypter;
+import org.jboss.deployers.plugins.classloading.AbstractClassLoaderDescribeDeployer;
+import org.jboss.deployers.spi.DeploymentException;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
+ */
+public class CrypterClassLoaderDescribeDeployer extends AbstractClassLoaderDescribeDeployer
+{
+   private Crypter crypter;
+
+   public CrypterClassLoaderDescribeDeployer(Crypter crypter)
+   {
+      this.crypter = crypter;
+   }
+
+   protected ClassLoaderPolicyModule createModule(DeploymentUnit unit, ClassLoadingMetaData metaData) throws DeploymentException
+   {
+      return new CrypterClassLoaderPolicyModule(unit, crypter);
+   }
+}

Added: projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/deployers/CrypterClassLoaderPolicyModule.java
===================================================================
--- projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/deployers/CrypterClassLoaderPolicyModule.java	                        (rev 0)
+++ projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/classloader/deployers/CrypterClassLoaderPolicyModule.java	2009-11-03 15:19:33 UTC (rev 95957)
@@ -0,0 +1,50 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.demos.classloader.deployers;
+
+import org.jboss.classloading.spi.vfs.policy.VFSClassLoaderPolicy;
+import org.jboss.demos.classloader.crypt.Crypter;
+import org.jboss.demos.classloader.crypt.CrypterTranslator;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.deployers.vfs.plugins.classloader.VFSDeploymentClassLoaderPolicyModule;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
+ */
+public class CrypterClassLoaderPolicyModule extends VFSDeploymentClassLoaderPolicyModule
+{
+   private Crypter crypter;
+
+   public CrypterClassLoaderPolicyModule(DeploymentUnit unit, Crypter crypter)
+   {
+      super(unit);
+      this.crypter = crypter;
+   }
+
+   @Override
+   protected VFSClassLoaderPolicy determinePolicy()
+   {
+      VFSClassLoaderPolicy policy = super.determinePolicy();
+      policy.addTranslator(new CrypterTranslator(crypter));
+      return policy;
+   }
+}
\ No newline at end of file

Added: projects/demos/microcontainer/trunk/classloader/src/main/resources/META-INF/classloader-beans.xml
===================================================================
--- projects/demos/microcontainer/trunk/classloader/src/main/resources/META-INF/classloader-beans.xml	                        (rev 0)
+++ projects/demos/microcontainer/trunk/classloader/src/main/resources/META-INF/classloader-beans.xml	2009-11-03 15:19:33 UTC (rev 95957)
@@ -0,0 +1,32 @@
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+  <bean name="KeyProvider" class="org.jboss.demos.classloader.crypt.KeyProvider">
+    <constructor factoryClass="org.jboss.demos.classloader.crypt.KeyProviderFactory" factoryMethod="createKeyProvider">
+      <parameter>
+        <bean class="java.io.File">
+          <constructor>
+            <parameter>${demos.home}/tmp/keystore.txt</parameter>
+          </constructor>
+        </bean>
+      </parameter>
+    </constructor>    
+  </bean>
+
+  <bean name="Crypter" class="org.jboss.demos.classloader.crypt.Crypter">
+    <constructor factoryClass="org.jboss.demos.classloader.crypt.CipherCrypter" factoryMethod="getDecrypter">
+      <parameter>
+        <inject bean="KeyProvider" property="decryptionKey"/>
+      </parameter>
+    </constructor>
+  </bean>
+
+  <bean name="ClassLoaderDescribeDeployer" class="org.jboss.demos.classloader.deployers.CrypterClassLoaderDescribeDeployer">
+    <constructor>
+      <parameter>
+        <inject bean="Crypter"/>
+      </parameter>
+    </constructor>
+    <property name="classLoading"><inject bean="ClassLoading"/></property>
+  </bean>
+
+</deployment>




More information about the jboss-cvs-commits mailing list