[jboss-cvs] JBossAS SVN: r90702 - projects/jboss-deployers/branches/2.0.5.SP1/deployers-vfs-spi/src/main/java/org/jboss/deployers/vfs/spi/deployer.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Jun 30 15:15:50 EDT 2009


Author: thomas.diesler at jboss.com
Date: 2009-06-30 15:15:50 -0400 (Tue, 30 Jun 2009)
New Revision: 90702

Modified:
   projects/jboss-deployers/branches/2.0.5.SP1/deployers-vfs-spi/src/main/java/org/jboss/deployers/vfs/spi/deployer/JBossXBDeployerHelper.java
Log:
[JBDEPLOY-202] BeansDeployer cannot be recycled - deprecate usage of static access to resolver

Modified: projects/jboss-deployers/branches/2.0.5.SP1/deployers-vfs-spi/src/main/java/org/jboss/deployers/vfs/spi/deployer/JBossXBDeployerHelper.java
===================================================================
--- projects/jboss-deployers/branches/2.0.5.SP1/deployers-vfs-spi/src/main/java/org/jboss/deployers/vfs/spi/deployer/JBossXBDeployerHelper.java	2009-06-30 18:27:46 UTC (rev 90701)
+++ projects/jboss-deployers/branches/2.0.5.SP1/deployers-vfs-spi/src/main/java/org/jboss/deployers/vfs/spi/deployer/JBossXBDeployerHelper.java	2009-06-30 19:15:50 UTC (rev 90702)
@@ -47,11 +47,8 @@
    private Logger log = Logger.getLogger(JBossXBDeployerHelper.class);
 
    /** Unmarshaller factory */
-   private static final UnmarshallerFactory factory = UnmarshallerFactory.newInstance();
+   private UnmarshallerFactory factory = UnmarshallerFactory.newInstance();
 
-   /** The singleton schema resolver */
-   private static DefaultSchemaResolver resolver = (DefaultSchemaResolver)SingletonSchemaResolverFactory.getInstance().getSchemaBindingResolver();
-
    /** The output */
    private Class<T> output;
 
@@ -118,15 +115,24 @@
    {
       this.useValidation = useValidation;
    }
+   
+   public DefaultSchemaResolver getResolver()
+   {
+      SingletonSchemaResolverFactory factory = SingletonSchemaResolverFactory.getInstance();
+      DefaultSchemaResolver resolver = (DefaultSchemaResolver)factory.getSchemaBindingResolver();
+      return resolver;
+   }
 
    /**
     * Add class binding.
     *
     * @param namespace the namespace
     * @param metadata the metadata
+    * @deprecated Use non-static method {@link #addTypeBinding(String, Class)} 
     */
    public static void addClassBinding(String namespace, Class<?> metadata)
    {
+      DefaultSchemaResolver resolver = (DefaultSchemaResolver)SingletonSchemaResolverFactory.getInstance().getSchemaBindingResolver();
       resolver.addClassBinding(namespace, metadata);
    }
 
@@ -134,13 +140,36 @@
     * Remove class binding.
     *
     * @param namespace the namespace
+    * @deprecated Use non-static method {@link #removeTypeBinding(String)} 
     */
    public static void removeClassBinding(String namespace)
    {
+      DefaultSchemaResolver resolver = (DefaultSchemaResolver)SingletonSchemaResolverFactory.getInstance().getSchemaBindingResolver();
       resolver.removeClassBinding(namespace);
    }
 
    /**
+    * Add class binding.
+    *
+    * @param namespace the namespace
+    * @param metadata the metadata
+    */
+   public void addTypeBinding(String namespace, Class<?> metadata)
+   {
+      getResolver().addClassBinding(namespace, metadata);
+   }
+
+   /**
+    * Remove class binding.
+    *
+    * @param namespace the namespace
+    */
+   public void removeTypeBinding(String namespace)
+   {
+      getResolver().removeClassBinding(namespace);
+   }
+
+   /**
     * Find the namespace on class/package
     *
     * @param metadata the metadata class
@@ -196,7 +225,7 @@
       {
          InputSource source = new InputSource(is);
          source.setSystemId(file.toURI().toString());
-         parsed = unmarshaller.unmarshal(source, resolver);
+         parsed = unmarshaller.unmarshal(source, getResolver());
       }
       finally
       {




More information about the jboss-cvs-commits mailing list