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();