From 22e26a6bfaf42f697c4b806c49b258004454ef71 Mon Sep 17 00:00:00 2001 From: lresende Date: Thu, 3 Sep 2009 04:06:37 +0000 Subject: TUSCANY-3247 - Making interfaces and instantiatng widget factory via extension point mechanism git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@810775 13f79535-47bb-0310-9956-ffa450edef68 --- .../widget/WidgetImplementation.java | 104 +-------------------- .../widget/WidgetImplementationFactory.java | 18 +--- .../widget/WidgetImplementationProcessor.java | 2 +- 3 files changed, 8 insertions(+), 116 deletions(-) (limited to 'branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany') diff --git a/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementation.java b/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementation.java index b35cc41dd4..2a092884be 100644 --- a/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementation.java +++ b/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementation.java @@ -19,20 +19,8 @@ package org.apache.tuscany.sca.implementation.widget; import java.net.URL; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import org.apache.tuscany.sca.assembly.AssemblyFactory; -import org.apache.tuscany.sca.assembly.ConstrainingType; import org.apache.tuscany.sca.assembly.Implementation; -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.interfacedef.InvalidInterfaceException; -import org.apache.tuscany.sca.interfacedef.java.JavaInterface; -import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceContract; -import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceFactory; /** @@ -40,95 +28,13 @@ import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceFactory; * * @version $Rev$ $Date$ */ -public class WidgetImplementation implements Implementation { - private Service widgetService; - private List references = new ArrayList(); - private List properties = new ArrayList(); +public interface WidgetImplementation extends Implementation { - private String location; - private URL url; - private boolean unresolved; + String getLocation(); - /** - * Constructs a new resource implementation. - */ - WidgetImplementation(AssemblyFactory assemblyFactory, - JavaInterfaceFactory javaFactory) { + void setLocation(String location); - // Resource implementation always provide a single service exposing - // the Resource interface, and have no references and properties - widgetService = assemblyFactory.createService(); - widgetService.setName("Widget"); - - // Create the Java interface contract for the Resource service - JavaInterface javaInterface; - try { - javaInterface = javaFactory.createJavaInterface(Widget.class); - } catch (InvalidInterfaceException e) { - throw new IllegalArgumentException(e); - } - JavaInterfaceContract interfaceContract = javaFactory.createJavaInterfaceContract(); - interfaceContract.setInterface(javaInterface); - widgetService.setInterfaceContract(interfaceContract); - } - - public String getLocation() { - return location; - } - - public void setLocation(String location) { - this.location = location; - } - - public URL getLocationURL() { - return url; - } - - public void setLocationURL(URL url) { - this.url = url; - } - - public ConstrainingType getConstrainingType() { - // The resource implementation does not support constrainingTypes - return null; - } - - public List getProperties() { - return properties; - } - - public List getServices() { - // The resource implementation does not support services - return Collections.singletonList(widgetService); - } + URL getLocationURL(); - public List getReferences() { - return references; - } - - public String getURI() { - return location; - } - - public void setConstrainingType(ConstrainingType constrainingType) { - // The resource implementation does not support constrainingTypes - } - - public void setURI(String uri) { - this.location = uri; - } - - - public boolean isUnresolved() { - return unresolved; - } - - public void setUnresolved(boolean unresolved) { - this.unresolved = unresolved; - } - - @Override - public String toString() { - return "Widget : " + getLocation(); - } + void setLocationURL(URL url); } diff --git a/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationFactory.java b/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationFactory.java index 2493b97f5c..cdf4886194 100644 --- a/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationFactory.java +++ b/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationFactory.java @@ -19,27 +19,13 @@ package org.apache.tuscany.sca.implementation.widget; -import org.apache.tuscany.sca.assembly.AssemblyFactory; -import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint; -import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceFactory; - /** * Factory for the widget implementation model. * * @version $Rev$ $Date$ */ -public class WidgetImplementationFactory { +public interface WidgetImplementationFactory { - private AssemblyFactory assemblyFactory; - private JavaInterfaceFactory javaFactory; + WidgetImplementation createWidgetImplementation(); - public WidgetImplementationFactory(ModelFactoryExtensionPoint modelFactories) { - assemblyFactory = modelFactories.getFactory(AssemblyFactory.class); - javaFactory = modelFactories.getFactory(JavaInterfaceFactory.class); - } - - public WidgetImplementation createWidgetImplementation() { - return new WidgetImplementation(assemblyFactory, javaFactory); - } - } diff --git a/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationProcessor.java b/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationProcessor.java index 2c7297ff86..442191a568 100644 --- a/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationProcessor.java +++ b/branches/sca-java-1.5.1/modules/implementation-widget/src/main/java/org/apache/tuscany/sca/implementation/widget/WidgetImplementationProcessor.java @@ -59,7 +59,7 @@ public class WidgetImplementationProcessor implements StAXArtifactProcessor