Author: lresende
Date: Sun Nov 15 20:45:31 2009
New Revision: 836412

URL: http://svn.apache.org/viewvc?rev=836412&view=rev
Log:
Porting implementation.widget modesl from 1.x

Added:
    tuscany/java/sca/modules/implementation-widget/META-INF/
    tuscany/java/sca/modules/implementation-widget/META-INF/MANIFEST.MF
Modified:
    tuscany/java/sca/modules/implementation-widget/pom.xml
    
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/Widget.java
    
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementation.java
    
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationFactory.java
    
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationIntrospector.java
    
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationProcessor.java
    
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/impl/WidgetImplementationFactoryImpl.java
    
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/impl/WidgetImplementationImpl.java

Added: tuscany/java/sca/modules/implementation-widget/META-INF/MANIFEST.MF
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/implementation-widget/META-INF/MANIFEST.MF?rev=836412&view=auto
==============================================================================
--- tuscany/java/sca/modules/implementation-widget/META-INF/MANIFEST.MF (added)
+++ tuscany/java/sca/modules/implementation-widget/META-INF/MANIFEST.MF Sun Nov 
15 20:45:31 2009
@@ -0,0 +1,25 @@
+Manifest-Version: 1.0
+Export-Package: org.apache.tuscany.sca.implementation.widget
+Tool: Bnd-0.0.357
+Bundle-Name: Apache Tuscany SCA Widget Implementation Model
+Created-By: 1.6.0_15 (Apple Inc.)
+Bundle-Vendor: The Apache Software Foundation
+Bundle-Version: 2.0.0
+Bnd-LastModified: 1258090277695
+Bundle-ManifestVersion: 2
+Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt
+Bundle-Description: Apache Tuscany SCA Widget Implementation Model
+Import-Package: javax.xml.namespace,
+ javax.xml.stream;version="1.0",
+ org.apache.tuscany.sca.assembly;version="2.0.0",
+ org.apache.tuscany.sca.assembly.impl;version="2.0.0",
+ org.apache.tuscany.sca.contribution;version="2.0.0",
+ org.apache.tuscany.sca.contribution.processor;version="2.0.0",
+ org.apache.tuscany.sca.contribution.resolver;version="2.0.0",
+ org.apache.tuscany.sca.data.collection;version="2.0.0",
+ org.apache.tuscany.sca.interfacedef,
+ org.apache.tuscany.sca.interfacedef.java;version="2.0.0",
+ org.apache.tuscany.sca.monitor;version="2.0.0"
+Bundle-SymbolicName: org.apache.tuscany.sca.implementation.widget
+Bundle-DocURL: http://www.apache.org/
+

Modified: tuscany/java/sca/modules/implementation-widget/pom.xml
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/implementation-widget/pom.xml?rev=836412&r1=836411&r2=836412&view=diff
==============================================================================
--- tuscany/java/sca/modules/implementation-widget/pom.xml (original)
+++ tuscany/java/sca/modules/implementation-widget/pom.xml Sun Nov 15 20:45:31 
2009
@@ -22,7 +22,7 @@
     <parent>
         <groupId>org.apache.tuscany.sca</groupId>
         <artifactId>tuscany-modules</artifactId>
-        <version>1.6-SNAPSHOT</version>
+        <version>2.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
@@ -33,19 +33,25 @@
         <dependency>
             <groupId>org.apache.tuscany.sca</groupId>
             <artifactId>tuscany-assembly-xml</artifactId>
-            <version>1.6-SNAPSHOT</version>
+            <version>2.0-SNAPSHOT</version>
         </dependency>
+        
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-contribution</artifactId>
+            <version>2.0-SNAPSHOT</version>
+        </dependency>        
 
         <dependency>
             <groupId>org.apache.tuscany.sca</groupId>
             <artifactId>tuscany-interface-java</artifactId>
-            <version>1.6-SNAPSHOT</version>
+            <version>2.0-SNAPSHOT</version>
         </dependency>        
 
         <dependency>
             <groupId>org.apache.tuscany.sca</groupId>
             <artifactId>tuscany-data-api</artifactId>
-            <version>1.6-SNAPSHOT</version>
+            <version>2.0-SNAPSHOT</version>
         </dependency>        
 
         <dependency>
@@ -54,26 +60,5 @@
             <version>4.5</version>
             <scope>test</scope>
         </dependency>
-
     </dependencies>
-
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-
-                <configuration>
-                    <instructions>
-                        <Bundle-Version>${tuscany.version}</Bundle-Version>
-                        
<Bundle-SymbolicName>org.apache.tuscany.sca.implementation.widget</Bundle-SymbolicName>
-                        <Bundle-Description>${pom.name}</Bundle-Description>
-                        
<Export-Package>org.apache.tuscany.sca.implementation.widget*</Export-Package>
-                    </instructions>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
 </project>

Modified: 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/Widget.java
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/Widget.java?rev=836412&r1=836411&r2=836412&view=diff
==============================================================================
--- 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/Widget.java
 (original)
+++ 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/Widget.java
 Sun Nov 15 20:45:31 2009
@@ -31,4 +31,5 @@
  * @version $Rev$ $Date$
  */
 public interface Widget extends Collection<String, InputStream> {
+
 }

Modified: 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementation.java
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementation.java?rev=836412&r1=836411&r2=836412&view=diff
==============================================================================
--- 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementation.java
 (original)
+++ 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementation.java
 Sun Nov 15 20:45:31 2009
@@ -20,6 +20,8 @@
 
 import java.net.URL;
 
+import javax.xml.namespace.QName;
+
 import org.apache.tuscany.sca.assembly.Implementation;
 
 
@@ -29,12 +31,29 @@
  * @version $Rev$ $Date$
  */
 public interface WidgetImplementation extends Implementation {
+    QName TYPE = new QName(SCA11_TUSCANY_NS, "implementation.widget");
     
+    /**
+     * Returns the location of the HTML file representing the Widget
+     * @return the location
+     */
     String getLocation();
 
+    /**
+     * Set the location of the HTML file representing the Widget
+     * @param location
+     */
     void setLocation(String location);
 
+    /**
+     * Returns the Location URL for the HTML file representing the Widget
+     * @return the location
+     */
     URL getLocationURL();
     
+    /**
+     * Set the Location URL for the HTML file representing the Widget 
+     * @param url the location
+     */
     void setLocationURL(URL url);
 }

Modified: 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationFactory.java
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationFactory.java?rev=836412&r1=836411&r2=836412&view=diff
==============================================================================
--- 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationFactory.java
 (original)
+++ 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationFactory.java
 Sun Nov 15 20:45:31 2009
@@ -26,6 +26,10 @@
  */
 public interface WidgetImplementationFactory {
     
+    /**
+     * Create a Widget Implementation model object
+     * @return
+     */
     WidgetImplementation createWidgetImplementation();
     
 }
\ No newline at end of file

Modified: 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationIntrospector.java
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationIntrospector.java?rev=836412&r1=836411&r2=836412&view=diff
==============================================================================
--- 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationIntrospector.java
 (original)
+++ 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationIntrospector.java
 Sun Nov 15 20:45:31 2009
@@ -28,7 +28,9 @@
 import org.apache.tuscany.sca.assembly.Reference;
 
 /**
- *
+ * A HTML Widget Introspector used to introspect references and property
+ * annotations in JavaScript code
+ * 
  * @version $Rev$ $Date$
  */
 class WidgetImplementationIntrospector {

Modified: 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationProcessor.java
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationProcessor.java?rev=836412&r1=836411&r2=836412&view=diff
==============================================================================
--- 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationProcessor.java
 (original)
+++ 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationProcessor.java
 Sun Nov 15 20:45:31 2009
@@ -29,16 +29,16 @@
 import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.tuscany.sca.assembly.AssemblyFactory;
-import org.apache.tuscany.sca.assembly.xml.Constants;
 import org.apache.tuscany.sca.contribution.Artifact;
 import org.apache.tuscany.sca.contribution.ContributionFactory;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
 import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.ContributionReadException;
+import 
org.apache.tuscany.sca.contribution.processor.ContributionResolveException;
+import 
org.apache.tuscany.sca.contribution.processor.ContributionWriteException;
+import org.apache.tuscany.sca.contribution.processor.ProcessorContext;
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
 import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import 
org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
+import org.apache.tuscany.sca.core.FactoryExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.Problem;
 import org.apache.tuscany.sca.monitor.Problem.Severity;
@@ -50,14 +50,12 @@
  * @version $Rev$ $Date$
  */
 public class WidgetImplementationProcessor extends BaseStAXArtifactProcessor 
implements StAXArtifactProcessor<WidgetImplementation> {
-    private static final QName IMPLEMENTATION_WIDGET = new 
QName(Constants.SCA10_TUSCANY_NS, "implementation.widget");
-
     private AssemblyFactory assemblyFactory;
     private ContributionFactory contributionFactory;
     private WidgetImplementationFactory implementationFactory;
     private Monitor monitor;
 
-    public WidgetImplementationProcessor(ModelFactoryExtensionPoint 
modelFactories, Monitor monitor) {
+    public WidgetImplementationProcessor(FactoryExtensionPoint modelFactories, 
Monitor monitor) {
        assemblyFactory = modelFactories.getFactory(AssemblyFactory.class);
         contributionFactory = 
modelFactories.getFactory(ContributionFactory.class);
         implementationFactory = 
modelFactories.getFactory(WidgetImplementationFactory.class);
@@ -72,10 +70,10 @@
      * @param model
      */
     private void error(String message, Object model, Exception ex) {
-        if (monitor != null) {
-               Problem problem = 
monitor.createProblem(this.getClass().getName(), 
"impl-widget-validation-messages", Severity.ERROR, model, message, ex);
-               monitor.problem(problem);
-        }
+        if (monitor != null) {
+            Problem problem = monitor.createProblem(this.getClass().getName(), 
"impl-widget-validation-messages", Severity.ERROR, model, message, ex);
+            monitor.problem(problem);
+        }
     }
 
     /**
@@ -94,7 +92,7 @@
 
     public QName getArtifactType() {
         // Returns the QName of the XML element processed by this processor
-        return IMPLEMENTATION_WIDGET;
+        return WidgetImplementation.TYPE;
     }
 
     public Class<WidgetImplementation> getModelType() {
@@ -102,7 +100,7 @@
         return WidgetImplementation.class;
     }
 
-    public WidgetImplementation read(XMLStreamReader reader) throws 
ContributionReadException, XMLStreamException {
+    public WidgetImplementation read(XMLStreamReader reader, ProcessorContext 
context) throws ContributionReadException, XMLStreamException {
 
         // Read an <implementation.widget> element
 
@@ -122,7 +120,7 @@
 
         // Skip to end element
         while (reader.hasNext()) {
-            if (reader.next() == END_ELEMENT && 
IMPLEMENTATION_WIDGET.equals(reader.getName())) {
+            if (reader.next() == END_ELEMENT && 
WidgetImplementation.TYPE.equals(reader.getName())) {
                 break;
             }
         }
@@ -130,13 +128,13 @@
         return implementation;
     }
 
-    public void resolve(WidgetImplementation implementation, ModelResolver 
resolver) throws ContributionResolveException {
+    public void resolve(WidgetImplementation implementation, ModelResolver 
resolver, ProcessorContext context) throws ContributionResolveException {
 
        if (implementation != null) {
                // Resolve the resource directory location
             Artifact artifact = contributionFactory.createArtifact();
             artifact.setURI(implementation.getLocation());
-            Artifact resolved = resolver.resolveModel(Artifact.class, 
artifact);
+            Artifact resolved = resolver.resolveModel(Artifact.class, 
artifact, context);
             if (resolved.getLocation() != null) {
                 try {
                     implementation.setLocationURL(new 
URL(resolved.getLocation()));
@@ -159,9 +157,9 @@
        }
     }
 
-    public void write(WidgetImplementation implementation, XMLStreamWriter 
writer) throws ContributionWriteException, XMLStreamException {
+    public void write(WidgetImplementation implementation, XMLStreamWriter 
writer, ProcessorContext context) throws ContributionWriteException, 
XMLStreamException {
         // Write <implementation.widget>        
-        writeStart(writer, IMPLEMENTATION_WIDGET.getNamespaceURI(), 
IMPLEMENTATION_WIDGET.getLocalPart());
+        writeStart(writer, WidgetImplementation.TYPE.getNamespaceURI(), 
WidgetImplementation.TYPE.getLocalPart());
 
         if (implementation.getLocation() != null) {
             writer.writeAttribute("location", implementation.getLocation());

Modified: 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/impl/WidgetImplementationFactoryImpl.java
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/impl/WidgetImplementationFactoryImpl.java?rev=836412&r1=836411&r2=836412&view=diff
==============================================================================
--- 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/impl/WidgetImplementationFactoryImpl.java
 (original)
+++ 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/impl/WidgetImplementationFactoryImpl.java
 Sun Nov 15 20:45:31 2009
@@ -20,7 +20,7 @@
 package org.apache.tuscany.sca.implementation.widget.impl;
 
 import org.apache.tuscany.sca.assembly.AssemblyFactory;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
+import org.apache.tuscany.sca.core.FactoryExtensionPoint;
 import org.apache.tuscany.sca.implementation.widget.WidgetImplementation;
 import 
org.apache.tuscany.sca.implementation.widget.WidgetImplementationFactory;
 import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceFactory;
@@ -35,7 +35,7 @@
     private AssemblyFactory assemblyFactory;
     private JavaInterfaceFactory javaFactory;
     
-    public WidgetImplementationFactoryImpl(ModelFactoryExtensionPoint 
modelFactories) {
+    public WidgetImplementationFactoryImpl(FactoryExtensionPoint 
modelFactories) {
         assemblyFactory = modelFactories.getFactory(AssemblyFactory.class);
         javaFactory = modelFactories.getFactory(JavaInterfaceFactory.class);
     }

Modified: 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/impl/WidgetImplementationImpl.java
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/impl/WidgetImplementationImpl.java?rev=836412&r1=836411&r2=836412&view=diff
==============================================================================
--- 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/impl/WidgetImplementationImpl.java
 (original)
+++ 
tuscany/java/sca/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/impl/WidgetImplementationImpl.java
 Sun Nov 15 20:45:31 2009
@@ -19,15 +19,12 @@
 package org.apache.tuscany.sca.implementation.widget.impl;
 
 import java.net.URL;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
+
+import javax.xml.namespace.QName;
 
 import org.apache.tuscany.sca.assembly.AssemblyFactory;
-import org.apache.tuscany.sca.assembly.ConstrainingType;
-import org.apache.tuscany.sca.assembly.Property;
-import org.apache.tuscany.sca.assembly.Reference;
 import org.apache.tuscany.sca.assembly.Service;
+import org.apache.tuscany.sca.assembly.impl.ImplementationImpl;
 import org.apache.tuscany.sca.implementation.widget.Widget;
 import org.apache.tuscany.sca.implementation.widget.WidgetImplementation;
 import org.apache.tuscany.sca.interfacedef.InvalidInterfaceException;
@@ -41,21 +38,20 @@
  *
  * @version $Rev$ $Date$
  */
-public class WidgetImplementationImpl implements WidgetImplementation {
+public class WidgetImplementationImpl extends ImplementationImpl implements 
WidgetImplementation {
     private Service widgetService;
-    private List<Reference> references = new ArrayList<Reference>();
-    private List<Property> properties = new ArrayList<Property>();
-    
+
     private String location;
-    private URL url;
-    private boolean unresolved;
+    private URL locationUrl;
 
     /**
      * Constructs a new resource implementation.
      */
     WidgetImplementationImpl(AssemblyFactory assemblyFactory,
-                         JavaInterfaceFactory javaFactory) {
-
+                             JavaInterfaceFactory javaFactory) {
+        
+        super(TYPE);
+        
         // Resource implementation always provide a single service exposing
         // the Resource interface, and have no references and properties
         widgetService = assemblyFactory.createService();
@@ -73,61 +69,36 @@
         widgetService.setInterfaceContract(interfaceContract);
     }
 
-    public String getLocation() {
-        return location;
-    }
-
-    public void setLocation(String location) {
-        this.location = location;
-    }
-
-    public URL getLocationURL() {
-        return url;
+    public QName getType() {
+        return TYPE;
     }
     
-    public void setLocationURL(URL url) {
-        this.url = url;
-    }
-    
-    public ConstrainingType getConstrainingType() {
-        // The resource implementation does not support constrainingTypes
-        return null;
-    }
-
-    public List<Property> getProperties() {
-        return properties;
+    @Override
+    public String getURI() {
+        return location;
     }
 
-    public List<Service> getServices() {
-        // The resource implementation does not support services
-        return Collections.singletonList(widgetService);
+    @Override
+    public void setURI(String uri) {
+        this.location = uri;
     }
     
-    public List<Reference> getReferences() {
-        return references;
-    }
-
-    public String getURI() {
+    public String getLocation() {
         return location;
     }
 
-    public void setConstrainingType(ConstrainingType constrainingType) {
-        // The resource implementation does not support constrainingTypes
+    public void setLocation(String location) {
+        this.location = location;
     }
 
-    public void setURI(String uri) {
-        this.location = uri;
+    public URL getLocationURL() {
+        return locationUrl;
     }
-
-
-    public boolean isUnresolved() {
-        return unresolved;
+    
+    public void setLocationURL(URL url) {
+        this.locationUrl = url;
     }
 
-    public void setUnresolved(boolean unresolved) {
-        this.unresolved = unresolved;
-    }    
-
     @Override
     public String toString() {
         return "Widget : " + getLocation(); 


Reply via email to