You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by va...@apache.org on 2009/10/23 09:41:38 UTC

svn commit: r828951 - in /tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web: WebImplementation.java impl/WebImplementationImpl.java xml/WebImplementationProcessor.java

Author: vamsic007
Date: Fri Oct 23 07:41:37 2009
New Revision: 828951

URL: http://svn.apache.org/viewvc?rev=828951&view=rev
Log:
Make the WebImplementationProcessor compute the injection points for properties, references and resources like component context etc.

Modified:
    tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/WebImplementation.java
    tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/impl/WebImplementationImpl.java
    tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/xml/WebImplementationProcessor.java

Modified: tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/WebImplementation.java
URL: http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/WebImplementation.java?rev=828951&r1=828950&r2=828951&view=diff
==============================================================================
--- tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/WebImplementation.java (original)
+++ tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/WebImplementation.java Fri Oct 23 07:41:37 2009
@@ -18,7 +18,11 @@
  */
 package org.apache.tuscany.sca.implementation.web;
 
+import java.util.Map;
+
 import org.apache.tuscany.sca.assembly.Implementation;
+import org.apache.tuscany.sca.implementation.java.impl.JavaElementImpl;
+import org.apache.tuscany.sca.implementation.java.impl.JavaResourceImpl;
 
 
 
@@ -39,4 +43,24 @@
      */
     void setWebURI(String webappURI);
 
+    /**
+     * Returns the injection points for SCA references
+     * 
+     * @return Map with injection points for SCA references
+     */
+    Map<String, JavaElementImpl> getReferenceInjectionPoints();
+    
+    /**
+     * Returns the injection points for SCA properties
+     * 
+     * @return Map with injection points for SCA properties
+     */
+    Map<String, JavaElementImpl> getPropertyInjectionPoints();
+
+    /**
+     * Returns the injection points for SCA resources like component context, component name, etc.
+     * 
+     * @return Map with injection points for SCA resources
+     */
+    Map<String, JavaResourceImpl> getResourceInjectionPoints();
 }

Modified: tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/impl/WebImplementationImpl.java
URL: http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/impl/WebImplementationImpl.java?rev=828951&r1=828950&r2=828951&view=diff
==============================================================================
--- tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/impl/WebImplementationImpl.java (original)
+++ tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/impl/WebImplementationImpl.java Fri Oct 23 07:41:37 2009
@@ -19,7 +19,9 @@
 package org.apache.tuscany.sca.implementation.web.impl;
 
 import java.util.Collections;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 import org.apache.tuscany.sca.assembly.Component;
 import org.apache.tuscany.sca.assembly.ConstrainingType;
@@ -28,6 +30,8 @@
 import org.apache.tuscany.sca.assembly.Service;
 import org.apache.tuscany.sca.assembly.builder.ComponentPreProcessor;
 import org.apache.tuscany.sca.assembly.impl.ImplementationImpl;
+import org.apache.tuscany.sca.implementation.java.impl.JavaElementImpl;
+import org.apache.tuscany.sca.implementation.java.impl.JavaResourceImpl;
 import org.apache.tuscany.sca.implementation.web.WebImplementation;
 import org.apache.tuscany.sca.runtime.RuntimeComponent;
 
@@ -39,6 +43,11 @@
 
     private String webURI;
 
+    private Map<String, JavaElementImpl> propertyInjectionPoints = new HashMap<String, JavaElementImpl>();
+
+    private Map<String, JavaElementImpl> referenceInjectionPoints = new HashMap<String, JavaElementImpl>();
+
+    private Map<String, JavaResourceImpl> resourceInjectionPoints = new HashMap<String, JavaResourceImpl>();
     /**
      * Constructs a new Web implementation.
      */
@@ -132,4 +141,16 @@
         return newProperty;
     }
 
+    public Map<String, JavaElementImpl> getPropertyInjectionPoints() {
+        return propertyInjectionPoints;
+    }
+
+    public Map<String, JavaElementImpl> getReferenceInjectionPoints() {
+        return referenceInjectionPoints;
+    }
+
+    public Map<String, JavaResourceImpl> getResourceInjectionPoints() {
+        return resourceInjectionPoints;
+    }
+
 }

Modified: tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/xml/WebImplementationProcessor.java
URL: http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/xml/WebImplementationProcessor.java?rev=828951&r1=828950&r2=828951&view=diff
==============================================================================
--- tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/xml/WebImplementationProcessor.java (original)
+++ tuscany/branches/sca-java-1.x/modules/implementation-web/src/main/java/org/apache/tuscany/sca/implementation/web/xml/WebImplementationProcessor.java Fri Oct 23 07:41:37 2009
@@ -23,6 +23,7 @@
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 
 import javax.xml.namespace.QName;
 import javax.xml.stream.XMLStreamException;
@@ -49,6 +50,10 @@
 import org.apache.tuscany.sca.implementation.java.IntrospectionException;
 import org.apache.tuscany.sca.implementation.java.JavaImplementation;
 import org.apache.tuscany.sca.implementation.java.JavaImplementationFactory;
+import org.apache.tuscany.sca.implementation.java.impl.JavaElementImpl;
+import org.apache.tuscany.sca.implementation.java.impl.JavaResourceImpl;
+import org.apache.tuscany.sca.implementation.java.introspect.impl.ComponentNameProcessor;
+import org.apache.tuscany.sca.implementation.java.introspect.impl.ContextProcessor;
 import org.apache.tuscany.sca.implementation.web.WebImplementation;
 import org.apache.tuscany.sca.implementation.web.WebImplementationFactory;
 import org.apache.tuscany.sca.implementation.web.introspect.PropertyProcessor;
@@ -85,6 +90,8 @@
         this.javaInterfaceFactory = modelFactories.getFactory(JavaInterfaceFactory.class);
         javaImplementationFactory.addClassVisitor(new ReferenceProcessor(assemblyFactory, javaInterfaceFactory));
         javaImplementationFactory.addClassVisitor(new PropertyProcessor(assemblyFactory));
+        javaImplementationFactory.addClassVisitor(new ComponentNameProcessor(assemblyFactory));
+        javaImplementationFactory.addClassVisitor(new ContextProcessor(assemblyFactory));
     }
 
     public QName getArtifactType() {
@@ -154,6 +161,15 @@
             }
             implementation.getReferences().addAll(ji.getReferences());
             implementation.getProperties().addAll(ji.getProperties());
+            for(Map.Entry<String, JavaElementImpl> entry : ji.getReferenceMembers().entrySet()) { 
+                implementation.getReferenceInjectionPoints().put(entry.getKey(), entry.getValue());
+            }
+            for(Map.Entry<String, JavaElementImpl> entry : ji.getPropertyMembers().entrySet()) { 
+                implementation.getPropertyInjectionPoints().put(entry.getKey(), entry.getValue());
+            }
+            for(Map.Entry<String, JavaResourceImpl> entry : ji.getResources().entrySet()) { 
+                implementation.getResourceInjectionPoints().put(entry.getKey(), entry.getValue());
+            }
 
             // SCA References in JSP Tags
             for(JspReferenceTagInfo jspRefTag : webModuleInfo.getJspReferenceTags()) {