[webbeans-commits] Webbeans SVN: r3018 - ri/trunk/impl/src/main/java/org/jboss/webbeans/bean and 23 other directories.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Tue Jul 7 15:29:24 EDT 2009
Author: pete.muir at jboss.org
Date: 2009-07-07 15:29:23 -0400 (Tue, 07 Jul 2009)
New Revision: 3018
Added:
ri/trunk/impl/src/main/java/org/jboss/webbeans/ContextualIdStore.java
ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/ContexutalInstance.java
Removed:
ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanIdStore.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/injection/NonContextualInjector.java
ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/BeanInstance.java
Modified:
ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanManagerImpl.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/EnterpriseBean.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/ProducerMethodBean.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/SimpleBean.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/AbstractFacadeBean.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/bootstrap/WebBeansBootstrap.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/AbstractMapContext.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ApplicationContext.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/BeanInstanceImpl.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ContextLifecycle.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ConversationContext.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentContext.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentInstancesStore.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/RequestContext.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/SessionContext.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/AbstractAttributeBackedBeanStore.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/BeanStoreNamingScheme.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/PrefixBeanStoreNamingScheme.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/conversation/AbstractConversationManager.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/ejb/SessionBeanInterceptor.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/el/WebBeansELResolver.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/event/AsynchronousTransactionalEventNotification.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/event/DeferredEventNotification.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/jsf/ConversationAwareViewHandler.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/jsf/WebBeansPhaseListener.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/resources/ManagerObjectFactory.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/servlet/ConversationPropagationFilter.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java
ri/trunk/porting-package/src/main/java/org/jboss/webbeans/tck/ContextsImpl.java
ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/BeanStore.java
ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/AbstractMapBackedBeanStore.java
ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/ConcurrentHashMapBeanStore.java
ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/ForwardingBeanStore.java
ri/trunk/tests/src/main/java/org/jboss/webbeans/test/AbstractWebBeansTest.java
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/examples/ExampleTest.java
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/examples/MockExampleTest.java
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/deployment/structure/AccessibleManagerResolutionTest.java
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/environments/servlet/ServletLifecycleTest.java
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/exceptions/ExceptionHandlingTest.java
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/proxy/enterprise/EnterpriseBeanProxyTest.java
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/circular/CircularDependencyTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/DependentContextTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/Spider.java
Log:
various tidying up, and switch to using ContextualIdStore for contextual identification purposes
Deleted: ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanIdStore.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanIdStore.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanIdStore.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -1,119 +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;
-
-import java.util.concurrent.atomic.AtomicInteger;
-
-import javax.enterprise.inject.spi.Bean;
-
-import org.jboss.webbeans.bootstrap.api.Service;
-
-import com.google.common.collect.BiMap;
-import com.google.common.collect.HashBiMap;
-
-/**
- * Application wide bean identifier service which allows a serializable
- * reference to a bean to be obtained, and the bean object to be got for a given
- * id. Note that this allows a Bean object to be loaded regardless of the bean's
- * accessiblity from the current module, and should not be abused as a way to
- * ignore accessibility rules enforced during resolution.
- *
- * @author Pete Muir
- *
- */
-public class BeanIdStore implements Service
-{
-
- private static class BeanHolder<T>
- {
- public static <T> BeanHolder<T> of(Bean<T> bean, BeanManagerImpl manager)
- {
- return new BeanHolder<T>(bean, manager);
- }
-
- private final Bean<T> bean;
- private final BeanManagerImpl manager;
-
- public BeanHolder(Bean<T> bean, BeanManagerImpl manager)
- {
- this.bean = bean;
- this.manager = manager;
- }
-
- public Bean<T> getBean()
- {
- return bean;
- }
-
- public BeanManagerImpl getManager()
- {
- return manager;
- }
-
- @Override
- public int hashCode()
- {
- return bean.hashCode();
- }
-
- @Override
- public boolean equals(Object obj)
- {
- if (obj instanceof BeanHolder)
- {
- return (this.bean.equals(((BeanHolder<?>) obj).getBean()));
- }
- else
- {
- return false;
- }
- }
- }
-
- private final BiMap<Integer, BeanHolder<?>> beans;
- private final AtomicInteger idGenerator;
-
- public BeanIdStore()
- {
- this.idGenerator = new AtomicInteger(0);
- this.beans = HashBiMap.create();
- }
-
- public <T> Bean<T> get(Integer id)
- {
- return (Bean<T>) beans.get(id).getBean();
- }
-
- public boolean contains(Integer id)
- {
- return beans.containsKey(id);
- }
-
- public Integer put(Bean<?> bean, BeanManagerImpl manager)
- {
- if (beans.inverse().containsKey(bean))
- {
- return beans.inverse().get(bean);
- }
- else
- {
- Integer id = idGenerator.incrementAndGet();
- beans.put(id, BeanHolder.of(bean, manager));
- return id;
- }
- }
-}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanManagerImpl.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanManagerImpl.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanManagerImpl.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -50,7 +50,6 @@
import javax.enterprise.context.spi.Context;
import javax.enterprise.context.spi.Contextual;
import javax.enterprise.context.spi.CreationalContext;
-import javax.enterprise.event.Observer;
import javax.enterprise.inject.AmbiguousResolutionException;
import javax.enterprise.inject.BindingType;
import javax.enterprise.inject.InjectionException;
@@ -75,7 +74,6 @@
import org.jboss.webbeans.bootstrap.api.ServiceRegistry;
import org.jboss.webbeans.context.ApplicationContext;
import org.jboss.webbeans.context.CreationalContextImpl;
-import org.jboss.webbeans.context.DependentContext;
import org.jboss.webbeans.el.Namespace;
import org.jboss.webbeans.el.WebBeansELResolverImpl;
import org.jboss.webbeans.introspector.WBAnnotated;
@@ -543,7 +541,6 @@
RIBean<?> riBean = (RIBean<?>) bean;
riBeans.put(riBean.getId(), riBean);
}
- getServices().get(BeanIdStore.class).put(bean, this);
registerBeanNamespace(bean);
for (BeanManagerImpl childActivity : childActivities)
{
@@ -812,21 +809,12 @@
notifyObservers(event, resolveObserverMethods(event, bindings));
}
- private <T> void notifyObservers(T event, Set<ObserverMethod<?, T>> observers)
+ private <T> void notifyObservers(final T event, final Set<ObserverMethod<?, T>> observers)
{
- try
+ for (ObserverMethod<?, T> observer : observers)
{
- DependentContext.instance().setActive(true);
- for (ObserverMethod<?, T> observer : observers)
- {
- observer.notify(event);
- }
- }
- finally
- {
- // TODO This breaks SE shutdown, also we need to tidy up how dependent context is activated....
- DependentContext.instance().setActive(false);
- }
+ observer.notify(event);
+ }
}
/**
@@ -938,19 +926,21 @@
/**
* Returns an instance by API type and binding types
*
- * @param type The API type to match
+ * @param beanType The API type to match
* @param bindings The binding types to match
* @return An instance of the bean
*
- * @deprecated replace with non-contextual injection
- *
*/
- @Deprecated
- public <T> T getInstanceByType(Class<T> type, Annotation... bindings)
+ public <T> T getInstanceByType(Class<T> beanType, Annotation... bindings)
{
- WBAnnotated<T, ?> element = ResolvableWBClass.of(type, bindings, this);
- Bean<T> bean = getBean(element, bindings);
- return (T) getReference(bean, type, createCreationalContext(bean));
+ Set<Bean<?>> beans = getBeans(beanType, bindings);
+ Bean<?> bean = resolve(beans);
+ Object reference = getReference(bean, beanType, createCreationalContext(bean));
+
+ @SuppressWarnings("unchecked")
+ T instance = (T) reference;
+
+ return instance;
}
public <T> Bean<T> getBean(WBAnnotated<T, ?> element, Annotation... bindings)
@@ -1136,9 +1126,10 @@
{
log.trace("Ending application");
shutdownExecutors();
- ApplicationContext.instance().destroy();
- ApplicationContext.instance().setActive(false);
- ApplicationContext.instance().setBeanStore(null);
+ ApplicationContext applicationContext = getServices().get(ApplicationContext.class);
+ applicationContext.destroy();
+ applicationContext.setActive(false);
+ applicationContext.setBeanStore(null);
CurrentManager.cleanup();
}
Copied: ri/trunk/impl/src/main/java/org/jboss/webbeans/ContextualIdStore.java (from rev 3013, ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanIdStore.java)
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/ContextualIdStore.java (rev 0)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/ContextualIdStore.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -0,0 +1,72 @@
+/*
+ * 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;
+
+import java.util.concurrent.atomic.AtomicInteger;
+
+import javax.enterprise.context.spi.Contextual;
+
+import org.jboss.webbeans.bootstrap.api.Service;
+
+import com.google.common.collect.BiMap;
+import com.google.common.collect.HashBiMap;
+import com.google.common.collect.Maps;
+
+/**
+ * Application wide contextual identifier service which allows a serializable
+ * reference to a contextual to be obtained, and the contextual to be returned
+ * for a given id. Note that this allows a Bean object to be loaded regardless
+ * of the bean's accessiblity from the current module, and should not be abused
+ * as a way to ignore accessibility rules enforced during resolution.
+ *
+ * @author Pete Muir
+ *
+ */
+public class ContextualIdStore implements Service
+{
+
+ private final BiMap<Contextual<?>, Integer> contextuals;
+ private final AtomicInteger idGenerator;
+
+ public ContextualIdStore()
+ {
+ this.idGenerator = new AtomicInteger(0);
+ BiMap<Contextual<?>, Integer> map = HashBiMap.create();
+ // TODO Somehow remove this sync if it shows bad in a profiler
+ this.contextuals = Maps.synchronizedBiMap(map);
+ }
+
+ @SuppressWarnings("unchecked")
+ public <T> Contextual<T> getContextual(Integer id)
+ {
+ return (Contextual<T>) contextuals.inverse().get(id);
+ }
+
+ public Integer getId(Contextual<?> contextual)
+ {
+ if (contextuals.containsKey(contextual))
+ {
+ return contextuals.get(contextual);
+ }
+ else
+ {
+ Integer id = idGenerator.incrementAndGet();
+ contextuals.put(contextual, id);
+ return id;
+ }
+ }
+}
Property changes on: ri/trunk/impl/src/main/java/org/jboss/webbeans/ContextualIdStore.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -41,7 +41,6 @@
import org.jboss.webbeans.DefinitionException;
import org.jboss.webbeans.bootstrap.BeanDeployerEnvironment;
import org.jboss.webbeans.context.CreationalContextImpl;
-import org.jboss.webbeans.context.DependentContext;
import org.jboss.webbeans.introspector.WBMember;
import org.jboss.webbeans.log.LogProvider;
import org.jboss.webbeans.log.Logging;
@@ -333,11 +332,10 @@
*
* @returns The instance
*/
- public T create(CreationalContext<T> creationalContext)
+ public T create(final CreationalContext<T> creationalContext)
{
try
{
- DependentContext.instance().setActive(true);
T instance = produceInstance(creationalContext);
checkReturnValue(instance);
return instance;
@@ -348,7 +346,6 @@
{
creationalContext.release();
}
- DependentContext.instance().setActive(false);
}
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/EnterpriseBean.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/EnterpriseBean.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/EnterpriseBean.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -39,7 +39,6 @@
import org.jboss.webbeans.bean.proxy.EnterpriseBeanInstance;
import org.jboss.webbeans.bean.proxy.EnterpriseBeanProxyMethodHandler;
import org.jboss.webbeans.bootstrap.BeanDeployerEnvironment;
-import org.jboss.webbeans.context.DependentContext;
import org.jboss.webbeans.ejb.InternalEjbDescriptor;
import org.jboss.webbeans.ejb.api.SessionObjectReference;
import org.jboss.webbeans.ejb.spi.BusinessInterfaceDescriptor;
@@ -221,11 +220,10 @@
*
* @return The instance
*/
- public T create(CreationalContext<T> creationalContext)
+ public T create(final CreationalContext<T> creationalContext)
{
try
{
- DependentContext.instance().setActive(true);
T instance = proxyClass.newInstance();
creationalContext.push(instance);
((ProxyObject) instance).setHandler(new EnterpriseBeanProxyMethodHandler<T>(this, creationalContext));
@@ -244,10 +242,6 @@
{
throw new CreationException("could not find the EJB in JNDI " + proxyClass, e);
}
- finally
- {
- DependentContext.instance().setActive(false);
- }
}
public void destroy(T instance, CreationalContext<T> creationalContext)
@@ -308,28 +302,20 @@
public void postConstruct(T instance)
{
- try
- {
- CreationalContext<T> creationalContext = new CreationalContext<T>()
- {
-
- public void push(T incompleteInstance) {};
-
- public void release()
- {
- // TODO implement this
- }
-
- };
- DependentContext.instance().setActive(true);
- injectBoundFields(instance, creationalContext);
- callInitializers(instance, creationalContext);
- }
- finally
- {
- DependentContext.instance().setActive(false);
- }
-
+ // TODO Why do we need a special CC for Enterprise beans?
+ CreationalContext<T> creationalContext = new CreationalContext<T>()
+ {
+
+ public void push(T incompleteInstance) {};
+
+ public void release()
+ {
+ // TODO implement this
+ }
+
+ };
+ injectBoundFields(instance, creationalContext);
+ callInitializers(instance, creationalContext);
}
public void preDestroy(CreationalContext<T> creationalContext)
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/ProducerMethodBean.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/ProducerMethodBean.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/ProducerMethodBean.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -28,7 +28,6 @@
import org.jboss.webbeans.BeanManagerImpl;
import org.jboss.webbeans.DefinitionException;
import org.jboss.webbeans.bootstrap.BeanDeployerEnvironment;
-import org.jboss.webbeans.context.DependentContext;
import org.jboss.webbeans.injection.MethodInjectionPoint;
import org.jboss.webbeans.injection.ParameterInjectionPoint;
import org.jboss.webbeans.introspector.WBMethod;
@@ -177,9 +176,10 @@
{
try
{
- DependentContext.instance().setActive(true);
if (disposalMethodBean != null)
+ {
disposalMethodBean.invokeDisposeMethod(instance, creationalContext);
+ }
}
finally
{
@@ -187,9 +187,7 @@
{
creationalContext.release();
}
- DependentContext.instance().setActive(false);
- }
-
+ }
}
/**
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/SimpleBean.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/SimpleBean.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/SimpleBean.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -29,7 +29,6 @@
import org.jboss.webbeans.BeanManagerImpl;
import org.jboss.webbeans.DefinitionException;
import org.jboss.webbeans.bootstrap.BeanDeployerEnvironment;
-import org.jboss.webbeans.context.DependentContext;
import org.jboss.webbeans.ejb.EJBApiAbstraction;
import org.jboss.webbeans.ejb.spi.EjbServices;
import org.jboss.webbeans.injection.ConstructorInjectionPoint;
@@ -110,23 +109,15 @@
*/
public T create(CreationalContext<T> creationalContext)
{
- try
- {
- DependentContext.instance().setActive(true);
- T instance = null;
- instance = constructor.newInstance(manager, creationalContext);
- instance = applyDecorators(instance, creationalContext);
- creationalContext.push(instance);
- injectEjbAndCommonFields(instance);
- injectBoundFields(instance, creationalContext);
- callInitializers(instance, creationalContext);
- callPostConstruct(instance);
- return instance;
- }
- finally
- {
- DependentContext.instance().setActive(false);
- }
+ T instance = null;
+ instance = constructor.newInstance(manager, creationalContext);
+ instance = applyDecorators(instance, creationalContext);
+ creationalContext.push(instance);
+ injectEjbAndCommonFields(instance);
+ injectBoundFields(instance, creationalContext);
+ callInitializers(instance, creationalContext);
+ callPostConstruct(instance);
+ return instance;
}
/**
@@ -138,7 +129,6 @@
{
try
{
- DependentContext.instance().setActive(true);
callPreDestroy(instance);
creationalContext.release();
}
@@ -146,10 +136,6 @@
{
log.error("Error destroying " + toString(), e);
}
- finally
- {
- DependentContext.instance().setActive(false);
- }
}
/**
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/AbstractFacadeBean.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/AbstractFacadeBean.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/AbstractFacadeBean.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -25,7 +25,6 @@
import javax.enterprise.inject.spi.InjectionPoint;
import org.jboss.webbeans.BeanManagerImpl;
-import org.jboss.webbeans.context.DependentContext;
import org.jboss.webbeans.log.Log;
import org.jboss.webbeans.log.Logging;
@@ -41,32 +40,24 @@
public T create(CreationalContext<T> creationalContext)
{
- try
+ InjectionPoint injectionPoint = this.getManager().getInjectionPoint();
+ if (injectionPoint != null)
{
- DependentContext.instance().setActive(true);
- InjectionPoint injectionPoint = this.getManager().getInjectionPoint();
- if (injectionPoint != null)
+ Type genericType = injectionPoint.getType();
+ if (genericType instanceof ParameterizedType )
{
- Type genericType = injectionPoint.getType();
- if (genericType instanceof ParameterizedType )
- {
- Type type = ((ParameterizedType) genericType).getActualTypeArguments()[0];
- return newInstance(type, injectionPoint.getBindings());
- }
- else
- {
- throw new IllegalStateException("Must have concrete type argument " + injectionPoint);
- }
+ Type type = ((ParameterizedType) genericType).getActualTypeArguments()[0];
+ return newInstance(type, injectionPoint.getBindings());
}
else
{
- log.warn("Dynamic lookup of " + toString() + " is not supported");
- return null;
+ throw new IllegalStateException("Must have concrete type argument " + injectionPoint);
}
}
- finally
+ else
{
- DependentContext.instance().setActive(false);
+ log.warn("Dynamic lookup of " + toString() + " is not supported");
+ return null;
}
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/bootstrap/WebBeansBootstrap.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/bootstrap/WebBeansBootstrap.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/bootstrap/WebBeansBootstrap.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -23,7 +23,7 @@
import javax.enterprise.inject.spi.BeforeShutdown;
import javax.enterprise.inject.spi.Extension;
-import org.jboss.webbeans.BeanIdStore;
+import org.jboss.webbeans.ContextualIdStore;
import org.jboss.webbeans.BeanManagerImpl;
import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.DefinitionException;
@@ -215,7 +215,7 @@
getServices().add(TypeStore.class, new TypeStore());
getServices().add(ClassTransformer.class, new ClassTransformer(getServices().get(TypeStore.class)));
getServices().add(MetaAnnotationStore.class, new MetaAnnotationStore(getServices().get(ClassTransformer.class)));
- getServices().add(BeanIdStore.class, new BeanIdStore());
+ getServices().add(ContextualIdStore.class, new ContextualIdStore());
}
public BeanManagerImpl getManager()
@@ -393,11 +393,11 @@
protected void initializeContexts()
{
- manager.addContext(DependentContext.instance());
- manager.addContext(RequestContext.instance());
- manager.addContext(ConversationContext.instance());
- manager.addContext(SessionContext.instance());
- manager.addContext(ApplicationContext.instance());
+ manager.addContext(getServices().get(DependentContext.class));
+ manager.addContext(getServices().get(RequestContext.class));
+ manager.addContext(getServices().get(ConversationContext.class));
+ manager.addContext(getServices().get(SessionContext.class));
+ manager.addContext(getServices().get(ApplicationContext.class));
}
protected void createContexts()
@@ -413,21 +413,24 @@
protected void beginApplication(BeanStore applicationBeanStore)
{
log.trace("Starting application");
- ApplicationContext.instance().setBeanStore(applicationBeanStore);
- ApplicationContext.instance().setActive(true);
+ ApplicationContext applicationContext = manager.getServices().get(ApplicationContext.class);
+ applicationContext.setBeanStore(applicationBeanStore);
+ applicationContext.setActive(true);
}
protected void beginDeploy(BeanStore requestBeanStore)
{
- RequestContext.instance().setBeanStore(requestBeanStore);
- RequestContext.instance().setActive(true);
+ RequestContext requestContext = CurrentManager.rootManager().getServices().get(RequestContext.class);
+ requestContext.setBeanStore(requestBeanStore);
+ requestContext.setActive(true);
}
protected void endDeploy(BeanStore requestBeanStore)
{
- RequestContext.instance().setBeanStore(null);
- RequestContext.instance().setActive(false);
+ RequestContext requestContext = CurrentManager.rootManager().getServices().get(RequestContext.class);
+ requestContext.setBeanStore(null);
+ requestContext.setActive(false);
}
public void shutdown()
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/AbstractMapContext.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/AbstractMapContext.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/AbstractMapContext.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -23,7 +23,7 @@
import javax.enterprise.context.spi.Contextual;
import javax.enterprise.context.spi.CreationalContext;
-import org.jboss.webbeans.context.api.BeanInstance;
+import org.jboss.webbeans.context.api.ContexutalInstance;
import org.jboss.webbeans.context.api.BeanStore;
import org.jboss.webbeans.log.LogProvider;
import org.jboss.webbeans.log.Logging;
@@ -75,7 +75,7 @@
{
throw new IllegalStateException("No bean store available for " + toString());
}
- BeanInstance<T> beanInstance = getBeanStore().get(contextual);
+ ContexutalInstance<T> beanInstance = getBeanStore().get(contextual);
if (beanInstance != null)
{
return beanInstance.getInstance();
@@ -128,7 +128,7 @@
{
throw new IllegalStateException("No bean store available for " + toString());
}
- BeanInstance<T> beanInstance = getBeanStore().get(contextual);
+ ContexutalInstance<T> beanInstance = getBeanStore().get(contextual);
contextual.destroy(beanInstance.getInstance(), beanInstance.getCreationalContext());
}
@@ -143,7 +143,7 @@
{
throw new IllegalStateException("No bean store available for " + toString());
}
- for (Contextual<? extends Object> bean : getBeanStore().getBeans())
+ for (Contextual<? extends Object> bean : getBeanStore().getContextuals())
{
destroy(bean);
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ApplicationContext.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ApplicationContext.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ApplicationContext.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -26,7 +26,6 @@
import javax.enterprise.context.ApplicationScoped;
-import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.bootstrap.api.Service;
import org.jboss.webbeans.context.api.BeanStore;
@@ -39,11 +38,6 @@
*/
public class ApplicationContext extends AbstractMapContext implements Service
{
-
- public static ApplicationContext instance()
- {
- return CurrentManager.rootManager().getServices().get(ApplicationContext.class);
- }
// The beans
private BeanStore beanStore;
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/BeanInstanceImpl.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/BeanInstanceImpl.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/BeanInstanceImpl.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -19,9 +19,9 @@
import javax.enterprise.context.spi.Contextual;
import javax.enterprise.context.spi.CreationalContext;
-import org.jboss.webbeans.context.api.BeanInstance;
+import org.jboss.webbeans.context.api.ContexutalInstance;
-public class BeanInstanceImpl<T> implements BeanInstance<T>
+public class BeanInstanceImpl<T> implements ContexutalInstance<T>
{
private final Contextual<T> contextual;
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ContextLifecycle.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ContextLifecycle.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ContextLifecycle.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -22,16 +22,12 @@
*/
package org.jboss.webbeans.context;
-import javax.enterprise.inject.Any;
-import javax.enterprise.inject.Instance;
-
import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.bootstrap.api.Lifecycle;
import org.jboss.webbeans.context.api.BeanStore;
import org.jboss.webbeans.conversation.ConversationManager;
import org.jboss.webbeans.log.LogProvider;
import org.jboss.webbeans.log.Logging;
-import org.jboss.webbeans.servlet.ConversationBeanStore;
/**
* An implementation of the Web Beans lifecycle that supports restoring
@@ -44,57 +40,46 @@
{
private static LogProvider log = Logging.getLogProvider(ContextLifecycle.class);
-
- @Any private Instance<ConversationManager> conversationManager;
public void restoreSession(String id, BeanStore sessionBeanStore)
{
log.trace("Restoring session " + id);
- SessionContext.instance().setBeanStore(sessionBeanStore);
- SessionContext.instance().setActive(true);
+ SessionContext sessionContext = CurrentManager.rootManager().getServices().get(SessionContext.class);
+ sessionContext.setBeanStore(sessionBeanStore);
+ sessionContext.setActive(true);
}
public void endSession(String id, BeanStore sessionBeanStore)
{
log.trace("Ending session " + id);
- SessionContext.instance().setActive(true);
+ SessionContext sessionContext = CurrentManager.rootManager().getServices().get(SessionContext.class);
+ sessionContext.setActive(true);
ConversationManager conversationManager = CurrentManager.rootManager().getInstanceByType(ConversationManager.class);
conversationManager.destroyAllConversations();
- SessionContext.instance().destroy();
- SessionContext.instance().setBeanStore(null);
- SessionContext.instance().setActive(false);
+ sessionContext.destroy();
+ sessionContext.setBeanStore(null);
+ sessionContext.setActive(false);
}
public void beginRequest(String id, BeanStore requestBeanStore)
{
log.trace("Starting request " + id);
- RequestContext.instance().setBeanStore(requestBeanStore);
- RequestContext.instance().setActive(true);
- DependentContext.instance().setActive(true);
+ RequestContext requestContext = CurrentManager.rootManager().getServices().get(RequestContext.class);
+ DependentContext dependentContext = CurrentManager.rootManager().getServices().get(DependentContext.class);
+ requestContext.setBeanStore(requestBeanStore);
+ requestContext.setActive(true);
+ dependentContext.setActive(true);
}
public void endRequest(String id, BeanStore requestBeanStore)
{
log.trace("Ending request " + id);
- RequestContext.instance().setBeanStore(requestBeanStore);
- DependentContext.instance().setActive(false);
- RequestContext.instance().destroy();
- RequestContext.instance().setActive(false);
+ RequestContext requestContext = CurrentManager.rootManager().getServices().get(RequestContext.class);
+ DependentContext dependentContext = CurrentManager.rootManager().getServices().get(DependentContext.class);
+ requestContext.setBeanStore(requestBeanStore);
+ dependentContext.setActive(false);
+ requestContext.destroy();
+ requestContext.setActive(false);
}
- protected void restoreConversation(String id, BeanStore conversationBeanStore)
- {
- log.trace("Starting conversation " + id);
- ConversationContext.instance().setBeanStore(conversationBeanStore);
- ConversationContext.instance().setActive(true);
- }
-
- protected void destroyConversation(String id, ConversationBeanStore conversationBeanStore)
- {
- log.trace("Ending conversation " + id);
- ConversationContext destructionContext = new ConversationContext();
- destructionContext.setBeanStore(conversationBeanStore);
- destructionContext.destroy();
- }
-
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ConversationContext.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ConversationContext.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ConversationContext.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -24,7 +24,6 @@
import javax.enterprise.context.ConversationScoped;
-import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.bootstrap.api.Service;
import org.jboss.webbeans.log.LogProvider;
import org.jboss.webbeans.log.Logging;
@@ -38,11 +37,6 @@
{
private static LogProvider log = Logging.getLogProvider(ConversationContext.class);
- public static ConversationContext instance()
- {
- return CurrentManager.rootManager().getServices().get(ConversationContext.class);
- }
-
/**
* Constructor
*/
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentContext.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentContext.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentContext.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -22,16 +22,13 @@
*/
package org.jboss.webbeans.context;
-import java.util.concurrent.atomic.AtomicInteger;
-
import javax.enterprise.context.ContextNotActiveException;
import javax.enterprise.context.Dependent;
import javax.enterprise.context.spi.Contextual;
import javax.enterprise.context.spi.CreationalContext;
-import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.bootstrap.api.Service;
-import org.jboss.webbeans.context.api.BeanInstance;
+import org.jboss.webbeans.context.api.ContexutalInstance;
/**
* The dependent context
@@ -41,28 +38,12 @@
public class DependentContext extends AbstractContext implements Service
{
- public static DependentContext instance()
- {
- return CurrentManager.rootManager().getServices().get(DependentContext.class);
- }
-
- private final ThreadLocal<AtomicInteger> reentrantActiveCount;
-
/**
* Constructor
*/
public DependentContext()
{
super(Dependent.class);
- super.setActive(false);
- this.reentrantActiveCount = new ThreadLocal<AtomicInteger>()
- {
- @Override
- protected AtomicInteger initialValue()
- {
- return new AtomicInteger(0);
- }
- };
}
/**
@@ -83,7 +64,7 @@
if (creationalContext instanceof CreationalContextImpl)
{
CreationalContextImpl<T> creationalContextImpl = (CreationalContextImpl<T>) creationalContext;
- BeanInstance<T> beanInstance = new BeanInstanceImpl<T>(contextual, instance, creationalContext);
+ ContexutalInstance<T> beanInstance = new BeanInstanceImpl<T>(contextual, instance, creationalContext);
creationalContextImpl.getParentDependentInstancesStore().addDependentInstance(beanInstance);
}
return instance;
@@ -102,27 +83,13 @@
@Override
public String toString()
{
- String active = isActive() ? "Active " : "Inactive ";
- return active + "dependent context";
+ return "dependent context";
}
-
+
@Override
- public void setActive(boolean active)
+ public boolean isActive()
{
- if (active)
- {
- if (reentrantActiveCount.get().incrementAndGet() == 1)
- {
- super.setActive(true);
- }
- }
- else
- {
- if (reentrantActiveCount.get().decrementAndGet() == 0)
- {
- super.setActive(false);
- }
- }
+ return true;
}
@Deprecated
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentInstancesStore.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentInstancesStore.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentInstancesStore.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -20,7 +20,7 @@
import java.util.Collections;
import java.util.List;
-import org.jboss.webbeans.context.api.BeanInstance;
+import org.jboss.webbeans.context.api.ContexutalInstance;
import org.jboss.webbeans.log.Log;
import org.jboss.webbeans.log.Logging;
@@ -34,14 +34,14 @@
private static Log log = Logging.getLog(DependentInstancesStore.class);
// A object -> List of contextual instances mapping
- private List<BeanInstance<?>> dependentInstances;
+ private List<ContexutalInstance<?>> dependentInstances;
/**
* Creates a new DependentInstancesStore
*/
public DependentInstancesStore()
{
- dependentInstances = Collections.synchronizedList(new ArrayList<BeanInstance<?>>());
+ dependentInstances = Collections.synchronizedList(new ArrayList<ContexutalInstance<?>>());
}
/**
@@ -50,7 +50,7 @@
* @param key The key to store the instance under
* @param contextualInstance The instance to store
*/
- public <T> void addDependentInstance(BeanInstance<T> contextualInstance)
+ public <T> void addDependentInstance(ContexutalInstance<T> contextualInstance)
{
log.trace("Registered dependent instance #0", contextualInstance);
dependentInstances.add(contextualInstance);
@@ -64,13 +64,13 @@
public void destroyDependentInstances()
{
log.trace("Destroying dependent instances");
- for (BeanInstance<?> injectedInstance : dependentInstances)
+ for (ContexutalInstance<?> injectedInstance : dependentInstances)
{
destroy(injectedInstance);
}
}
- private static <T> void destroy(BeanInstance<T> beanInstance)
+ private static <T> void destroy(ContexutalInstance<T> beanInstance)
{
beanInstance.getContextual().destroy(beanInstance.getInstance(), beanInstance.getCreationalContext());
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/RequestContext.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/RequestContext.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/RequestContext.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -24,7 +24,6 @@
import javax.enterprise.context.RequestScoped;
-import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.bootstrap.api.Service;
/**
@@ -34,11 +33,6 @@
*/
public class RequestContext extends AbstractThreadLocalMapContext implements Service
{
-
- public static RequestContext instance()
- {
- return CurrentManager.rootManager().getServices().get(RequestContext.class);
- }
/**
* Constructor
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/SessionContext.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/SessionContext.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/SessionContext.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -24,7 +24,6 @@
import javax.enterprise.context.SessionScoped;
-import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.bootstrap.api.Service;
import org.jboss.webbeans.context.api.BeanStore;
import org.jboss.webbeans.log.LogProvider;
@@ -39,11 +38,6 @@
{
private static LogProvider log = Logging.getLogProvider(SessionContext.class);
- public static SessionContext instance()
- {
- return CurrentManager.rootManager().getServices().get(SessionContext.class);
- }
-
/**
* Constructor
*/
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/AbstractAttributeBackedBeanStore.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/AbstractAttributeBackedBeanStore.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/AbstractAttributeBackedBeanStore.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -22,9 +22,10 @@
import javax.enterprise.context.spi.Contextual;
+import org.jboss.webbeans.ContextualIdStore;
import org.jboss.webbeans.CurrentManager;
-import org.jboss.webbeans.context.api.BeanInstance;
import org.jboss.webbeans.context.api.BeanStore;
+import org.jboss.webbeans.context.api.ContexutalInstance;
import org.jboss.webbeans.log.LogProvider;
import org.jboss.webbeans.log.Logging;
import org.jboss.webbeans.util.Names;
@@ -48,10 +49,11 @@
* @return The instance
*/
@SuppressWarnings("unchecked")
- public <T> BeanInstance<T> get(Contextual<? extends T> contextual)
+ public <T> ContexutalInstance<T> get(Contextual<? extends T> contextual)
{
- String key = getNamingScheme().getContextualKey(contextual);
- BeanInstance<T> instance = (BeanInstance<T>) getAttribute(key);
+ Integer contextualId = CurrentManager.rootManager().getServices().get(ContextualIdStore.class).getId(contextual);
+ String key = getNamingScheme().getKeyFromId(contextualId);
+ ContexutalInstance<T> instance = (ContexutalInstance<T>) getAttribute(key);
log.trace("Looked for " + key + " and got " + instance);
return instance;
}
@@ -64,8 +66,9 @@
*/
public <T> T remove(Contextual<? extends T> contextual)
{
+ Integer contextualId = CurrentManager.rootManager().getServices().get(ContextualIdStore.class).getId(contextual);
T instance = get(contextual).getInstance();
- String key = getNamingScheme().getContextualKey(contextual);
+ String key = getNamingScheme().getKeyFromId(contextualId);
removeAttribute(key);
log.trace("Removed bean under key " + key);
return instance;
@@ -88,14 +91,14 @@
*
* @return The beans
*/
- public Iterable<Contextual<? extends Object>> getBeans()
+ public Iterable<Contextual<? extends Object>> getContextuals()
{
List<Contextual<?>> contextuals = new ArrayList<Contextual<?>>();
BeanStoreNamingScheme namingScheme = getNamingScheme();
for (String attributeName : getFilteredAttributeNames())
{
- int beanIndex = namingScheme.getBeanIndexFromKey(attributeName);
- Contextual<?> contextual = CurrentManager.rootManager().getBeans().get(beanIndex);
+ Integer id = namingScheme.getIdFromKey(attributeName);
+ Contextual<?> contextual = CurrentManager.rootManager().getServices().get(ContextualIdStore.class).getContextual(id);
contextuals.add(contextual);
}
return contextuals;
@@ -127,9 +130,10 @@
* @param instance The instance
* @return The instance added
*/
- public <T> void put(BeanInstance<T> beanInstance)
+ public <T> void put(ContexutalInstance<T> beanInstance)
{
- String key = getNamingScheme().getContextualKey(beanInstance.getContextual());
+ Integer contextualId = CurrentManager.rootManager().getServices().get(ContextualIdStore.class).getId(beanInstance.getContextual());
+ String key = getNamingScheme().getKeyFromId(contextualId);
setAttribute(key, beanInstance);
log.trace("Added Contextual type " + beanInstance.getContextual() + " under key " + key);
}
@@ -176,6 +180,6 @@
@Override
public String toString()
{
- return "holding " + Names.count(getBeans()) + " instances";
+ return "holding " + Names.count(getContextuals()) + " instances";
}
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/BeanStoreNamingScheme.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/BeanStoreNamingScheme.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/BeanStoreNamingScheme.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -16,7 +16,6 @@
*/
package org.jboss.webbeans.context.beanstore;
-import javax.enterprise.context.spi.Contextual;
/**
* Interface against a BeanStore to handle different naming schemes
@@ -40,13 +39,13 @@
* @param contextual The contextual to make the key for
* @return A map key
*/
- public abstract String getContextualKey(Contextual<?> contextual);
+ public abstract String getKeyFromId(Integer id);
/**
- * Gets a bean index key from a key
+ * Gets a contextual id from a key
*
* @param key The key to parse
- * @return The bean index
+ * @return The contextual id
*/
- public abstract int getBeanIndexFromKey(String key);
+ public abstract Integer getIdFromKey(String key);
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/PrefixBeanStoreNamingScheme.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/PrefixBeanStoreNamingScheme.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/beanstore/PrefixBeanStoreNamingScheme.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -16,12 +16,9 @@
*/
package org.jboss.webbeans.context.beanstore;
-import javax.enterprise.context.spi.Contextual;
-import org.jboss.webbeans.CurrentManager;
-
/**
- * Simple prefix-based implementation of a bean store naming scheme
+ * Simple prefix-based implementation of a BeanStore naming scheme
*
* @author Nicklas Karlsson
*/
@@ -45,14 +42,13 @@
return key.startsWith(prefix);
}
- public int getBeanIndexFromKey(String key)
+ public Integer getIdFromKey(String key)
{
return Integer.parseInt(key.substring(prefix.length() + delimeter.length()));
}
- public String getContextualKey(Contextual<?> contextual)
+ public String getKeyFromId(Integer id)
{
- return prefix + delimeter + CurrentManager.rootManager().getBeans().indexOf(contextual);
+ return prefix + delimeter + id;
}
-
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/conversation/AbstractConversationManager.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/conversation/AbstractConversationManager.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/conversation/AbstractConversationManager.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -32,6 +32,7 @@
import javax.enterprise.context.Conversation;
import javax.enterprise.inject.Current;
+import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.context.ConversationContext;
import org.jboss.webbeans.context.api.BeanStore;
import org.jboss.webbeans.log.LogProvider;
@@ -161,7 +162,8 @@
longRunningConversation.cancelTermination();
longRunningConversation.unlock();
}
- ConversationContext.instance().destroy();
+ ConversationContext conversationContext = CurrentManager.rootManager().getServices().get(ConversationContext.class);
+ conversationContext.destroy();
}
// If the conversation has been switched from one long
// running-conversation to another with
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/ejb/SessionBeanInterceptor.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/ejb/SessionBeanInterceptor.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/ejb/SessionBeanInterceptor.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -25,6 +25,7 @@
import javax.enterprise.context.spi.CreationalContext;
import javax.interceptor.InvocationContext;
+import org.jboss.webbeans.ContextualIdStore;
import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.bean.EnterpriseBean;
import org.jboss.webbeans.bean.proxy.EnterpriseBeanInstance;
@@ -46,7 +47,7 @@
private transient EnterpriseBean<Object> bean;
private transient CreationalContext<Object> creationalContext;
- private String beanId;
+ private Integer beanId;
private boolean contextual;
/**
@@ -107,7 +108,7 @@
this.bean = (EnterpriseBean<Object>) CurrentManager.rootManager().getNewEnterpriseBeanMap().get(beanClass);
this.contextual = false;
}
- this.beanId = this.bean.getId();
+ this.beanId = CurrentManager.rootManager().getServices().get(ContextualIdStore.class).getId(this.bean);
}
private static <T> EnterpriseBeanInstance getEnterpriseBeanInstance(EnterpriseBean<T> bean)
@@ -132,7 +133,7 @@
ois.defaultReadObject();
if (beanId != null)
{
- bean = (EnterpriseBean<Object>) CurrentManager.rootManager().getRiBeans().get(beanId);
+ bean = (EnterpriseBean<Object>) CurrentManager.rootManager().getServices().get(ContextualIdStore.class).getContextual(beanId);
}
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/el/WebBeansELResolver.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/el/WebBeansELResolver.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/el/WebBeansELResolver.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -26,6 +26,7 @@
@Override
protected ELResolver delegate()
{
+ // TODO look in the correct manager
return CurrentManager.rootManager().getCurrent().getELResolver();
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/event/AsynchronousTransactionalEventNotification.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/event/AsynchronousTransactionalEventNotification.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/event/AsynchronousTransactionalEventNotification.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -16,7 +16,6 @@
*/
package org.jboss.webbeans.event;
-import org.jboss.webbeans.context.DependentContext;
import org.jboss.webbeans.log.Log;
import org.jboss.webbeans.log.Logging;
@@ -41,7 +40,6 @@
public void run()
{
// Let the event be deferred again as just an asynchronous event
- DependentContext.instance().setActive(true);
try
{
log.trace("Sending event [" + event + "] asynchronously to transaction observer " + observer);
@@ -51,10 +49,6 @@
{
log.error("Failure while queuing observer for event [" + event + "]", e);
}
- finally
- {
- DependentContext.instance().setActive(false);
- }
}
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/event/DeferredEventNotification.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/event/DeferredEventNotification.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/event/DeferredEventNotification.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -51,7 +51,7 @@
public void run()
{
- ContextLifecycle lifecycle = getLifecycle();
+ ContextLifecycle lifecycle = CurrentManager.rootManager().getServices().get(ContextLifecycle.class);
BeanStore requestBeanStore = new ConcurrentHashMapBeanStore();
lifecycle.beginRequest("async invocation", requestBeanStore);
try
@@ -75,8 +75,4 @@
return "Deferred event [" + event + "] for [" + observer + "]";
}
- private ContextLifecycle getLifecycle()
- {
- return CurrentManager.rootManager().getServices().get(ContextLifecycle.class);
- }
}
Deleted: ri/trunk/impl/src/main/java/org/jboss/webbeans/injection/NonContextualInjector.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/injection/NonContextualInjector.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/injection/NonContextualInjector.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -1,137 +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.injection;
-
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Type;
-import java.util.Collections;
-import java.util.Set;
-import java.util.concurrent.Callable;
-
-import javax.enterprise.context.Dependent;
-import javax.enterprise.context.spi.CreationalContext;
-import javax.enterprise.inject.deployment.Standard;
-import javax.enterprise.inject.spi.Bean;
-import javax.enterprise.inject.spi.InjectionPoint;
-
-import org.jboss.webbeans.BeanManagerImpl;
-import org.jboss.webbeans.context.ApplicationContext;
-import org.jboss.webbeans.context.DependentContext;
-import org.jboss.webbeans.resources.ClassTransformer;
-import org.jboss.webbeans.util.Beans;
-import org.jboss.webbeans.util.collections.ConcurrentCache;
-
-public class NonContextualInjector
-{
-
- private final Bean<?> nonContextualBean;
-
- private final ConcurrentCache<Class<?>, Set<FieldInjectionPoint<?>>> instances;
- private final BeanManagerImpl manager;
-
- public NonContextualInjector(BeanManagerImpl manager)
- {
- this.instances = new ConcurrentCache<Class<?>, Set<FieldInjectionPoint<?>>>();
- this.manager = manager;
- nonContextualBean = new Bean<Object>()
- {
-
- public Set<Annotation> getBindings()
- {
- return Collections.emptySet();
- }
-
- public Class<? extends Annotation> getDeploymentType()
- {
- return Standard.class;
- }
-
- public Set<InjectionPoint> getInjectionPoints()
- {
- return Collections.emptySet();
- }
-
- public String getName()
- {
- return null;
- }
-
- public Class<? extends Annotation> getScopeType()
- {
- return Dependent.class;
- }
-
- public Set<Type> getTypes()
- {
- return Collections.emptySet();
- }
-
- public boolean isNullable()
- {
- return false;
- }
-
- public boolean isSerializable()
- {
- return true;
- }
-
- public Object create(CreationalContext<Object> creationalContext)
- {
- return null;
- }
-
- public void destroy(Object instance, CreationalContext<Object> context)
- {
- }
-
- };
- }
-
- public void inject(final Object instance)
- {
- if (DependentContext.instance() != null && ApplicationContext.instance() != null)
- {
- DependentContext.instance().setActive(true);
- boolean startApplication = !ApplicationContext.instance().isActive();
- if (startApplication)
- {
- ApplicationContext.instance().setActive(true);
- }
- Set<FieldInjectionPoint<?>> injectionPoints = instances.putIfAbsent(instance.getClass(), new Callable<Set<FieldInjectionPoint<?>>>()
- {
-
- public Set<FieldInjectionPoint<?>> call() throws Exception
- {
- return Beans.getFieldInjectionPoints(manager.getServices().get(ClassTransformer.class).loadClass(instance.getClass()), nonContextualBean);
- }
-
- }
- );
- for (FieldInjectionPoint<?> injectionPoint : injectionPoints)
- {
- injectionPoint.inject(instance, manager, null);
- }
- DependentContext.instance().setActive(false);
- if (startApplication)
- {
- ApplicationContext.instance().setActive(false);
- }
- }
- }
-
-}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/jsf/ConversationAwareViewHandler.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/jsf/ConversationAwareViewHandler.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/jsf/ConversationAwareViewHandler.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -21,7 +21,6 @@
import javax.faces.application.ViewHandlerWrapper;
import javax.faces.context.FacesContext;
-import org.jboss.webbeans.BeanManagerImpl;
import org.jboss.webbeans.CurrentManager;
/**
@@ -67,8 +66,7 @@
public String getActionURL(FacesContext context, String viewId)
{
String actionUrl = super.getActionURL(context, viewId);
- BeanManagerImpl beanManager = CurrentManager.rootManager();
- Conversation conversation = beanManager.getInstanceByType(Conversation.class);
+ Conversation conversation = CurrentManager.rootManager().getInstanceByType(Conversation.class);
if (conversation.isLongRunning())
{
return new FacesUrlTransformer(actionUrl).appendConversationIdIfNecessary(conversation.getId()).getUrl();
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/jsf/WebBeansPhaseListener.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/jsf/WebBeansPhaseListener.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/jsf/WebBeansPhaseListener.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -112,11 +112,13 @@
*/
private void afterRenderResponse()
{
- if (SessionContext.instance().isActive())
+ SessionContext sessionContext = CurrentManager.rootManager().getServices().get(SessionContext.class);
+ ConversationContext conversationContext = CurrentManager.rootManager().getServices().get(ConversationContext.class);
+ if (sessionContext.isActive())
{
log.trace("Cleaning up the conversation after the Render Response phase");
CurrentManager.rootManager().getInstanceByType(ConversationManager.class).cleanupConversation();
- ConversationContext.instance().setActive(false);
+ conversationContext.setActive(false);
}
else
{
@@ -129,7 +131,8 @@
*/
private void afterResponseComplete(PhaseId phaseId)
{
- if (SessionContext.instance().isActive())
+ SessionContext sessionContext = CurrentManager.rootManager().getServices().get(SessionContext.class);
+ if (sessionContext.isActive())
{
log.trace("Cleaning up the conversation after the " + phaseId + " phase as the response has been marked complete");
CurrentManager.rootManager().getInstanceByType(ConversationManager.class).cleanupConversation();
@@ -152,8 +155,10 @@
CurrentManager.rootManager().getInstanceByType(HttpSessionManager.class).setSession(session);
CurrentManager.rootManager().getInstanceByType(ConversationManager.class).beginOrRestoreConversation(PhaseHelper.getConversationId());
String cid = CurrentManager.rootManager().getInstanceByType(Conversation.class).getId();
- ConversationContext.instance().setBeanStore(new ConversationBeanStore(session, cid));
- ConversationContext.instance().setActive(true);
+
+ ConversationContext conversationContext = CurrentManager.rootManager().getServices().get(ConversationContext.class);
+ conversationContext.setBeanStore(new ConversationBeanStore(session, cid));
+ conversationContext.setActive(true);
}
/**
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/resources/ManagerObjectFactory.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/resources/ManagerObjectFactory.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/resources/ManagerObjectFactory.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -29,6 +29,7 @@
public Object getObjectInstance(Object obj, Name name, Context nameCtx, Hashtable<?, ?> environment) throws Exception
{
+ // TODO This should return the bean deployment archive manager
return CurrentManager.rootManager().getCurrent();
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/servlet/ConversationPropagationFilter.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/servlet/ConversationPropagationFilter.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/servlet/ConversationPropagationFilter.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -51,6 +51,7 @@
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException
{
+
chain.doFilter(request, wrapResponse((HttpServletResponse) response));
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -75,11 +75,13 @@
*/
public void endSession(HttpSession session)
{
- if (SessionContext.instance().isActive())
+ SessionContext sessionContext = CurrentManager.rootManager().getServices().get(SessionContext.class);
+ RequestContext requestContext = CurrentManager.rootManager().getServices().get(RequestContext.class);
+ if (sessionContext.isActive())
{
- lifecycle.endSession(session.getId(), SessionContext.instance().getBeanStore());
+ lifecycle.endSession(session.getId(), sessionContext.getBeanStore());
}
- else if (RequestContext.instance().isActive())
+ else if (requestContext.isActive())
{
lifecycle.endSession(session.getId(), restoreSessionContext(session));
}
@@ -153,8 +155,9 @@
}
lifecycle.endRequest(request.getRequestURI(), beanStore);
request.removeAttribute(REQUEST_ATTRIBUTE_NAME);
- SessionContext.instance().setActive(false);
- SessionContext.instance().setBeanStore(null);
+ SessionContext sessionContext = CurrentManager.rootManager().getServices().get(SessionContext.class);
+ sessionContext.setActive(false);
+ sessionContext.setBeanStore(null);
}
}
Modified: ri/trunk/porting-package/src/main/java/org/jboss/webbeans/tck/ContextsImpl.java
===================================================================
--- ri/trunk/porting-package/src/main/java/org/jboss/webbeans/tck/ContextsImpl.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/porting-package/src/main/java/org/jboss/webbeans/tck/ContextsImpl.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -1,6 +1,7 @@
package org.jboss.webbeans.tck;
import org.jboss.jsr299.tck.spi.Contexts;
+import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.context.AbstractContext;
import org.jboss.webbeans.context.AbstractMapContext;
import org.jboss.webbeans.context.DependentContext;
@@ -11,7 +12,7 @@
public RequestContext getRequestContext()
{
- return RequestContext.instance();
+ return CurrentManager.rootManager().getServices().get(RequestContext.class);
}
public void setActive(AbstractContext context)
@@ -26,7 +27,7 @@
public AbstractContext getDependentContext()
{
- return DependentContext.instance();
+ return CurrentManager.rootManager().getServices().get(DependentContext.class);
}
public void destroyContext(AbstractContext context)
Deleted: ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/BeanInstance.java
===================================================================
--- ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/BeanInstance.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/BeanInstance.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -1,15 +0,0 @@
-package org.jboss.webbeans.context.api;
-
-import javax.enterprise.context.spi.Contextual;
-import javax.enterprise.context.spi.CreationalContext;
-
-public interface BeanInstance<T>
-{
-
- public T getInstance();
-
- public CreationalContext<T> getCreationalContext();
-
- public Contextual<T> getContextual();
-
-}
Modified: ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/BeanStore.java
===================================================================
--- ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/BeanStore.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/BeanStore.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -21,8 +21,7 @@
/**
- * Interface for different implementations of Bean to Bean instance storage.
- * Used primarily by the contexts.
+ * Interface for different implementations of Contextual instance storage.
*
* @author Nicklas Karlsson
*
@@ -30,31 +29,30 @@
public interface BeanStore
{
/**
- * Gets an instance of a bean from the storage.
+ * Gets an instance of a contextual from the store
*
- * @param bean The bean whose instance to return
+ * @param contextual The contextual whose instance is to be return
* @return The instance. Null if not found
*/
- public abstract <T> BeanInstance<T> get(Contextual<? extends T> bean);
+ public abstract <T> ContexutalInstance<T> get(Contextual<? extends T> contextual);
/**
- * Clears the storage of any bean instances
+ * Clears the store of contextual instances
*/
public abstract void clear();
/**
- * Returns an Iterable over the current contents in the storage
+ * Returns an iteration over the current contextual instances in the store
*
- * @return An Iterable over the keys in the storage
+ * @return the iteration
*/
- public abstract Iterable<Contextual<? extends Object>> getBeans();
+ public abstract Iterable<Contextual<?>> getContextuals();
/**
* Adds a bean instance to the storage
*
- * @param bean The bean type. Used as key
- * @param instance The instance to add
+ * @param contextualInstance the contextual instance
* @return The instance added
*/
- public abstract <T> void put(BeanInstance<T> beanInstance);
+ public abstract <T> void put(ContexutalInstance<T> contextualInstance);
}
\ No newline at end of file
Copied: ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/ContexutalInstance.java (from rev 3013, ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/BeanInstance.java)
===================================================================
--- ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/ContexutalInstance.java (rev 0)
+++ ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/ContexutalInstance.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -0,0 +1,15 @@
+package org.jboss.webbeans.context.api;
+
+import javax.enterprise.context.spi.Contextual;
+import javax.enterprise.context.spi.CreationalContext;
+
+public interface ContexutalInstance<T>
+{
+
+ public T getInstance();
+
+ public CreationalContext<T> getCreationalContext();
+
+ public Contextual<T> getContextual();
+
+}
Property changes on: ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/ContexutalInstance.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/AbstractMapBackedBeanStore.java
===================================================================
--- ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/AbstractMapBackedBeanStore.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/AbstractMapBackedBeanStore.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -5,7 +5,7 @@
import javax.enterprise.context.spi.Contextual;
-import org.jboss.webbeans.context.api.BeanInstance;
+import org.jboss.webbeans.context.api.ContexutalInstance;
import org.jboss.webbeans.context.api.BeanStore;
public abstract class AbstractMapBackedBeanStore implements BeanStore
@@ -16,7 +16,7 @@
super();
}
- public abstract Map<Contextual<? extends Object>, BeanInstance<? extends Object>> delegate();
+ public abstract Map<Contextual<? extends Object>, ContexutalInstance<? extends Object>> delegate();
/**
* Gets an instance from the store
@@ -26,10 +26,10 @@
*
* @see org.jboss.webbeans.context.api.BeanStore#get(BaseBean)
*/
- public <T extends Object> BeanInstance<T> get(Contextual<? extends T> bean)
+ public <T extends Object> ContexutalInstance<T> get(Contextual<? extends T> bean)
{
@SuppressWarnings("unchecked")
- BeanInstance<T> instance = (BeanInstance<T>) delegate().get(bean);
+ ContexutalInstance<T> instance = (ContexutalInstance<T>) delegate().get(bean);
return instance;
}
@@ -48,9 +48,9 @@
*
* @return The beans present
*
- * @see org.jboss.webbeans.context.api.BeanStore#getBeans()
+ * @see org.jboss.webbeans.context.api.BeanStore#getContextuals()
*/
- public Set<Contextual<? extends Object>> getBeans()
+ public Set<Contextual<? extends Object>> getContextuals()
{
return delegate().keySet();
}
@@ -63,7 +63,7 @@
*
* @see org.jboss.webbeans.context.api.BeanStore#put(Contextual, Object)
*/
- public <T> void put(BeanInstance<T> beanInstance)
+ public <T> void put(ContexutalInstance<T> beanInstance)
{
delegate().put(beanInstance.getContextual(), beanInstance);
}
Modified: ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/ConcurrentHashMapBeanStore.java
===================================================================
--- ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/ConcurrentHashMapBeanStore.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/ConcurrentHashMapBeanStore.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -23,7 +23,7 @@
import javax.enterprise.context.spi.Contextual;
-import org.jboss.webbeans.context.api.BeanInstance;
+import org.jboss.webbeans.context.api.ContexutalInstance;
/**
* A BeanStore that uses a HashMap as backing storage
@@ -36,14 +36,14 @@
private static final long serialVersionUID = 4770689245633688471L;
// The backing map
- protected Map<Contextual<? extends Object>, BeanInstance<? extends Object>> delegate;
+ protected Map<Contextual<? extends Object>, ContexutalInstance<? extends Object>> delegate;
/**
* Constructor
*/
public ConcurrentHashMapBeanStore()
{
- delegate = new ConcurrentHashMap<Contextual<? extends Object>, BeanInstance<? extends Object>>();
+ delegate = new ConcurrentHashMap<Contextual<? extends Object>, ContexutalInstance<? extends Object>>();
}
/**
@@ -52,7 +52,7 @@
* @return The delegate
*/
@Override
- public Map<Contextual<? extends Object>, BeanInstance<? extends Object>> delegate()
+ public Map<Contextual<? extends Object>, ContexutalInstance<? extends Object>> delegate()
{
return delegate;
}
Modified: ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/ForwardingBeanStore.java
===================================================================
--- ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/ForwardingBeanStore.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/spi/src/main/java/org/jboss/webbeans/context/api/helpers/ForwardingBeanStore.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -2,7 +2,7 @@
import javax.enterprise.context.spi.Contextual;
-import org.jboss.webbeans.context.api.BeanInstance;
+import org.jboss.webbeans.context.api.ContexutalInstance;
import org.jboss.webbeans.context.api.BeanStore;
public abstract class ForwardingBeanStore implements BeanStore
@@ -15,17 +15,17 @@
delegate().clear();
}
- public <T> BeanInstance<T> get(Contextual<? extends T> bean)
+ public <T> ContexutalInstance<T> get(Contextual<? extends T> bean)
{
return delegate().get(bean);
}
- public Iterable<Contextual<? extends Object>> getBeans()
+ public Iterable<Contextual<? extends Object>> getContextuals()
{
- return delegate().getBeans();
+ return delegate().getContextuals();
}
- public <T> void put(BeanInstance<T> beanInstance)
+ public <T> void put(ContexutalInstance<T> beanInstance)
{
delegate().put(beanInstance);
}
Modified: ri/trunk/tests/src/main/java/org/jboss/webbeans/test/AbstractWebBeansTest.java
===================================================================
--- ri/trunk/tests/src/main/java/org/jboss/webbeans/test/AbstractWebBeansTest.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/tests/src/main/java/org/jboss/webbeans/test/AbstractWebBeansTest.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -22,7 +22,6 @@
import org.jboss.testharness.AbstractTest;
import org.jboss.webbeans.BeanManagerImpl;
import org.jboss.webbeans.CurrentManager;
-import org.jboss.webbeans.context.DependentContext;
import org.jboss.webbeans.mock.el.EL;
import org.jboss.webbeans.util.collections.EnumerationIterable;
import org.testng.ITestContext;
@@ -33,36 +32,6 @@
public abstract class AbstractWebBeansTest extends AbstractTest
{
- protected abstract static class RunInDependentContext
- {
-
- protected void setup()
- {
- DependentContext.instance().setActive(true);
- }
-
- protected void cleanup()
- {
- DependentContext.instance().setActive(false);
- }
-
- public final void run() throws Exception
- {
- try
- {
- setup();
- execute();
- }
- finally
- {
- cleanup();
- }
- }
-
- protected abstract void execute() throws Exception;
-
- }
-
protected static final int BUILT_IN_BEANS = 3;
private BeanManagerImpl manager;
Modified: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/examples/ExampleTest.java
===================================================================
--- ri/trunk/tests/src/test/java/org/jboss/webbeans/test/examples/ExampleTest.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/tests/src/test/java/org/jboss/webbeans/test/examples/ExampleTest.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -8,49 +8,32 @@
public class ExampleTest extends AbstractWebBeansTest
{
@Test
- public void testGameGenerator() throws Exception {
-
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- Game game1 = getCurrentManager().getInstanceByType(Game.class);
- Game game2 = getCurrentManager().getInstanceByType(Game.class);
- assert game1!=game2;
- assert game1.getNumber()!=game2.getNumber();
- Generator gen1 = getCurrentManager().getInstanceByType(Generator.class);
- Generator gen2 = getCurrentManager().getInstanceByType(Generator.class);
- assert gen1.getRandom()!=null;
- assert gen1.getRandom()==gen2.getRandom();
- }
-
- }.run();
+ public void testGameGenerator() throws Exception
+ {
+ Game game1 = getCurrentManager().getInstanceByType(Game.class);
+ Game game2 = getCurrentManager().getInstanceByType(Game.class);
+ assert game1!=game2;
+ assert game1.getNumber()!=game2.getNumber();
+ Generator gen1 = getCurrentManager().getInstanceByType(Generator.class);
+ Generator gen2 = getCurrentManager().getInstanceByType(Generator.class);
+ assert gen1.getRandom()!=null;
+ assert gen1.getRandom()==gen2.getRandom();
}
@Test
- public void testSentenceTranslator() throws Exception {
+ public void testSentenceTranslator() throws Exception
+ {
- new RunInDependentContext()
+ TextTranslator tt1 = getCurrentManager().getInstanceByType(TextTranslator.class);
+ try
{
-
- @Override
- protected void execute() throws Exception
- {
- TextTranslator tt1 = getCurrentManager().getInstanceByType(TextTranslator.class);
- try
- {
- tt1.translate("hello world");
- assert false;
- }
- catch (UnsupportedOperationException uoe)
- {
- //expected
- }
- }
-
- }.run();
+ tt1.translate("hello world");
+ assert false;
+ }
+ catch (UnsupportedOperationException uoe)
+ {
+ //expected
+ }
}
}
Modified: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/examples/MockExampleTest.java
===================================================================
--- ri/trunk/tests/src/test/java/org/jboss/webbeans/test/examples/MockExampleTest.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/tests/src/test/java/org/jboss/webbeans/test/examples/MockExampleTest.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -13,18 +13,8 @@
@Test
public void testMockSentenceTranslator() throws Exception
{
-
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- TextTranslator tt2 = getCurrentManager().getInstanceByType(TextTranslator.class);
- assert "Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.".equals( tt2.translate("Hello world. How's tricks?") );
- }
-
- }.run();
+ TextTranslator tt2 = getCurrentManager().getInstanceByType(TextTranslator.class);
+ assert "Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.".equals( tt2.translate("Hello world. How's tricks?") );
}
}
Modified: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/deployment/structure/AccessibleManagerResolutionTest.java
===================================================================
--- ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/deployment/structure/AccessibleManagerResolutionTest.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/deployment/structure/AccessibleManagerResolutionTest.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -1,6 +1,6 @@
package org.jboss.webbeans.test.unit.deployment.structure;
-import org.jboss.webbeans.BeanIdStore;
+import org.jboss.webbeans.ContextualIdStore;
import org.jboss.webbeans.BeanManagerImpl;
import org.jboss.webbeans.bean.RIBean;
import org.jboss.webbeans.bean.SimpleBean;
@@ -28,7 +28,7 @@
this.classTransformer = new ClassTransformer(new TypeStore());
this.services = new SimpleServiceRegistry();
this.services.add(MetaAnnotationStore.class, new MetaAnnotationStore(classTransformer));
- this.services.add(BeanIdStore.class, new BeanIdStore());
+ this.services.add(ContextualIdStore.class, new ContextualIdStore());
}
private void addBean(BeanManagerImpl manager, Class<?> c)
Modified: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/environments/servlet/ServletLifecycleTest.java
===================================================================
--- ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/environments/servlet/ServletLifecycleTest.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/environments/servlet/ServletLifecycleTest.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -1,15 +1,6 @@
package org.jboss.webbeans.test.unit.environments.servlet;
-import javax.servlet.http.HttpSession;
-
import org.jboss.testharness.impl.packaging.Artifact;
-import org.jboss.webbeans.context.ContextLifecycle;
-import org.jboss.webbeans.context.RequestContext;
-import org.jboss.webbeans.context.SessionContext;
-import org.jboss.webbeans.context.api.BeanStore;
-import org.jboss.webbeans.context.api.helpers.ConcurrentHashMapBeanStore;
-import org.jboss.webbeans.mock.MockHttpSession;
-import org.jboss.webbeans.servlet.ServletLifecycle;
import org.jboss.webbeans.test.AbstractWebBeansTest;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
@@ -24,61 +15,63 @@
* i/c test that runs in a servlet container OR without using the deployment
* arch
*
+ * TODO Rewrite correctly
+ *
* @author Dan Allen
*/
@Artifact
public class ServletLifecycleTest extends AbstractWebBeansTest
{
- @Test(groups = "incontainer-broken")
+ @Test(groups = "broken")
public void testEndSessionWithActiveRequestAndSessionContexts()
{
- ServletLifecycle servletLifecycle = new ServletLifecycle(new ContextLifecycle());
- BeanStore requestBeanStore = new ConcurrentHashMapBeanStore();
- RequestContext.instance().setBeanStore(requestBeanStore);
- RequestContext.instance().setActive(true);
-
- BeanStore sessionBeanStore = new ConcurrentHashMapBeanStore();
- SessionContext.instance().setBeanStore(sessionBeanStore);
- SessionContext.instance().setActive(true);
-
- HttpSession session = new MockHttpSession("99");
- servletLifecycle.endSession(session);
- assert Boolean.FALSE.equals(SessionContext.instance().isActive()) : "Session context should no longer be active";
- assert Boolean.TRUE.equals(RequestContext.instance().isActive()) : "Request context should still be active";
+// ServletLifecycle servletLifecycle = new ServletLifecycle(new ContextLifecycle());
+// BeanStore requestBeanStore = new ConcurrentHashMapBeanStore();
+// RequestContext.instance().setBeanStore(requestBeanStore);
+// RequestContext.instance().setActive(true);
+//
+// BeanStore sessionBeanStore = new ConcurrentHashMapBeanStore();
+// SessionContext.instance().setBeanStore(sessionBeanStore);
+// SessionContext.instance().setActive(true);
+//
+// HttpSession session = new MockHttpSession("99");
+// servletLifecycle.endSession(session);
+// assert Boolean.FALSE.equals(SessionContext.instance().isActive()) : "Session context should no longer be active";
+// assert Boolean.TRUE.equals(RequestContext.instance().isActive()) : "Request context should still be active";
}
- @Test(groups = "incontainer-broken")
+ @Test(groups = "broken")
public void testEndSessionWithActiveRequestContextOnly()
{
- ServletLifecycle servletLifecycle = new ServletLifecycle(new ContextLifecycle());
- BeanStore requestBeanStore = new ConcurrentHashMapBeanStore();
- RequestContext.instance().setBeanStore(requestBeanStore);
- RequestContext.instance().setActive(true);
-
- HttpSession session = new MockHttpSession("99");
- servletLifecycle.endSession(session);
- assert Boolean.FALSE.equals(SessionContext.instance().isActive()) : "Session context should no longer be active";
- assert Boolean.TRUE.equals(RequestContext.instance().isActive()) : "Request context should still be active";
+// ServletLifecycle servletLifecycle = new ServletLifecycle(new ContextLifecycle());
+// BeanStore requestBeanStore = new ConcurrentHashMapBeanStore();
+// RequestContext.instance().setBeanStore(requestBeanStore);
+// RequestContext.instance().setActive(true);
+//
+// HttpSession session = new MockHttpSession("99");
+// servletLifecycle.endSession(session);
+// assert Boolean.FALSE.equals(SessionContext.instance().isActive()) : "Session context should no longer be active";
+// assert Boolean.TRUE.equals(RequestContext.instance().isActive()) : "Request context should still be active";
}
- @Test(groups = "incontainer-broken")
+ @Test(groups = "broken")
public void testEndSessionWithNoActiveRequestOrSessionContexts()
{
- ServletLifecycle servletLifecycle = new ServletLifecycle(new ContextLifecycle());
-
- HttpSession session = new MockHttpSession("99");
- servletLifecycle.endSession(session);
- assert Boolean.FALSE.equals(SessionContext.instance().isActive()) : "Session context should no longer be active";
- assert Boolean.FALSE.equals(RequestContext.instance().isActive()) : "Temporary request context should have been deactivated";
+// ServletLifecycle servletLifecycle = new ServletLifecycle(new ContextLifecycle());
+//
+// HttpSession session = new MockHttpSession("99");
+// servletLifecycle.endSession(session);
+// assert Boolean.FALSE.equals(SessionContext.instance().isActive()) : "Session context should no longer be active";
+// assert Boolean.FALSE.equals(RequestContext.instance().isActive()) : "Temporary request context should have been deactivated";
}
- @BeforeMethod(groups = "incontainer-broken")
+ @BeforeMethod(groups = "broken")
public void beforeMethod()
{
- RequestContext.instance().setBeanStore(null);
- RequestContext.instance().setActive(false);
- SessionContext.instance().setBeanStore(null);
- SessionContext.instance().setActive(false);
+// RequestContext.instance().setBeanStore(null);
+// RequestContext.instance().setActive(false);
+// SessionContext.instance().setBeanStore(null);
+// SessionContext.instance().setActive(false);
}
}
Modified: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/exceptions/ExceptionHandlingTest.java
===================================================================
--- ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/exceptions/ExceptionHandlingTest.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/exceptions/ExceptionHandlingTest.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -14,52 +14,34 @@
@Test(expectedExceptions=FooException.class)
public void testCreationExceptionWrapsRealExceptionForSimpleBean() throws Exception
{
- new RunInDependentContext()
+ try
{
-
- @Override
- protected void execute() throws Exception
+ getCurrentManager().getInstanceByType(Lorry_Broken.class);
+ }
+ catch (Exception e)
+ {
+ if (e instanceof CreationException)
{
- try
- {
- getCurrentManager().getInstanceByType(Lorry_Broken.class);
- }
- catch (Exception e)
- {
- if (e instanceof CreationException)
- {
- throw (Exception) e.getCause();
- }
- }
+ throw (Exception) e.getCause();
}
-
- }.run();
+ }
}
@Test(expectedExceptions=FooException.class)
public void testCreationExceptionWrapsRealExceptionForProducerBean() throws Exception
{
- new RunInDependentContext()
+ try
{
-
- @Override
- protected void execute() throws Exception
+ getCurrentManager().getInstanceByType(Ship.class, new AnnotationLiteral<Large>() {});
+ }
+ catch (Exception e)
+ {
+ if (e instanceof CreationException)
{
- try
- {
- getCurrentManager().getInstanceByType(Ship.class, new AnnotationLiteral<Large>() {});
- }
- catch (Exception e)
- {
- if (e instanceof CreationException)
- {
- throw (Exception) e.getCause();
- }
- }
+ throw (Exception) e.getCause();
}
-
- }.run();
+ }
}
}
Modified: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/proxy/enterprise/EnterpriseBeanProxyTest.java
===================================================================
--- ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/proxy/enterprise/EnterpriseBeanProxyTest.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/proxy/enterprise/EnterpriseBeanProxyTest.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -19,19 +19,9 @@
@Test(description="WBRI-109")
public void testNoInterfaceView() throws Exception
{
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- Object mouse = getCurrentManager().getInstanceByType(MouseLocal.class);
- assert mouse instanceof ProxyObject;
- assert mouse instanceof MouseLocal;
- }
-
- }.run();
-
+ Object mouse = getCurrentManager().getInstanceByType(MouseLocal.class);
+ assert mouse instanceof ProxyObject;
+ assert mouse instanceof MouseLocal;
}
}
Modified: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/circular/CircularDependencyTest.java
===================================================================
--- ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/circular/CircularDependencyTest.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/lookup/circular/CircularDependencyTest.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -20,234 +20,93 @@
@Test
public void testCircularInjectionOnOneNormalAndOneDependentBean() throws Exception
{
- //deployBeans(Car.class, Petrol.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(Car.class).getName();
- assert Petrol.success;
- assert Car.success;
- }
-
- }.run();
+ getCurrentManager().getInstanceByType(Car.class).getName();
+ assert Petrol.success;
+ assert Car.success;
}
@Test
public void testCircularInjectionOnOneDependentAndOneNormalBean() throws Exception
{
- //deployBeans(Car.class, Petrol.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(Petrol.class).getName();
- assert Petrol.success;
- assert Car.success;
- }
-
- }.run();
-
+ getCurrentManager().getInstanceByType(Petrol.class).getName();
+ assert Petrol.success;
+ assert Car.success;
}
@Test
public void testCircularInjectionOnTwoSimpleDependentBeans() throws Exception
{
- //deployBeans(Foo.class, Bar.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(Foo.class).getName();
- assert Foo.success;
- assert Bar.success;
- }
-
- }.run();
+ getCurrentManager().getInstanceByType(Foo.class).getName();
+ assert Foo.success;
+ assert Bar.success;
}
@Test
public void testDependentProducerMethodDeclaredOnDependentBeanWhichInjectsProducedBean() throws Exception
{
- //deployBeans(DependentSelfConsumingDependentProducer.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(DependentSelfConsumingDependentProducer.class).ping();
- }
-
- }.run();
+ getCurrentManager().getInstanceByType(DependentSelfConsumingDependentProducer.class).ping();
}
@Test
public void testNormalProducerMethodDeclaredOnNormalBeanWhichInjectsProducedBean() throws Exception
{
- //deployBeans(NormalSelfConsumingNormalProducer.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(NormalSelfConsumingNormalProducer.class).ping();
- }
-
- }.run();
+ getCurrentManager().getInstanceByType(NormalSelfConsumingNormalProducer.class).ping();
}
@Test
public void testNormalProducerMethodDeclaredOnDependentBeanWhichInjectsProducedBean() throws Exception
{
- //deployBeans(DependentSelfConsumingNormalProducer.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(DependentSelfConsumingNormalProducer.class).ping();
- }
-
- }.run();
+ getCurrentManager().getInstanceByType(DependentSelfConsumingNormalProducer.class).ping();
}
@Test
public void testDependentProducerMethodDeclaredOnNormalBeanWhichInjectsProducedBean() throws Exception
{
- //deployBeans(NormalSelfConsumingDependentProducer.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(NormalSelfConsumingDependentProducer.class).ping();
- }
-
- }.run();
+ getCurrentManager().getInstanceByType(NormalSelfConsumingDependentProducer.class).ping();
}
@Test
public void testNormalSelfConsumingProducer() throws Exception
{
- //deployBeans(NormalLoopingProducer.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- createContextualInstance(Violation.class).ping();
- }
-
- }.run();
+ createContextualInstance(Violation.class).ping();
}
@Test(groups="broken", timeOut=1000)
public void testDependentSelfConsumingProducer() throws Exception
{
- //deployBeans(DependentLoopingProducer.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(Violation.class).ping();
- }
-
- }.run();
+ getCurrentManager().getInstanceByType(Violation.class).ping();
}
@Test(groups="broken", timeOut=1000)
public void testDependentCircularConstructors() throws Exception
{
- //deployBeans(Water.class, Fish.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(Fish.class);
- }
-
- }.run();
+ getCurrentManager().getInstanceByType(Fish.class);
}
@Test
public void testNormalCircularConstructors() throws Exception
{
- //deployBeans(Bird.class, Air.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(Bird.class);
- }
-
- }.run();
+ getCurrentManager().getInstanceByType(Bird.class);
}
@Test
public void testNormalAndDependentCircularConstructors() throws Exception
- {
- //deployBeans(Space.class, Planet.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(Planet.class);
- }
-
- }.run();
+ {
+ getCurrentManager().getInstanceByType(Planet.class);
}
@Test(groups="broken", timeOut=1000)
public void testSelfConsumingConstructorsOnDependentBean() throws Exception
- {
- //deployBeans(Farm.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(Farm.class);
- }
-
- }.run();
+ {
+ getCurrentManager().getInstanceByType(Farm.class);
}
@Test
public void testSelfConsumingConstructorsOnNormalBean() throws Exception
- {
- //deployBeans(House.class);
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- getCurrentManager().getInstanceByType(House.class);
- }
-
- }.run();
+ {
+ getCurrentManager().getInstanceByType(House.class);
}
}
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/DependentContextTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/DependentContextTest.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/DependentContextTest.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -360,20 +360,12 @@
@SpecAssertion(section = "6.4.3", id = "da")
public void testDependentsDestroyedWhenProducerMethodCompletes() throws Exception
{
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- // Reset the test class
- SpiderProducer.setDestroyed(false);
- Tarantula spiderInstance = getInstanceByType(Tarantula.class);
- assert spiderInstance != null;
- assert SpiderProducer.isDestroyed();
- }
-
- }.run();
+ // Reset the test class
+ SpiderProducer.setDestroyed(false);
+ Tarantula spiderInstance = getInstanceByType(Tarantula.class);
+ spiderInstance.ping();
+ assert spiderInstance != null;
+ assert SpiderProducer.isDestroyed();
}
@Test(groups = { "contexts", "producerField" })
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/Spider.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/Spider.java 2009-07-07 17:49:17 UTC (rev 3017)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/Spider.java 2009-07-07 19:29:23 UTC (rev 3018)
@@ -6,4 +6,9 @@
{
}
+
+ public void ping()
+ {
+
+ }
}
More information about the weld-commits
mailing list