[jboss-cvs] JBossAS SVN: r85604 - projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sat Mar 7 15:39:19 EST 2009


Author: petemuir
Date: 2009-03-07 15:39:19 -0500 (Sat, 07 Mar 2009)
New Revision: 85604

Modified:
   projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostWebMetadataDeployer.java
Log:
WBINT-8

Modified: projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostWebMetadataDeployer.java
===================================================================
--- projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostWebMetadataDeployer.java	2009-03-07 19:25:19 UTC (rev 85603)
+++ projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostWebMetadataDeployer.java	2009-03-07 20:39:19 UTC (rev 85604)
@@ -22,12 +22,16 @@
 package org.jboss.webbeans.integration.microcontainer.deployer.metadata;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 
 import org.jboss.deployers.spi.DeploymentException;
 import org.jboss.deployers.spi.deployer.DeploymentStages;
 import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
 import org.jboss.metadata.web.jboss.JBossWebMetaData;
+import org.jboss.metadata.web.spec.FilterMappingMetaData;
+import org.jboss.metadata.web.spec.FilterMetaData;
+import org.jboss.metadata.web.spec.FiltersMetaData;
 import org.jboss.metadata.web.spec.ListenerMetaData;
 import org.jboss.virtual.VirtualFile;
 import org.jboss.webbeans.integration.microcontainer.deployer.DeployersUtils;
@@ -40,6 +44,8 @@
 public class PostWebMetadataDeployer extends WebBeansAwareMetadataDeployer<JBossWebMetaData>
 {
    private ListenerMetaData WBL;
+   private FilterMetaData CPF;
+   private FilterMappingMetaData CPFM;
 
    public PostWebMetadataDeployer()
    {
@@ -51,6 +57,12 @@
       // create wbl listener
       WBL = new ListenerMetaData();
       WBL.setListenerClass("org.jboss.webbeans.servlet.WebBeansListener");
+      CPF = new FilterMetaData();
+      CPF.setFilterName("Web Beans Conversation Propagation Filter");
+      CPF.setFilterClass("org.jboss.webbeans.servlet.ConversationPropagationFilter");
+      CPFM = new FilterMappingMetaData();
+      CPFM.setFilterName("Web Beans Conversation Propagation Filter");
+      CPFM.setUrlPatterns(Arrays.asList("/*"));
    }
 
    protected void internalDeploy(VFSDeploymentUnit unit, JBossWebMetaData deployment, VirtualFile wbXml) throws DeploymentException
@@ -64,6 +76,23 @@
             deployment.setListeners(listeners);
          }
          listeners.add(WBL);
+         
+         FiltersMetaData filters = deployment.getFilters();
+         if (filters == null)
+         {
+            filters = new FiltersMetaData();
+            deployment.setFilters(filters);
+         }
+         filters.add(CPF);
+         
+         List<FilterMappingMetaData> filterMappings = deployment.getFilterMappings();
+         if (filterMappings == null)
+         {
+            filterMappings = new ArrayList<FilterMappingMetaData>();
+            deployment.setFilterMappings(filterMappings);
+         }
+         filterMappings.add(CPFM);
+         
       }
    }
 }
\ No newline at end of file




More information about the jboss-cvs-commits mailing list