Skip to content

Commit

Permalink
move the statics somewhere else
Browse files Browse the repository at this point in the history
git-svn-id: http://anonsvn.jboss.org/repos/weld/ri/trunk@427 1c488680-804c-0410-94cd-c6b725194a0e
  • Loading branch information
Gavin King authored and gavin.king@gmail.com committed Dec 6, 2008
1 parent 79c6cd2 commit 64a6032
Show file tree
Hide file tree
Showing 14 changed files with 39 additions and 64 deletions.
17 changes: 1 addition & 16 deletions webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java
Expand Up @@ -48,11 +48,8 @@
import org.jboss.webbeans.bean.AbstractBean;
import org.jboss.webbeans.bean.SimpleBean;
import org.jboss.webbeans.bean.proxy.ProxyPool;
import org.jboss.webbeans.contexts.ApplicationContext;
import org.jboss.webbeans.contexts.ContextMap;
import org.jboss.webbeans.contexts.DependentContext;
import org.jboss.webbeans.contexts.RequestContext;
import org.jboss.webbeans.contexts.SessionContext;
import org.jboss.webbeans.ejb.DefaultEnterpriseBeanLookup;
import org.jboss.webbeans.event.EventManager;
import org.jboss.webbeans.exceptions.NameResolutionLocation;
Expand All @@ -74,19 +71,7 @@
public class ManagerImpl implements Manager
{
public static final String JNDI_KEY = "java:comp/Manager";

protected static ManagerImpl rootManager = new ManagerImpl();
static {
rootManager.addContext(RequestContext.INSTANCE);
rootManager.addContext(SessionContext.INSTANCE);
rootManager.addContext(ApplicationContext.INSTANCE);
}

public static ManagerImpl rootManager()
{
return rootManager;
}


private List<Class<? extends Annotation>> enabledDeploymentTypes;
private MetaDataCache metaDataCache;
private EventManager eventManager;
Expand Down
Expand Up @@ -25,7 +25,7 @@
import javax.webbeans.manager.Bean;
import javax.webbeans.manager.Context;

import org.jboss.webbeans.ManagerImpl;
import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.util.Reflections;

/**
Expand Down Expand Up @@ -72,9 +72,9 @@ public Object invoke(Object self, Method method, Method proceed, Object[] args)
//TODO: account for child managers
if (bean == null)
{
bean = ManagerImpl.rootManager().getBeans().get(beanIndex);
bean = CurrentManager.rootManager().getBeans().get(beanIndex);
}
Context context = ManagerImpl.rootManager().getContext(bean.getScopeType());
Context context = CurrentManager.rootManager().getContext(bean.getScopeType());
Object proxiedInstance = context.get(bean, true);
Method proxiedMethod = Reflections.lookupMethod(method, proxiedInstance);
return proxiedMethod.invoke(proxiedInstance, args);
Expand Down
Expand Up @@ -29,7 +29,7 @@
import javax.webbeans.DefinitionException;
import javax.webbeans.manager.Bean;

import org.jboss.webbeans.ManagerImpl;
import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.util.ConcurrentCache;

/**
Expand Down Expand Up @@ -151,7 +151,7 @@ public <T> T getClientProxy(final Bean<T> bean)

public T call() throws Exception
{
int beanIndex = ManagerImpl.rootManager().getBeans().indexOf(bean);
int beanIndex = CurrentManager.rootManager().getBeans().indexOf(bean);
if (beanIndex < 0)
{
throw new DefinitionException(bean + " is not known to the manager");
Expand Down
Expand Up @@ -26,6 +26,7 @@
import java.util.HashSet;
import java.util.Set;

import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.ManagerImpl;
import org.jboss.webbeans.bean.AbstractBean;
import org.jboss.webbeans.bean.AbstractClassBean;
Expand Down Expand Up @@ -58,7 +59,7 @@ public class Bootstrap
*/
public Bootstrap()
{
JNDI.set(ManagerImpl.JNDI_KEY, ManagerImpl.rootManager());
JNDI.set(ManagerImpl.JNDI_KEY, CurrentManager.rootManager());
}

/**
Expand All @@ -81,7 +82,7 @@ public void registerBeans(Class<?>... classes)
public void registerBeans(Iterable<Class<?>> classes)
{
Set<AbstractBean<?, ?>> beans = createBeans(classes);
ManagerImpl.rootManager().setBeans(beans);
CurrentManager.rootManager().setBeans(beans);
}

/**
Expand Down Expand Up @@ -114,7 +115,7 @@ public void registerBeans(Iterable<Class<?>> classes)
for (Class<?> clazz : classes)
{
AbstractClassBean<?> bean;
if (ManagerImpl.rootManager().getMetaDataCache().getEjbMetaData(clazz).isEjb())
if (CurrentManager.rootManager().getMetaDataCache().getEjbMetaData(clazz).isEjb())
{
bean = createEnterpriseBean(clazz);
}
Expand All @@ -123,18 +124,18 @@ public void registerBeans(Iterable<Class<?>> classes)
bean = createSimpleBean(clazz);
}
beans.add(bean);
ManagerImpl.rootManager().getResolver().addInjectionPoints(bean.getInjectionPoints());
CurrentManager.rootManager().getResolver().addInjectionPoints(bean.getInjectionPoints());
for (AnnotatedMethod<Object> producerMethod : bean.getProducerMethods())
{
ProducerMethodBean<?> producerMethodBean = createProducerMethodBean(producerMethod, bean);
beans.add(producerMethodBean);
ManagerImpl.rootManager().getResolver().addInjectionPoints(producerMethodBean.getInjectionPoints());
CurrentManager.rootManager().getResolver().addInjectionPoints(producerMethodBean.getInjectionPoints());
}
for (AnnotatedField<Object> eventField : bean.getEventFields())
{
EventBean<?> eventBean = createEventBean(eventField);
beans.add(eventBean);
ManagerImpl.rootManager().getResolver().addInjectionPoints(eventBean.getInjectionPoints());
CurrentManager.rootManager().getResolver().addInjectionPoints(eventBean.getInjectionPoints());
}
log.info("Web Bean: " + bean);
}
Expand All @@ -159,7 +160,7 @@ public void boot(WebBeanDiscovery webBeanDiscovery)
}
registerBeans(webBeanDiscovery.discoverWebBeanClasses());
log.info("Validing Web Bean injection points");
ManagerImpl.rootManager().getResolver().resolveInjectionPoints();
CurrentManager.rootManager().getResolver().resolveInjectionPoints();
}

/**
Expand Down
Expand Up @@ -19,7 +19,7 @@

import javax.webbeans.manager.Contextual;

import org.jboss.webbeans.ManagerImpl;
import org.jboss.webbeans.CurrentManager;

public abstract class AbstractBeanMapAdaptor implements BeanMap
{
Expand All @@ -40,7 +40,7 @@ public abstract class AbstractBeanMapAdaptor implements BeanMap
*/
protected String getBeanKey(Contextual<?> bean)
{
return getKeyPrefix() + "#" + ManagerImpl.rootManager().getBeans().indexOf(bean);
return getKeyPrefix() + "#" + CurrentManager.rootManager().getBeans().indexOf(bean);
}

}
Expand Up @@ -25,7 +25,7 @@
import javax.webbeans.manager.Bean;
import javax.webbeans.manager.Contextual;

import org.jboss.webbeans.ManagerImpl;
import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.log.LogProvider;
import org.jboss.webbeans.log.Logging;

Expand Down Expand Up @@ -90,7 +90,7 @@ private void checkSession()
*/
private String getBeanKey(Contextual<?> bean)
{
return keyPrefix + ManagerImpl.rootManager().getBeans().indexOf(bean);
return keyPrefix + CurrentManager.rootManager().getBeans().indexOf(bean);
}

/**
Expand Down Expand Up @@ -185,7 +185,7 @@ public Iterable<Contextual<? extends Object>> keySet()
if (name.startsWith(keyPrefix))
{
String id = name.substring(keyPrefix.length());
Contextual<?> bean = ManagerImpl.rootManager().getBeans().get(Integer.parseInt(id));
Contextual<?> bean = CurrentManager.rootManager().getBeans().get(Integer.parseInt(id));
beans.add(bean);
}
}
Expand Down
Expand Up @@ -23,7 +23,7 @@
import javax.el.ELContext;
import javax.el.ELResolver;

import org.jboss.webbeans.ManagerImpl;
import org.jboss.webbeans.CurrentManager;

public class WebBeansELResolver extends ELResolver
{
Expand Down Expand Up @@ -63,7 +63,7 @@ public Object getValue(ELContext context, Object base, Object property)
{
if (base == null && property != null)
{
return ManagerImpl.rootManager().getInstanceByName(property.toString());
return CurrentManager.rootManager().getInstanceByName(property.toString());
}
else
{
Expand Down
Expand Up @@ -13,7 +13,7 @@
import javax.servlet.ServletContext;
import javax.webbeans.manager.Contextual;

import org.jboss.webbeans.ManagerImpl;
import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.contexts.AbstractBeanMapAdaptor;
import org.jboss.webbeans.contexts.ApplicationContext;
import org.jboss.webbeans.log.LogProvider;
Expand Down Expand Up @@ -85,7 +85,7 @@ public Iterable<Contextual<? extends Object>> keySet()
if (name.startsWith(getKeyPrefix()))
{
String id = name.substring(getKeyPrefix().length());
Contextual<?> bean = ManagerImpl.rootManager().getBeans().get(Integer.parseInt(id));
Contextual<?> bean = CurrentManager.rootManager().getBeans().get(Integer.parseInt(id));
beans.add(bean);
}
}
Expand Down
Expand Up @@ -25,7 +25,7 @@
import javax.webbeans.manager.Bean;
import javax.webbeans.manager.Contextual;

import org.jboss.webbeans.ManagerImpl;
import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.contexts.AbstractBeanMapAdaptor;
import org.jboss.webbeans.contexts.SessionContext;
import org.jboss.webbeans.log.LogProvider;
Expand Down Expand Up @@ -145,7 +145,7 @@ public Iterable<Contextual<? extends Object>> keySet()
if (name.startsWith(getKeyPrefix()))
{
String id = name.substring(getKeyPrefix().length());
Contextual<?> bean = ManagerImpl.rootManager().getBeans().get(Integer.parseInt(id));
Contextual<?> bean = CurrentManager.rootManager().getBeans().get(Integer.parseInt(id));
beans.add(bean);
}
}
Expand Down
Expand Up @@ -19,7 +19,7 @@

import java.lang.reflect.Method;

import org.jboss.webbeans.ManagerImpl;
import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.bean.AbstractClassBean;
import org.jboss.webbeans.bean.EnterpriseBean;
import org.jboss.webbeans.bean.EventBean;
Expand All @@ -46,7 +46,7 @@ public class BeanFactory
*/
public static <T> SimpleBean<T> createSimpleBean(Class<T> clazz)
{
return new SimpleBean<T>(clazz, ManagerImpl.rootManager());
return new SimpleBean<T>(clazz, CurrentManager.rootManager());
}

/**
Expand All @@ -58,7 +58,7 @@ public static <T> SimpleBean<T> createSimpleBean(Class<T> clazz)
*/
public static <T> XmlSimpleBean<T> createXmlSimpleBean(Class<T> clazz)
{
return new XmlSimpleBean<T>(clazz, ManagerImpl.rootManager());
return new XmlSimpleBean<T>(clazz, CurrentManager.rootManager());
}

/**
Expand All @@ -70,7 +70,7 @@ public static <T> XmlSimpleBean<T> createXmlSimpleBean(Class<T> clazz)
*/
public static <T> EnterpriseBean<T> createEnterpriseBean(Class<T> clazz)
{
return new EnterpriseBean<T>(clazz, ManagerImpl.rootManager());
return new EnterpriseBean<T>(clazz, CurrentManager.rootManager());
}

/**
Expand All @@ -82,7 +82,7 @@ public static <T> EnterpriseBean<T> createEnterpriseBean(Class<T> clazz)
*/
public static <T> XmlEnterpriseBean<T> createXmlEnterpriseBean(Class<T> clazz)
{
return new XmlEnterpriseBean<T>(clazz, ManagerImpl.rootManager());
return new XmlEnterpriseBean<T>(clazz, CurrentManager.rootManager());
}

/**
Expand All @@ -96,7 +96,7 @@ public static <T> XmlEnterpriseBean<T> createXmlEnterpriseBean(Class<T> clazz)
*/
public static <T> ProducerMethodBean<T> createProducerMethodBean(Class<T> type, Method method, AbstractClassBean<?> declaringBean)
{
return new ProducerMethodBean<T>(method, declaringBean, ManagerImpl.rootManager());
return new ProducerMethodBean<T>(method, declaringBean, CurrentManager.rootManager());
}

/**
Expand All @@ -108,7 +108,7 @@ public static <T> ProducerMethodBean<T> createProducerMethodBean(Class<T> type,
*/
public static <T> ProducerMethodBean<T> createProducerMethodBean(AnnotatedMethod<T> method, AbstractClassBean<?> declaringBean)
{
return new ProducerMethodBean<T>(method, declaringBean, ManagerImpl.rootManager());
return new ProducerMethodBean<T>(method, declaringBean, CurrentManager.rootManager());
}

/**
Expand All @@ -120,7 +120,7 @@ public static <T> ProducerMethodBean<T> createProducerMethodBean(AnnotatedMethod
*/
public static <T> EventBean<T> createEventBean(AnnotatedField<T> field)
{
return new EventBean<T>(field, ManagerImpl.rootManager());
return new EventBean<T>(field, CurrentManager.rootManager());
}

}
Expand Up @@ -3,9 +3,9 @@
import javax.webbeans.Production;
import javax.webbeans.Standard;

import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.bootstrap.Bootstrap;
import org.jboss.webbeans.contexts.ApplicationContext;
import org.jboss.webbeans.contexts.DependentContext;
import org.jboss.webbeans.contexts.RequestContext;
import org.jboss.webbeans.contexts.SessionContext;
import org.jboss.webbeans.contexts.SimpleBeanMap;
Expand All @@ -28,7 +28,7 @@ public final void before()
manager.addContext(RequestContext.INSTANCE);
manager.addContext(SessionContext.INSTANCE);
manager.addContext(ApplicationContext.INSTANCE);
MockManagerImpl.setInstance(manager);
CurrentManager.setRootManager(manager);
// Mock the ApplicationContext as a simple map
ApplicationContext.INSTANCE.setBeanMap(new SimpleBeanMap());
bootstrap = new MockBootstrap();
Expand Down
11 changes: 2 additions & 9 deletions webbeans-ri/src/test/java/org/jboss/webbeans/test/EventTest.java
@@ -1,16 +1,13 @@
package org.jboss.webbeans.test;

import java.lang.annotation.Annotation;
import java.util.ArrayList;
import java.util.List;

import javax.webbeans.DuplicateBindingTypeException;
import javax.webbeans.Event;
import javax.webbeans.Observer;
import javax.webbeans.Standard;

import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.event.EventImpl;
import org.jboss.webbeans.test.annotations.AnotherDeploymentType;
import org.jboss.webbeans.test.annotations.Synchronous;
import org.jboss.webbeans.test.annotations.Tame;
import org.jboss.webbeans.test.beans.DangerCall;
Expand Down Expand Up @@ -52,12 +49,8 @@ public void notify(T event)
@BeforeMethod
public void before() throws Exception
{
List<Class<? extends Annotation>> enabledDeploymentTypes = new ArrayList<Class<? extends Annotation>>();
enabledDeploymentTypes.add(Standard.class);
enabledDeploymentTypes.add(AnotherDeploymentType.class);
manager = new MockManagerImpl();
MockManagerImpl.setInstance(manager);
manager.setEnabledDeploymentTypes(Standard.class, AnotherDeploymentType.class);
CurrentManager.setRootManager(manager);
}

/**
Expand Down
Expand Up @@ -6,6 +6,7 @@
import javax.webbeans.Observer;
import javax.webbeans.Observes;

import org.jboss.webbeans.CurrentManager;
import org.jboss.webbeans.bean.SimpleBean;
import org.jboss.webbeans.event.ObserverImpl;
import org.jboss.webbeans.introspector.AnnotatedMethod;
Expand Down Expand Up @@ -56,6 +57,7 @@ public void observe(@Observes @Asynchronous SampleEvent e)
public void before() throws Exception
{
manager = new MockManagerImpl();
CurrentManager.setRootManager(manager);
ob = BeanFactory.createSimpleBean(SampleObserver.class);
manager.addBean(ob);
Method method = SampleObserver.class.getMethod("observe", SampleEvent.class);
Expand Down
Expand Up @@ -6,7 +6,6 @@
import java.util.Set;

import javax.webbeans.Observer;
import javax.webbeans.manager.Context;
import javax.webbeans.manager.Manager;

import org.jboss.webbeans.ManagerImpl;
Expand Down Expand Up @@ -66,9 +65,4 @@ public void setEnabledDeploymentTypes(Class<? extends Annotation>... enabledDepl
initEnabledDeploymentTypes(enabledDeploymentTypes);
}

public static void setInstance(ManagerImpl manager)
{
ManagerImpl.rootManager = manager;
}

}

0 comments on commit 64a6032

Please sign in to comment.