[jboss-cvs] JBossAS SVN: r92840 - in projects/webbeans-ri-int/trunk/deployer/src: main/java/org/jboss/webbeans/integration/deployer/env/helpers and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Aug 26 11:59:01 EDT 2009
Author: pete.muir at jboss.org
Date: 2009-08-26 11:59:01 -0400 (Wed, 26 Aug 2009)
New Revision: 92840
Removed:
projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/JBossDeployment.java
Modified:
projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/FlatDeployment.java
projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/JBossBeanDeploymentArchive.java
projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/WebBeansBootstrapDeployer.java
projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/helpers/BootstrapBean.java
projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/injection/WebBeansInjector.java
projects/webbeans-ri-int/trunk/deployer/src/test/java/org/jboss/test/deployers/support/MockWBBootstrap.java
Log:
WBRI-372 - change to services per BDA
Modified: projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/FlatDeployment.java
===================================================================
--- projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/FlatDeployment.java 2009-08-26 15:27:23 UTC (rev 92839)
+++ projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/FlatDeployment.java 2009-08-26 15:59:01 UTC (rev 92840)
@@ -20,6 +20,8 @@
import java.util.Collections;
import java.util.List;
+import org.jboss.webbeans.bootstrap.api.ServiceRegistry;
+import org.jboss.webbeans.bootstrap.api.helpers.SimpleServiceRegistry;
import org.jboss.webbeans.bootstrap.spi.BeanDeploymentArchive;
import org.jboss.webbeans.bootstrap.spi.Deployment;
import org.jboss.webbeans.ejb.spi.EjbDescriptor;
@@ -37,11 +39,13 @@
{
private final BeanDeploymentArchive beanDeploymentArchive;
private final List<BeanDeploymentArchive> beanDeploymentArchives;
+ private final ServiceRegistry services;
public FlatDeployment(WebBeanDiscoveryEnvironment environment, Collection<EjbDescriptor<?>> ejbDescriptors)
{
this.beanDeploymentArchive = new JBossBeanDeploymentArchive(environment, ejbDescriptors);
this.beanDeploymentArchives = Collections.singletonList(beanDeploymentArchive);
+ this.services = new SimpleServiceRegistry();
}
public List<BeanDeploymentArchive> getBeanDeploymentArchives()
@@ -58,4 +62,9 @@
{
return beanDeploymentArchive;
}
+
+ public ServiceRegistry getServices()
+ {
+ return services;
+ }
}
\ No newline at end of file
Modified: projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/JBossBeanDeploymentArchive.java
===================================================================
--- projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/JBossBeanDeploymentArchive.java 2009-08-26 15:27:23 UTC (rev 92839)
+++ projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/JBossBeanDeploymentArchive.java 2009-08-26 15:59:01 UTC (rev 92840)
@@ -5,6 +5,8 @@
import java.util.Collections;
import java.util.List;
+import org.jboss.webbeans.bootstrap.api.ServiceRegistry;
+import org.jboss.webbeans.bootstrap.api.helpers.SimpleServiceRegistry;
import org.jboss.webbeans.bootstrap.spi.BeanDeploymentArchive;
import org.jboss.webbeans.ejb.spi.EjbDescriptor;
@@ -12,13 +14,14 @@
{
private final WebBeanDiscoveryEnvironment environment;
-
private final Collection<EjbDescriptor<?>> ejbDescriptors;
+ private final ServiceRegistry services;
public JBossBeanDeploymentArchive(WebBeanDiscoveryEnvironment environment, Collection<EjbDescriptor<?>> ejbDescriptors)
{
this.environment = environment;
this.ejbDescriptors = ejbDescriptors;
+ this.services = new SimpleServiceRegistry();
}
public Collection<Class<?>> getBeanClasses()
@@ -40,5 +43,10 @@
{
return ejbDescriptors;
}
+
+ public ServiceRegistry getServices()
+ {
+ return services;
+ }
}
\ No newline at end of file
Deleted: projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/JBossDeployment.java
===================================================================
--- projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/JBossDeployment.java 2009-08-26 15:27:23 UTC (rev 92839)
+++ projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/JBossDeployment.java 2009-08-26 15:59:01 UTC (rev 92840)
@@ -1,59 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * 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.
- */
-package org.jboss.webbeans.integration.deployer.env;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-import org.jboss.webbeans.bootstrap.spi.BeanDeploymentArchive;
-import org.jboss.webbeans.bootstrap.spi.Deployment;
-import org.jboss.webbeans.ejb.spi.EjbDescriptor;
-
-/**
- * Initial (naive) implementation of Deployment for JBoss AS.
- *
- * This version simply flattens the entire deployment into a single
- * BeanDeploymentArchive
- *
- * @author pmuir
- *
- */
-public class JBossDeployment implements Deployment
-{
-
- private final BeanDeploymentArchive beanDeploymentArchive;
- private final List<BeanDeploymentArchive> beanDeploymentArchives;
-
- public JBossDeployment(WebBeanDiscoveryEnvironment environment, Collection<EjbDescriptor<?>> ejbDescriptors)
- {
- this.beanDeploymentArchive = new JBossBeanDeploymentArchive(environment, ejbDescriptors);
- this.beanDeploymentArchives = new ArrayList<BeanDeploymentArchive>();
- this.beanDeploymentArchives.add(beanDeploymentArchive);
- }
-
- public List<BeanDeploymentArchive> getBeanDeploymentArchives()
- {
- return beanDeploymentArchives;
- }
-
- public BeanDeploymentArchive loadBeanDeploymentArchive(Class<?> beanClass)
- {
- return beanDeploymentArchive;
- }
-
-}
Modified: projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/WebBeansBootstrapDeployer.java
===================================================================
--- projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/WebBeansBootstrapDeployer.java 2009-08-26 15:27:23 UTC (rev 92839)
+++ projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/WebBeansBootstrapDeployer.java 2009-08-26 15:59:01 UTC (rev 92840)
@@ -29,7 +29,6 @@
import org.jboss.deployers.spi.DeploymentException;
import org.jboss.deployers.structure.spi.DeploymentUnit;
import org.jboss.webbeans.bootstrap.api.Bootstrap;
-import org.jboss.webbeans.bootstrap.api.Environments;
import org.jboss.webbeans.context.api.BeanStore;
import org.jboss.webbeans.context.api.helpers.ConcurrentHashMapBeanStore;
import org.jboss.webbeans.integration.deployer.DeployersUtils;
@@ -64,8 +63,7 @@
BeanMetaDataBuilder bootstrap = BeanMetaDataBuilder.createBuilder(bootstrapName, "org.jboss.webbeans.integration.deployer.env.helpers.BootstrapBean");
bootstrap.addConstructorParameter(Bootstrap.class.getName(), createBootstrap(unit));
- bootstrap.addPropertyMetaData("deployment", deploymentValue);
-
+ bootstrap.addConstructorParameter(FlatDeployment.class.getName(), deploymentValue);
bootstrap.addPropertyMetaData("ejbServices", ejbServicesValue);
bootstrap.addPropertyMetaData("jpaServices", createServiceConnector("JBossJpaServices", "org.jboss.webbeans.integration.persistence.JBossJpaServices", unit));
bootstrap.addPropertyMetaData("resourceServices", bootstrap.createInject("JBossResourceServices"));
@@ -73,8 +71,6 @@
bootstrap.addPropertyMetaData("applicationContext", createBeanStore());
bootstrap.addPropertyMetaData("securityServices", bootstrap.createInject("JBossSecurityServices"));
bootstrap.addPropertyMetaData("validationServices", bootstrap.createInject("JBossValidationServices"));
- //bootstrap.addPropertyMetaData("jsfServices", bootstrap.createInject("JBossJSFServices"));
- bootstrap.addPropertyMetaData("environment", Environments.EE);
bootstrap.setCreate("initialize");
bootstrap.setStart("boot");
bootstrap.setDestroy("shutdown");
Modified: projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/helpers/BootstrapBean.java
===================================================================
--- projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/helpers/BootstrapBean.java 2009-08-26 15:27:23 UTC (rev 92839)
+++ projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/deployer/env/helpers/BootstrapBean.java 2009-08-26 15:59:01 UTC (rev 92840)
@@ -4,15 +4,14 @@
import javax.servlet.ServletContext;
import org.jboss.webbeans.bootstrap.api.Bootstrap;
-import org.jboss.webbeans.bootstrap.api.Environment;
+import org.jboss.webbeans.bootstrap.api.Environments;
+import org.jboss.webbeans.bootstrap.api.Service;
import org.jboss.webbeans.bootstrap.spi.BeanDeploymentArchive;
-import org.jboss.webbeans.bootstrap.spi.Deployment;
import org.jboss.webbeans.context.api.BeanStore;
import org.jboss.webbeans.ejb.spi.EjbServices;
import org.jboss.webbeans.integration.deployer.env.FlatDeployment;
import org.jboss.webbeans.jsf.spi.JSFServices;
import org.jboss.webbeans.persistence.spi.JpaServices;
-import org.jboss.webbeans.resources.spi.ResourceLoader;
import org.jboss.webbeans.resources.spi.ResourceServices;
import org.jboss.webbeans.security.spi.SecurityServices;
import org.jboss.webbeans.servlet.api.ServletServices;
@@ -66,95 +65,67 @@
}
private final Bootstrap bootstrap;
+ private final FlatDeployment deployment;
+ private BeanStore applicationBeanStore;
- public BootstrapBean(Bootstrap bootstrap)
+ public BootstrapBean(Bootstrap bootstrap, FlatDeployment flatDeployment)
{
this.bootstrap = bootstrap;
+ this.deployment = flatDeployment;
}
public void setEjbServices(EjbServices ejbServices)
{
- bootstrap.getServices().add(EjbServices.class, ejbServices);
+ addBeanDeploymentArchiveService(EjbServices.class, ejbServices);
}
- public EjbServices getEjbServices()
- {
- return bootstrap.getServices().get(EjbServices.class);
- }
-
public void setJpaServices(JpaServices jpaServices)
{
- bootstrap.getServices().add(JpaServices.class, jpaServices);
+ addBeanDeploymentArchiveService(JpaServices.class, jpaServices);
}
- public JpaServices getJpaServices()
- {
- return bootstrap.getServices().get(JpaServices.class);
- }
-
- public ResourceServices getResourceServices()
- {
- return bootstrap.getServices().get(ResourceServices.class);
- }
-
public void setResourceServices(ResourceServices resourceServices)
{
- bootstrap.getServices().add(ResourceServices.class, resourceServices);
+ addBeanDeploymentArchiveService(ResourceServices.class, resourceServices);
}
- public void setDeployment(Deployment deployment)
+ public FlatDeployment getDeployment()
{
- bootstrap.getServices().add(Deployment.class, deployment);
+ return deployment;
}
- public Deployment getDeployment()
- {
- return bootstrap.getServices().get(Deployment.class);
- }
-
public void setTransactionServices(TransactionServices transactionServices)
{
- bootstrap.getServices().add(TransactionServices.class, transactionServices);
+ addDeploymentService(TransactionServices.class, transactionServices);
}
-
- public TransactionServices getTransactionServices()
- {
- return bootstrap.getServices().get(TransactionServices.class);
- }
public void setApplicationContext(BeanStore applicationContext)
{
- bootstrap.setApplicationContext(applicationContext);
+ this.applicationBeanStore = applicationContext;
}
- public void setResourceLoader(ResourceLoader resourceLoader)
- {
- bootstrap.getServices().add(ResourceLoader.class, resourceLoader);
- }
-
- public ResourceLoader getResourceLoader()
- {
- return bootstrap.getServices().get(ResourceLoader.class);
- }
-
public void setValidationServices(ValidationServices validationServices)
{
- bootstrap.getServices().add(ValidationServices.class, validationServices);
+ addDeploymentService(ValidationServices.class, validationServices);
}
- public ValidationServices getValidationServices()
+ public void setSecurityServices(SecurityServices securityServices)
{
- return bootstrap.getServices().get(ValidationServices.class);
+ addDeploymentService(SecurityServices.class, securityServices);
}
- public void setSecurityServices(SecurityServices securityServices)
+ private <S extends Service> void addDeploymentService(Class<S> type, S service)
{
- bootstrap.getServices().add(SecurityServices.class, securityServices);
+ getDeployment().getServices().add(type, service);
}
- public SecurityServices getSecurityServices()
+ private <S extends Service> void addBeanDeploymentArchiveService(Class<S> type, S service)
{
- return bootstrap.getServices().get(SecurityServices.class);
+ if (getDeployment().getFlatBeanDeploymentArchive() == null)
+ {
+ throw new IllegalStateException("Must add BeanDeploymentArchive to FlatDeployment first!");
+ }
+ getDeployment().getFlatBeanDeploymentArchive().getServices().add(type, service);
}
public void boot()
@@ -173,24 +144,11 @@
public void initialize()
{
// Create the JBoss Servlet Services
- if (bootstrap.getServices().get(Deployment.class) instanceof FlatDeployment)
- {
- FlatDeployment deployment = (FlatDeployment) bootstrap.getServices().get(Deployment.class);
- bootstrap.getServices().add(ServletServices.class, new JBossServletServices(deployment.getFlatBeanDeploymentArchive()));
- bootstrap.getServices().add(JSFServices.class, new JBossJSFServices(deployment.getFlatBeanDeploymentArchive()));
- }
- else
- {
- throw new IllegalStateException("Wrong deployment!");
- }
- bootstrap.startContainer();
+ addDeploymentService(ServletServices.class, new JBossServletServices(deployment.getFlatBeanDeploymentArchive()));
+ addDeploymentService(JSFServices.class, new JBossJSFServices(deployment.getFlatBeanDeploymentArchive()));
+ bootstrap.startContainer(Environments.EE, deployment, applicationBeanStore);
}
- public void setEnvironment(Environment environment)
- {
- bootstrap.setEnvironment(environment);
- }
-
public void shutdown()
{
bootstrap.shutdown();
Modified: projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/injection/WebBeansInjector.java
===================================================================
--- projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/injection/WebBeansInjector.java 2009-08-26 15:27:23 UTC (rev 92839)
+++ projects/webbeans-ri-int/trunk/deployer/src/main/java/org/jboss/webbeans/integration/injection/WebBeansInjector.java 2009-08-26 15:59:01 UTC (rev 92840)
@@ -37,7 +37,7 @@
{
// assume that the deployment is flat. If this changes, the servlet context
// needs to be passed along
- ServletServices services = bootstrapBean.getBootstrap().getServices().get(ServletServices.class);
+ ServletServices services = bootstrapBean.getDeployment().getServices().get(ServletServices.class);
BeanDeploymentArchive beanDeploymentArchive = services.getBeanDeploymentArchive(null);
NonContextualObjectInjectionHelper.injectNonContextualInstance(instance, bootstrapBean.getBootstrap().getManager(beanDeploymentArchive));
}
Modified: projects/webbeans-ri-int/trunk/deployer/src/test/java/org/jboss/test/deployers/support/MockWBBootstrap.java
===================================================================
--- projects/webbeans-ri-int/trunk/deployer/src/test/java/org/jboss/test/deployers/support/MockWBBootstrap.java 2009-08-26 15:27:23 UTC (rev 92839)
+++ projects/webbeans-ri-int/trunk/deployer/src/test/java/org/jboss/test/deployers/support/MockWBBootstrap.java 2009-08-26 15:59:01 UTC (rev 92840)
@@ -22,14 +22,16 @@
package org.jboss.test.deployers.support;
import org.jboss.webbeans.bootstrap.api.Bootstrap;
-import org.jboss.webbeans.bootstrap.api.helpers.AbstractBootstrap;
+import org.jboss.webbeans.bootstrap.api.Environment;
import org.jboss.webbeans.bootstrap.spi.BeanDeploymentArchive;
+import org.jboss.webbeans.bootstrap.spi.Deployment;
+import org.jboss.webbeans.context.api.BeanStore;
import org.jboss.webbeans.manager.api.WebBeansManager;
/**
* @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
*/
-public class MockWBBootstrap extends AbstractBootstrap implements CheckableBootstrap
+public class MockWBBootstrap implements CheckableBootstrap
{
private boolean create;
private boolean startInit;
@@ -46,7 +48,7 @@
public void initialize()
{
- startContainer();
+ startContainer(null, null, null);
}
public void boot()
@@ -54,7 +56,7 @@
startInitialization().deployBeans().validateBeans().endInitialization();
}
- public Bootstrap startContainer()
+ public Bootstrap startContainer(Environment environment, Deployment deployment, BeanStore beanStore)
{
create = true;
return this;
More information about the jboss-cvs-commits
mailing list