Author: dblevins
Date: Wed Jan 26 01:20:32 2011
New Revision: 1063550
URL: http://svn.apache.org/viewvc?rev=1063550&view=rev
Log:
Destatic InstanceImpl and the Context code. Some destatic of WebBeansELResolver
OWB-503 status: 524 code uses
Total of 7756 static synchronized accesses and 8941 hashed calls in 898 tests
Average of 8 static synchronized accesses and 9 hashed calls per test
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/ConversationBean.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InstanceBean.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/WebBeansContext.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/CreationalContextFactory.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/CreationalContextImpl.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/WrappedCreationalContext.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/conversation/ConversationImpl.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/corespi/DefaultSingletonService.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/el/WebBeansELResolver.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceFactory.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceImpl.java
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/ConversationBean.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/ConversationBean.java?rev=1063550&r1=1063549&r2=1063550&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/ConversationBean.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/ConversationBean.java
Wed Jan 26 01:20:32 2011
@@ -67,12 +67,13 @@ public class ConversationBean extends Ab
{
if(sessionId != null)
{
- conversation = new
ConversationImpl(conversationService.getConversationSessionId());
+ conversation = new
ConversationImpl(conversationService.getConversationSessionId(),
+ getWebBeansContext());
}
else
{
//Used in Tests
- conversation = new ConversationImpl();
+ conversation = new ConversationImpl(getWebBeansContext());
}
}
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InstanceBean.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InstanceBean.java?rev=1063550&r1=1063549&r2=1063550&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InstanceBean.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InstanceBean.java
Wed Jan 26 01:20:32 2011
@@ -51,7 +51,8 @@ public class InstanceBean<T> extends Abs
ParameterizedType injectedType =
(ParameterizedType)local.get().getType();
Set<Annotation> qualifiers = local.get().getQualifiers();
Instance<T> instance =
InstanceFactory.getInstance(injectedType.getActualTypeArguments()[0],
- (local.get().getBean() == null) ? null :
local.get().getBean().getBeanClass(),
+ (local.get().getBean() == null) ? null :
local.get().getBean().getBeanClass(),
+ getWebBeansContext(),
qualifiers.toArray(new
Annotation[qualifiers.size()]));
return instance;
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/WebBeansContext.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/WebBeansContext.java?rev=1063550&r1=1063549&r2=1063550&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/WebBeansContext.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/WebBeansContext.java
Wed Jan 26 01:20:32 2011
@@ -67,7 +67,7 @@ public class WebBeansContext
private AnnotatedElementFactory annotatedElementFactory = new
AnnotatedElementFactory();
private BeanManagerImpl beanManagerImpl = new BeanManagerImpl(this);
private ConversationManager conversationManager = new
ConversationManager(this);
- private CreationalContextFactory creationalContextFactory = new
CreationalContextFactory();
+ private CreationalContextFactory creationalContextFactory = new
CreationalContextFactory(this);
private DecoratorsManager decoratorsManager = new DecoratorsManager(this);
private ExtensionLoader extensionLoader = new ExtensionLoader(this);
private InterceptorsManager interceptorsManager = new
InterceptorsManager(this);
@@ -329,7 +329,7 @@ public class WebBeansContext
public <T> T get(Class<T> clazz)
{
- //util.Track.get(clazz);
+ util.Track.get(clazz);
T object = clazz.cast(managerMap.get(clazz));
/* No singleton for this application, create one */
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/CreationalContextFactory.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/CreationalContextFactory.java?rev=1063550&r1=1063549&r2=1063550&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/CreationalContextFactory.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/CreationalContextFactory.java
Wed Jan 26 01:20:32 2011
@@ -32,11 +32,15 @@ import org.apache.webbeans.config.WebBea
*/
public final class CreationalContextFactory<T>
{
+ private WebBeansContext webBeansContext;
+
/**
* Creates a new <code>CreationalContextFactory</code> instance.
+ * @param webBeansContext
*/
- public CreationalContextFactory()
+ public CreationalContextFactory(WebBeansContext webBeansContext)
{
+ this.webBeansContext = webBeansContext;
}
/**
@@ -59,12 +63,12 @@ public final class CreationalContextFact
*/
public CreationalContext<T> getCreationalContext(Contextual<T> contextual)
{
- return new CreationalContextImpl<T>(contextual);
+ return new CreationalContextImpl<T>(contextual, webBeansContext);
}
public CreationalContext<T> wrappedCreationalContext(CreationalContext<T>
creationalContext, Contextual<T> contextual)
{
- return new WrappedCreationalContext<T>(contextual, creationalContext);
+ return new WrappedCreationalContext<T>(contextual, creationalContext,
webBeansContext);
}
}
\ No newline at end of file
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/CreationalContextImpl.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/CreationalContextImpl.java?rev=1063550&r1=1063549&r2=1063550&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/CreationalContextImpl.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/CreationalContextImpl.java
Wed Jan 26 01:20:32 2011
@@ -53,13 +53,16 @@ public class CreationalContextImpl<T> im
/**When bean object is destroyed it is set*/
public static ThreadLocal<Object> currentRemoveObject = new
ThreadLocal<Object>();
-
+
+ private WebBeansContext webBeansContext;
+
/**
* Package private
*/
- CreationalContextImpl(Contextual<T> contextual)
+ CreationalContextImpl(Contextual<T> contextual, WebBeansContext
webBeansContext)
{
this.contextual = contextual;
+ this.webBeansContext = webBeansContext;
}
/**
@@ -288,7 +291,7 @@ public class CreationalContextImpl<T> im
List<DependentCreationalContext<?>> values =
this.dependentObjects.get(ownerInstance);
if(values != null)
{
- final CreationalContextFactory contextFactory =
WebBeansContext.getInstance().getCreationalContextFactory();
+ final CreationalContextFactory contextFactory =
webBeansContext.getCreationalContextFactory();
Iterator<?> iterator = values.iterator();
while(iterator.hasNext())
{
@@ -317,7 +320,7 @@ public class CreationalContextImpl<T> im
@SuppressWarnings("unchecked")
public void removeAllDependents()
{
- WebBeansContext webBeansContext = WebBeansContext.getInstance();
+ WebBeansContext webBeansContext = this.webBeansContext;
Collection<List<DependentCreationalContext<?>>> values =
this.dependentObjects.values();
if(values != null)
{
@@ -418,13 +421,14 @@ public class CreationalContextImpl<T> im
private synchronized void readObject(ObjectInputStream s)
throws IOException, ClassNotFoundException
{
+ this.webBeansContext = WebBeansContext.currentInstance();
HashMap<Object, List<DependentCreationalContext<?>>> depo =
(HashMap<Object, List<DependentCreationalContext<?>>>)s.readObject();
dependentObjects = new WeakHashMap<Object,
List<DependentCreationalContext<?>>>(depo);
String id = (String) s.readObject();
if (id != null)
{
- contextual = (Contextual<T>)
WebBeansContext.getInstance().getBeanManagerImpl().getPassivationCapableBean(id);
+ contextual = (Contextual<T>)
webBeansContext.getBeanManagerImpl().getPassivationCapableBean(id);
}
ejbInterceptors = (ConcurrentMap<Object, List<EjbInterceptorContext>>)
s.readObject();
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/WrappedCreationalContext.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/WrappedCreationalContext.java?rev=1063550&r1=1063549&r2=1063550&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/WrappedCreationalContext.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/WrappedCreationalContext.java
Wed Jan 26 01:20:32 2011
@@ -21,15 +21,18 @@ package org.apache.webbeans.context.crea
import javax.enterprise.context.spi.Contextual;
import javax.enterprise.context.spi.CreationalContext;
+import org.apache.webbeans.config.WebBeansContext;
+
class WrappedCreationalContext<T> extends CreationalContextImpl<T> implements
CreationalContext<T>
{
private static final long serialVersionUID = 3580925478881669439L;
private CreationalContext<T> wrapped = null;
- WrappedCreationalContext(Contextual<T> contextual, CreationalContext<T>
creationalContext)
+ WrappedCreationalContext(Contextual<T> contextual, CreationalContext<T>
creationalContext,
+ WebBeansContext webBeansContext)
{
- super(contextual);
+ super(contextual, webBeansContext);
this.wrapped = creationalContext;
}
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/conversation/ConversationImpl.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/conversation/ConversationImpl.java?rev=1063550&r1=1063549&r2=1063550&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/conversation/ConversationImpl.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/conversation/ConversationImpl.java
Wed Jan 26 01:20:32 2011
@@ -68,14 +68,22 @@ public class ConversationImpl implements
/**This instance is under used*/
private AtomicBoolean inUsed = new AtomicBoolean(false);
+ private WebBeansContext webBeansContext;
+
/**
* Default constructor. Used in tests.
*/
public ConversationImpl()
{
+ this(WebBeansContext.getInstance());
+ }
+
+ public ConversationImpl(WebBeansContext webBeansContext)
+ {
+ this.webBeansContext = webBeansContext;
try
{
- this.timeout =
Long.parseLong(WebBeansContext.getInstance().getOpenWebBeansConfiguration().
+ this.timeout =
Long.parseLong(this.webBeansContext.getOpenWebBeansConfiguration().
getProperty(OpenWebBeansConfiguration.CONVERSATION_TIMEOUT_INTERVAL,
"1800000"));
}
catch(NumberFormatException e)
@@ -88,14 +96,17 @@ public class ConversationImpl implements
* Creates a new conversation instance. Id is not
* set until conversation is begin.
* @param sessionId
+ * @param webBeansContext
*/
- public ConversationImpl(String sessionId)
+ public ConversationImpl(String sessionId, WebBeansContext webBeansContext)
{
Asserts.assertNotNull(sessionId);
-
+
+ this.webBeansContext = webBeansContext;
+
try
{
- this.timeout =
Long.parseLong(WebBeansContext.getInstance().getOpenWebBeansConfiguration().
+ this.timeout =
Long.parseLong(this.webBeansContext.getOpenWebBeansConfiguration().
getProperty(OpenWebBeansConfiguration.CONVERSATION_TIMEOUT_INTERVAL,
"1800000"));
}
catch(NumberFormatException e)
@@ -104,6 +115,7 @@ public class ConversationImpl implements
}
this.sessionId = sessionId;
+ this.webBeansContext = WebBeansContext.getInstance();
}
/**
@@ -119,7 +131,7 @@ public class ConversationImpl implements
this.id =
Integer.toString(conversationIdGenerator.incrementAndGet());
//Conversation manager
- WebBeansContext webBeansContext = WebBeansContext.getInstance();
+ WebBeansContext webBeansContext = this.webBeansContext;
ConversationManager manager =
webBeansContext.getConversationManager();
try
{
@@ -150,7 +162,7 @@ public class ConversationImpl implements
public void begin(String id)
{
//Look at other conversation, that may collate with this is
- final WebBeansContext webBeansContext = WebBeansContext.getInstance();
+ final WebBeansContext webBeansContext = this.webBeansContext;
final ConversationManager conversationManager =
webBeansContext.getConversationManager();
if(conversationManager.isConversationExistWithGivenId(id))
{
@@ -177,7 +189,7 @@ public class ConversationImpl implements
{
this.isTransient = true;
-
WebBeansContext.getInstance().getConversationManager().removeConversation(this);
+ webBeansContext.getConversationManager().removeConversation(this);
}
else
{
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/corespi/DefaultSingletonService.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/corespi/DefaultSingletonService.java?rev=1063550&r1=1063549&r2=1063550&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/corespi/DefaultSingletonService.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/corespi/DefaultSingletonService.java
Wed Jan 26 01:20:32 2011
@@ -48,10 +48,10 @@ public class DefaultSingletonService imp
ClassLoader classLoader = (ClassLoader) key;
synchronized (singletonMap)
{
- //util.Track.sync(key);
+ util.Track.sync(key);
WebBeansContext webBeansContext = singletonMap.get(classLoader);
- //util.Track.get(key);
+ util.Track.get(key);
if (webBeansContext == null)
{
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/el/WebBeansELResolver.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/el/WebBeansELResolver.java?rev=1063550&r1=1063549&r2=1063550&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/el/WebBeansELResolver.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/el/WebBeansELResolver.java
Wed Jan 26 01:20:32 2011
@@ -53,11 +53,13 @@ import org.apache.webbeans.spi.plugins.A
*
*/
public class WebBeansELResolver extends ELResolver
-{
+{
+ private WebBeansContext webBeansContext;
public WebBeansELResolver()
{
+ webBeansContext = WebBeansContext.getInstance();
}
/**
@@ -97,7 +99,7 @@ public class WebBeansELResolver extends
//Check that application is OWB enabled
//For JSF applications that are not
//OWB enabled, no need to go with this resolver....
- WebBeansContext webBeansContext = WebBeansContext.getInstance();
+ WebBeansContext webBeansContext = this.webBeansContext;
AbstractOwbJsfPlugin jsfPlugin =
webBeansContext.getPluginLoader().getJsfPlugin();
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceFactory.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceFactory.java?rev=1063550&r1=1063549&r2=1063550&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceFactory.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceFactory.java
Wed Jan 26 01:20:32 2011
@@ -23,6 +23,8 @@ import java.lang.reflect.Type;
import javax.enterprise.inject.Instance;
+import org.apache.webbeans.config.WebBeansContext;
+
public final class InstanceFactory
{
private InstanceFactory()
@@ -34,12 +36,14 @@ public final class InstanceFactory
*
* @param injectedType injection class type
* @param injectionPointClass null or the class of the injection point
+ * @param webBeansContext
* @param annotations qualifier annotations
* @return
*/
- public static <T> Instance<T> getInstance(Type injectedType, Class<?>
injectionPointClass,Annotation...annotations)
+ public static <T> Instance<T> getInstance(Type injectedType, Class<?>
injectionPointClass,
+ WebBeansContext webBeansContext,
Annotation... annotations)
{
- InstanceImpl<T> instance = new
InstanceImpl<T>(injectedType,injectionPointClass, annotations);
+ InstanceImpl<T> instance = new
InstanceImpl<T>(injectedType,injectionPointClass, webBeansContext, annotations);
return instance;
}
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceImpl.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceImpl.java?rev=1063550&r1=1063549&r2=1063550&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceImpl.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceImpl.java
Wed Jan 26 01:20:32 2011
@@ -58,14 +58,17 @@ class InstanceImpl<T> implements Instanc
/** Qualifier annotations appeared on the injection point */
private Set<Annotation> qualifierAnnotations = new HashSet<Annotation>();
+ private WebBeansContext webBeansContext;
+
/**
* Creates new instance.
*
* @param injectionClazz injection class type
* @param injectionPointClazz null or class of injection point
+ * @param webBeansContext
* @param annotations qualifier annotations
*/
- InstanceImpl(Type injectionClazz, Class<?>
injectionPointClazz,Annotation... annotations)
+ InstanceImpl(Type injectionClazz, Class<?> injectionPointClazz,
WebBeansContext webBeansContext, Annotation... annotations)
{
this.injectionClazz = injectionClazz;
this.injectionPointClazz=injectionPointClazz;
@@ -74,6 +77,7 @@ class InstanceImpl<T> implements Instanc
{
qualifierAnnotations.add(ann);
}
+ this.webBeansContext = webBeansContext;
}
/**
@@ -92,7 +96,7 @@ class InstanceImpl<T> implements Instanc
Set<Bean<?>> beans = resolveBeans();
- WebBeansContext webBeansContext = WebBeansContext.getInstance();
+ WebBeansContext webBeansContext = this.webBeansContext;
webBeansContext.getResolutionUtil().checkResolvedBeans(beans,
ClassUtil.getClazz(this.injectionClazz), anns);
Bean<?> bean = beans.iterator().next();
@@ -111,7 +115,7 @@ class InstanceImpl<T> implements Instanc
Annotation[] anns = new Annotation[this.qualifierAnnotations.size()];
anns = this.qualifierAnnotations.toArray(anns);
- InjectionResolver injectionResolver =
WebBeansContext.getInstance().getBeanManagerImpl().getInjectionResolver();
+ InjectionResolver injectionResolver =
webBeansContext.getBeanManagerImpl().getInjectionResolver();
InjectionResolver resolver = injectionResolver;
Set<Bean<?>> beans = resolver.implResolveByType(
@@ -148,7 +152,8 @@ class InstanceImpl<T> implements Instanc
public Instance<T> select(Annotation... qualifiers)
{
Annotation[] newQualifiersArray = getAdditionalQualifiers(qualifiers);
- InstanceImpl<T> newInstance = new InstanceImpl<T>(this.injectionClazz,
this.injectionPointClazz,newQualifiersArray);
+ InstanceImpl<T> newInstance = new InstanceImpl<T>(this.injectionClazz,
this.injectionPointClazz,
+ webBeansContext,
newQualifiersArray);
return newInstance;
}
@@ -161,7 +166,7 @@ class InstanceImpl<T> implements Instanc
*/
private Annotation[] getAdditionalQualifiers(Annotation[] qualifiers)
{
-
WebBeansContext.getInstance().getAnnotationManager().checkQualifierConditions(qualifiers);
+
webBeansContext.getAnnotationManager().checkQualifierConditions(qualifiers);
Set<Annotation> newQualifiers = new
HashSet<Annotation>(this.qualifierAnnotations);
if (qualifiers != null && qualifiers.length > 0)
@@ -189,7 +194,7 @@ class InstanceImpl<T> implements Instanc
@Override
public <U extends T> Instance<U> select(Class<U> subtype, Annotation...
qualifiers)
{
-
WebBeansContext.getInstance().getAnnotationManager().checkQualifierConditions(qualifiers);
+
webBeansContext.getAnnotationManager().checkQualifierConditions(qualifiers);
Type sub = subtype;
@@ -200,7 +205,7 @@ class InstanceImpl<T> implements Instanc
Annotation[] newQualifiers = getAdditionalQualifiers(qualifiers);
- InstanceImpl<U> newInstance = new InstanceImpl<U>(sub,
this.injectionPointClazz,newQualifiers);
+ InstanceImpl<U> newInstance = new InstanceImpl<U>(sub,
this.injectionPointClazz, webBeansContext, newQualifiers);
return newInstance;
}
@@ -225,7 +230,7 @@ class InstanceImpl<T> implements Instanc
Set<T> instances = new HashSet<T>();
for(Bean<?> bean : beans)
{
- T instance = (T)
WebBeansContext.getInstance().getBeanManagerImpl().getInstance(bean,null);
+ T instance = (T)
webBeansContext.getBeanManagerImpl().getInstance(bean,null);
instances.add(instance);
}
@@ -244,6 +249,7 @@ class InstanceImpl<T> implements Instanc
private void readObject(java.io.ObjectInputStream in) throws IOException,
ClassNotFoundException
{
+ this.webBeansContext = WebBeansContext.currentInstance();
final ObjectInputStream inputStream = new
OwbCustomObjectInputStream(in, WebBeansUtil.getCurrentClassLoader());
this.injectionClazz = (Type)inputStream.readObject();
this.qualifierAnnotations = (Set<Annotation>)inputStream.readObject();