You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jm...@apache.org on 2007/03/15 00:14:57 UTC
svn commit: r518379 -
/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/ReflectiveIFProviderBuilder.java
Author: jmarino
Date: Wed Mar 14 16:14:56 2007
New Revision: 518379
URL: http://svn.apache.org/viewvc?view=rev&rev=518379
Log:
genericize RIFPB
Modified:
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/ReflectiveIFProviderBuilder.java
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/ReflectiveIFProviderBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/ReflectiveIFProviderBuilder.java?view=diff&rev=518379&r1=518378&r2=518379
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/ReflectiveIFProviderBuilder.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/ReflectiveIFProviderBuilder.java Wed Mar 14 16:14:56 2007
@@ -38,11 +38,11 @@
/**
* IF provider builder for reflective IF provider.
- *
+ *
* @version $Date$ $Revision$
*/
-public class ReflectiveIFProviderBuilder extends
- AbstractIFProviderBuilder<ReflectiveInstanceFactoryProvider, ReflectiveIFProviderDefinition> {
+public class ReflectiveIFProviderBuilder<T> extends
+ AbstractIFProviderBuilder<ReflectiveInstanceFactoryProvider<T>, ReflectiveIFProviderDefinition> {
@Override
protected Class<ReflectiveIFProviderDefinition> getIfpdClass() {
@@ -50,7 +50,7 @@
}
@SuppressWarnings("unchecked")
- public ReflectiveInstanceFactoryProvider build(ReflectiveIFProviderDefinition ifpd, ClassLoader cl)
+ public ReflectiveInstanceFactoryProvider<T> build(ReflectiveIFProviderDefinition ifpd, ClassLoader cl)
throws IFProviderBuilderException {
try {
@@ -66,8 +66,11 @@
List<InjectionSource> ctrInjectSites = ifpd.getCdiSources();
Map<InjectionSource, Member> injectionSites = getInjectionSites(ifpd, implClass);
-
- return new ReflectiveInstanceFactoryProvider(ctr, ctrInjectSites, injectionSites, initMethod, destroyMethod);
+ return new ReflectiveInstanceFactoryProvider<T>(ctr,
+ ctrInjectSites,
+ injectionSites,
+ initMethod,
+ destroyMethod);
} catch (ClassNotFoundException ex) {
throw new IFProviderBuilderException(ex);
@@ -85,15 +88,15 @@
*/
private Map<InjectionSource, Member> getInjectionSites(ReflectiveIFProviderDefinition ifpd, Class implClass)
throws NoSuchFieldException, IntrospectionException, IFProviderBuilderException {
-
+
Map<InjectionSource, Member> injectionSites = new HashMap<InjectionSource, Member>();
for (InjectionSiteMapping injectionSite : ifpd.getInjectionSites()) {
-
+
InjectionSource source = injectionSite.getSource();
MemberSite memberSite = injectionSite.getSite();
ElementType elementType = memberSite.getElementType();
String name = memberSite.getName();
-
+
Member member = null;
if (memberSite.getElementType() == ElementType.FIELD) {
member = implClass.getDeclaredField(name);
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org