From 964599075e940f75b7d0e3d7c801b8d836a6f678 Mon Sep 17 00:00:00 2001 From: lresende Date: Sun, 15 Nov 2009 20:48:16 +0000 Subject: Porting javascript extensibility from 1.x git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@836416 13f79535-47bb-0310-9956-ffa450edef68 --- .../web-javascript-dojo/META-INF/MANIFEST.MF | 20 ++++++++++++++++ java/sca/modules/web-javascript-dojo/pom.xml | 8 +++---- .../web/javascript/dojo/DojoModuleActivator.java | 13 +++++++---- .../modules/web-javascript/META-INF/MANIFEST.MF | 21 +++++++++++++++++ java/sca/modules/web-javascript/pom.xml | 25 ++------------------ ...ComponentJavaScriptGeneratorExtensionPoint.java | 19 +++++++++------ ...efaultJavascriptProxyFactoryExtensionPoint.java | 27 +++++++++++++--------- 7 files changed, 83 insertions(+), 50 deletions(-) create mode 100644 java/sca/modules/web-javascript-dojo/META-INF/MANIFEST.MF create mode 100644 java/sca/modules/web-javascript/META-INF/MANIFEST.MF (limited to 'java') diff --git a/java/sca/modules/web-javascript-dojo/META-INF/MANIFEST.MF b/java/sca/modules/web-javascript-dojo/META-INF/MANIFEST.MF new file mode 100644 index 0000000000..72e50d6c58 --- /dev/null +++ b/java/sca/modules/web-javascript-dojo/META-INF/MANIFEST.MF @@ -0,0 +1,20 @@ +Manifest-Version: 1.0 +Tool: Bnd-0.0.357 +Bundle-Name: Apache Tuscany SCA Web JavaScript (DOJO) +Created-By: 1.6.0_15 (Apple Inc.) +Bundle-Vendor: The Apache Software Foundation +Bundle-Version: 2.0.0 +Bnd-LastModified: 1258084980430 +Bundle-ManifestVersion: 2 +Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt +Bundle-Description: Apache Tuscany SCA Web JavaScript +Import-Package: javax.xml.namespace, + org.apache.tuscany.sca.assembly;version="2.0.0", + org.apache.tuscany.sca.assembly.xml;version="2.0.0", + org.apache.tuscany.sca.core;version="2.0.0", + org.apache.tuscany.sca.extensibility, + org.apache.tuscany.sca.monitor;version="2.0.0", + org.apache.tuscany.sca.runtime;version="2.0.0" +Bundle-SymbolicName: org.apache.tuscany.sca.core.web.javascript.dojo +Bundle-DocURL: http://www.apache.org/ + diff --git a/java/sca/modules/web-javascript-dojo/pom.xml b/java/sca/modules/web-javascript-dojo/pom.xml index 47460d3005..3986c1d760 100644 --- a/java/sca/modules/web-javascript-dojo/pom.xml +++ b/java/sca/modules/web-javascript-dojo/pom.xml @@ -22,7 +22,7 @@ org.apache.tuscany.sca tuscany-modules - 1.6-SNAPSHOT + 2.0-SNAPSHOT ../pom.xml @@ -33,19 +33,19 @@ org.apache.tuscany.sca tuscany-core - 1.6-SNAPSHOT + 2.0-SNAPSHOT org.apache.tuscany.sca tuscany-host-http - 1.6-SNAPSHOT + 2.0-SNAPSHOT javax.servlet servlet-api - 2.4 + 2.5 provided diff --git a/java/sca/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoModuleActivator.java b/java/sca/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoModuleActivator.java index 987ef466fc..ba4ddc4b2c 100644 --- a/java/sca/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoModuleActivator.java +++ b/java/sca/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoModuleActivator.java @@ -34,12 +34,16 @@ public class DojoModuleActivator implements ModuleActivator { private static final String tuscanyBaseUri = URI.create("/tuscany").toString(); private static final String tuscanyUri = URI.create("/tuscany/*").toString(); - + private ServletHost servletHost; - public void start(ExtensionPointRegistry registry) { + public DojoModuleActivator(ExtensionPointRegistry registry) { ServletHostExtensionPoint servletHosts = registry.getExtensionPoint(ServletHostExtensionPoint.class); - this.servletHost = servletHosts.getServletHosts().get(0); + + this.servletHost = servletHosts.getServletHosts().get(0); + } + + public void start() { if (servletHost == null) { throw new IllegalStateException("Can't find ServletHost reference !"); @@ -67,7 +71,7 @@ public class DojoModuleActivator implements ModuleActivator { } - public void stop(ExtensionPointRegistry registry) { + public void stop() { Servlet servlet = servletHost.getServletMapping(dojoBaseUri); if(servlet != null) { servletHost.removeServletMapping(dojoBaseUri); @@ -80,5 +84,4 @@ public class DojoModuleActivator implements ModuleActivator { servletHost = null; } - } diff --git a/java/sca/modules/web-javascript/META-INF/MANIFEST.MF b/java/sca/modules/web-javascript/META-INF/MANIFEST.MF new file mode 100644 index 0000000000..f45638fedb --- /dev/null +++ b/java/sca/modules/web-javascript/META-INF/MANIFEST.MF @@ -0,0 +1,21 @@ +Manifest-Version: 1.0 +Tool: Bnd-0.0.357 +Bundle-Name: Apache Tuscany SCA Web JavaScript +Created-By: 1.6.0_15 (Apple Inc.) +Bundle-Vendor: The Apache Software Foundation +Bundle-Version: 2.0.0 +Bnd-LastModified: 1258084980430 +Bundle-ManifestVersion: 2 +Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt +Bundle-Description: Apache Tuscany SCA Web JavaScript +Import-Package: javax.xml.namespace, + org.apache.tuscany.sca.assembly;version="2.0.0", + org.apache.tuscany.sca.assembly.xml;version="2.0.0", + org.apache.tuscany.sca.core;version="2.0.0", + org.apache.tuscany.sca.extensibility, + org.apache.tuscany.sca.monitor;version="2.0.0", + org.apache.tuscany.sca.runtime;version="2.0.0" +Bundle-SymbolicName: org.apache.tuscany.sca.core.web.javascript +Bundle-DocURL: http://www.apache.org/ +Export-Package: org.apache.tuscany.sca.web.javascript;version="2.0.0" + diff --git a/java/sca/modules/web-javascript/pom.xml b/java/sca/modules/web-javascript/pom.xml index 62518e3406..dbaa36fbc8 100644 --- a/java/sca/modules/web-javascript/pom.xml +++ b/java/sca/modules/web-javascript/pom.xml @@ -22,7 +22,7 @@ org.apache.tuscany.sca tuscany-modules - 1.6-SNAPSHOT + 2.0-SNAPSHOT ../pom.xml @@ -33,7 +33,7 @@ org.apache.tuscany.sca tuscany-core - 1.6-SNAPSHOT + 2.0-SNAPSHOT @@ -42,26 +42,5 @@ 4.5 test - - - - - - - org.apache.felix - maven-bundle-plugin - - - ${tuscany.version} - org.apache.tuscany.sca.core.web - ${pom.name} - org.apache.tuscany.sca.core.web - org.apache.tuscany.sca.assembly.xml;version="1.4", * - - - - - - diff --git a/java/sca/modules/web-javascript/src/main/java/org/apache/tuscany/sca/web/javascript/DefaultComponentJavaScriptGeneratorExtensionPoint.java b/java/sca/modules/web-javascript/src/main/java/org/apache/tuscany/sca/web/javascript/DefaultComponentJavaScriptGeneratorExtensionPoint.java index 79ddab1c60..51f243ebcf 100644 --- a/java/sca/modules/web-javascript/src/main/java/org/apache/tuscany/sca/web/javascript/DefaultComponentJavaScriptGeneratorExtensionPoint.java +++ b/java/sca/modules/web-javascript/src/main/java/org/apache/tuscany/sca/web/javascript/DefaultComponentJavaScriptGeneratorExtensionPoint.java @@ -22,10 +22,10 @@ package org.apache.tuscany.sca.web.javascript; import java.io.IOException; import java.lang.reflect.Constructor; import java.util.ArrayList; +import java.util.Collection; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.Set; import javax.xml.namespace.QName; @@ -35,9 +35,6 @@ import org.apache.tuscany.sca.extensibility.ServiceDeclaration; import org.apache.tuscany.sca.extensibility.ServiceDiscovery; import org.apache.tuscany.sca.monitor.Monitor; import org.apache.tuscany.sca.monitor.MonitorFactory; -import org.apache.tuscany.sca.monitor.Problem; -import org.apache.tuscany.sca.monitor.Problem.Severity; -import org.apache.tuscany.sca.monitor.impl.ProblemImpl; /** @@ -72,10 +69,18 @@ public class DefaultComponentJavaScriptGeneratorExtensionPoint implements Compon * @param model */ private void error(String message, Object model, Exception ex) { + /* if (monitor != null) { - Problem problem = new ProblemImpl(this.getClass().getName(), "web-javascript-validation-messages", Severity.ERROR, model, message, ex); + Problem problem = + monitor.createProblem(this.getClass().getName(), + Messages.RESOURCE_BUNDLE, + Severity.ERROR, + model, + message, + ex); monitor.problem(problem); - } + } + */ } public void addComponentJavaScriptGenerator(ComponentJavaScriptGenerator componentScriptGenerator) { @@ -120,7 +125,7 @@ public class DefaultComponentJavaScriptGeneratorExtensionPoint implements Compon } // Get the proxy factories declarations - Set factoryDeclarations = null; + Collection factoryDeclarations = null; try { factoryDeclarations = ServiceDiscovery.getInstance().getServiceDeclarations(ComponentJavaScriptGenerator.class); } catch (IOException e) { diff --git a/java/sca/modules/web-javascript/src/main/java/org/apache/tuscany/sca/web/javascript/DefaultJavascriptProxyFactoryExtensionPoint.java b/java/sca/modules/web-javascript/src/main/java/org/apache/tuscany/sca/web/javascript/DefaultJavascriptProxyFactoryExtensionPoint.java index 6ec7577d52..60f69615ed 100644 --- a/java/sca/modules/web-javascript/src/main/java/org/apache/tuscany/sca/web/javascript/DefaultJavascriptProxyFactoryExtensionPoint.java +++ b/java/sca/modules/web-javascript/src/main/java/org/apache/tuscany/sca/web/javascript/DefaultJavascriptProxyFactoryExtensionPoint.java @@ -21,22 +21,19 @@ package org.apache.tuscany.sca.web.javascript; import java.io.IOException; import java.lang.reflect.Constructor; +import java.util.Collection; import java.util.HashMap; import java.util.Map; -import java.util.Set; import javax.xml.namespace.QName; -import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint; import org.apache.tuscany.sca.core.ExtensionPointRegistry; +import org.apache.tuscany.sca.core.FactoryExtensionPoint; import org.apache.tuscany.sca.core.UtilityExtensionPoint; import org.apache.tuscany.sca.extensibility.ServiceDeclaration; import org.apache.tuscany.sca.extensibility.ServiceDiscovery; import org.apache.tuscany.sca.monitor.Monitor; import org.apache.tuscany.sca.monitor.MonitorFactory; -import org.apache.tuscany.sca.monitor.Problem; -import org.apache.tuscany.sca.monitor.Problem.Severity; -import org.apache.tuscany.sca.monitor.impl.ProblemImpl; /** * Default extension point for javascript proxy factories @@ -67,10 +64,18 @@ public class DefaultJavascriptProxyFactoryExtensionPoint implements JavascriptPr * @param model */ private void error(String message, Object model, Exception ex) { + /* if (monitor != null) { - Problem problem = new ProblemImpl(this.getClass().getName(), "web-javascript-validation-messages", Severity.ERROR, model, message, ex); + Problem problem = + monitor.createProblem(this.getClass().getName(), + Messages.RESOURCE_BUNDLE, + Severity.WARNING, + model, + message, + (Object[])messageParameters); monitor.problem(problem); - } + } + */ } public void addProxyFactory(JavascriptProxyFactory javascriptProxyfactory) { @@ -111,7 +116,7 @@ public class DefaultJavascriptProxyFactoryExtensionPoint implements JavascriptPr if (bindingType.isInterface()) { // Dynamically load a factory class declared under META-INF/services try { - Class factoryClass = ServiceDiscovery.getInstance().loadFirstServiceClass(bindingType); + Class factoryClass = ServiceDiscovery.getInstance().getServiceDeclaration(bindingType).getClass(); if (factoryClass != null) { try { @@ -121,7 +126,7 @@ public class DefaultJavascriptProxyFactoryExtensionPoint implements JavascriptPr } catch (NoSuchMethodException e) { // Constructor taking the model factory extension point - Constructor constructor = factoryClass.getConstructor(ModelFactoryExtensionPoint.class); + Constructor constructor = factoryClass.getConstructor(FactoryExtensionPoint.class); factory = (JavascriptProxyFactory) constructor.newInstance(this); } @@ -135,7 +140,7 @@ public class DefaultJavascriptProxyFactoryExtensionPoint implements JavascriptPr // Call the newInstance static method on the factory abstract class try { - factory = (JavascriptProxyFactory) ServiceDiscovery.getInstance().newFactoryClassInstance(bindingType); + factory = (JavascriptProxyFactory) ServiceDiscovery.getInstance().getServiceDeclaration(bindingType); } catch (Exception e) { throw new IllegalArgumentException(e); } @@ -186,7 +191,7 @@ public class DefaultJavascriptProxyFactoryExtensionPoint implements JavascriptPr } // Get the proxy factories declarations - Set factoryDeclarations = null; + Collection factoryDeclarations = null; try { factoryDeclarations = ServiceDiscovery.getInstance().getServiceDeclarations(JavascriptProxyFactory.class); } catch (IOException e) { -- cgit v1.2.3