[dependency-shot] r388 committed - Use helper method for JDK proxies

0 views
Skip to first unread message

depende...@googlecode.com

unread,
Mar 17, 2011, 3:32:12 PM3/17/11
to depende...@googlegroups.com
Revision: 388
Author: mathieu.ancelin
Date: Thu Mar 17 12:20:34 2011
Log: Use helper method for JDK proxies
http://code.google.com/p/dependency-shot/source/detail?r=388

Modified:

/trunk/dependency-shot-annotations/src/main/java/cx/ath/mancel01/dependencyshot/configurator/DSAnnotatedLoader.java

/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/graph/Binding.java

/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/injection/InjectorImpl.java

/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/scope/RequestScope.java

/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/scope/ThreadScope.java

/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/spi/DSServiceLoader.java

=======================================
---
/trunk/dependency-shot-annotations/src/main/java/cx/ath/mancel01/dependencyshot/configurator/DSAnnotatedLoader.java
Fri Oct 29 02:32:37 2010
+++
/trunk/dependency-shot-annotations/src/main/java/cx/ath/mancel01/dependencyshot/configurator/DSAnnotatedLoader.java
Thu Mar 17 12:20:34 2011
@@ -49,7 +49,8 @@
private static Collection<Class<?>> load(String filename, String
packagePrefix) {
Collection<Class<?>> services = new ArrayList<Class<?>>();
try {
- ClassLoader classLoader =
Thread.currentThread().getContextClassLoader();
+ ClassLoader classLoader =
DSAnnotatedLoader.class.getClassLoader();
+ //Thread.currentThread().getContextClassLoader();
Enumeration<URL> e = classLoader.getResources(filename);
while (e.hasMoreElements()) {
URL url = e.nextElement();
=======================================
---
/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/graph/Binding.java
Sat Mar 12 14:15:30 2011
+++
/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/graph/Binding.java
Thu Mar 17 12:20:34 2011
@@ -254,9 +254,10 @@
scopeHandler =
new
ScopeInvocationHandler(injector.getScopeHandler(scope),
from, to, point, injector);
- result = (T) Proxy.newProxyInstance(
- Thread.currentThread().getContextClassLoader(),
- new Class[]{from}, scopeHandler);
+ result = (T) ReflectionUtil.getProxyFor(scopeHandler,
from);
+ //Proxy.newProxyInstance(
+
//Thread.currentThread().getContextClassLoader(),
+ //new Class[]{from}, scopeHandler);
} else {
result = (T)
injector.getScopeHandler(scope).getScopedInstance(from, to, point,
injector);
}
=======================================
---
/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/injection/InjectorImpl.java
Sat Mar 12 14:15:30 2011
+++
/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/injection/InjectorImpl.java
Thu Mar 17 12:20:34 2011
@@ -417,9 +417,10 @@
proxy.setInjector(this);
proxy.setClazz(c);

proxy.setCircularConstructorArgumentsInstances(circularConstructorArgumentsInstances);
- T instance = (T) Proxy.newProxyInstance(
-
Thread.currentThread().getContextClassLoader(),
- new Class[]{actualFromClass}, proxy);
+ T instance = (T) ReflectionUtil.getProxyFor(proxy,
actualFromClass);
+ //Proxy.newProxyInstance(
+
//Thread.currentThread().getContextClassLoader(),
+ //new Class[]{actualFromClass}, proxy);
instanciatedClasses.put(c, instance);
}
if (!actualFromClass.isInterface() &&
instanciatedClasses.get(c) == null) {
=======================================
---
/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/scope/RequestScope.java
Tue Feb 22 13:22:54 2011
+++
/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/scope/RequestScope.java
Thu Mar 17 12:20:34 2011
@@ -20,6 +20,7 @@
import cx.ath.mancel01.dependencyshot.api.InjectionPoint;
import cx.ath.mancel01.dependencyshot.injection.InjectorImpl;
import cx.ath.mancel01.dependencyshot.spi.CustomScopeHandler;
+import cx.ath.mancel01.dependencyshot.util.ReflectionUtil;
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
@@ -63,9 +64,7 @@
return injector.createInstance(clazz);
}
RequestScopeProxy proxy = new
RequestScopeProxy(threadLocalinstances, clazz, injector);
- return (T) Proxy.newProxyInstance(
- Thread.currentThread().getContextClassLoader(),
- new Class[]{interf}, proxy);
+ return (T) ReflectionUtil.getProxyFor(proxy, interf);
}

@Override
=======================================
---
/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/scope/ThreadScope.java
Tue Feb 22 13:22:54 2011
+++
/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/scope/ThreadScope.java
Thu Mar 17 12:20:34 2011
@@ -20,8 +20,8 @@
import cx.ath.mancel01.dependencyshot.api.InjectionPoint;
import cx.ath.mancel01.dependencyshot.injection.InjectorImpl;
import cx.ath.mancel01.dependencyshot.spi.CustomScopeHandler;
+import cx.ath.mancel01.dependencyshot.util.ReflectionUtil;
import java.lang.annotation.Annotation;
-import java.lang.reflect.Proxy;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Logger;
@@ -60,9 +60,7 @@
return injector.createInstance(clazz);
}
RequestScopeProxy proxy = new
RequestScopeProxy(threadLocalinstances, clazz, injector);
- return (T) Proxy.newProxyInstance(
- Thread.currentThread().getContextClassLoader(),
- new Class[]{interf}, proxy);
+ return (T) ReflectionUtil.getProxyFor(proxy, interf);
}

@Override
=======================================
---
/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/spi/DSServiceLoader.java
Sat Mar 12 14:15:30 2011
+++
/trunk/dependency-shot-core/src/main/java/cx/ath/mancel01/dependencyshot/spi/DSServiceLoader.java
Thu Mar 17 12:20:34 2011
@@ -59,7 +59,8 @@
}

private static <T> Collection<T> loadFromServices(Class<T> interf)
throws Exception {
- ClassLoader classLoader =
Thread.currentThread().getContextClassLoader();
+ ClassLoader classLoader = DSServiceLoader.class.getClassLoader();
+ //Thread.currentThread().getContextClassLoader();
Enumeration<URL> e = classLoader.getResources("META-INF/services/"
+ interf.getName());
Collection<T> services = new ArrayList<T>();
while (e.hasMoreElements()) {

Reply all
Reply to author
Forward
0 new messages