diff options
author | lresende <lresende@13f79535-47bb-0310-9956-ffa450edef68> | 2010-06-04 02:38:54 +0000 |
---|---|---|
committer | lresende <lresende@13f79535-47bb-0310-9956-ffa450edef68> | 2010-06-04 02:38:54 +0000 |
commit | 21a870046c18047f1505da9ec97180bd17920919 (patch) | |
tree | 4abf72f15c44d1d8f979d6ffb4766818232c19fb /sca-java-2.x/trunk/modules/web-javascript-dojo | |
parent | 6d260660f6a14a6aeac68e8819a77f46602bb346 (diff) |
TUSCANY-3565 - Registering dojo resource servlet only when implementation widget starts...
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@951242 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
-rw-r--r-- | sca-java-2.x/trunk/modules/web-javascript-dojo/META-INF/MANIFEST.MF | 1 | ||||
-rw-r--r-- | sca-java-2.x/trunk/modules/web-javascript-dojo/pom.xml | 6 | ||||
-rw-r--r-- | sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoModuleActivator.java | 97 | ||||
-rw-r--r-- | sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/resources/META-INF/services/org.apache.tuscany.sca.implementation.widget.javascript.WidgetImplementationJavascriptProvider (renamed from sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/resources/META-INF/services/org.apache.tuscany.sca.core.ModuleActivator) | 3 |
4 files changed, 9 insertions, 98 deletions
diff --git a/sca-java-2.x/trunk/modules/web-javascript-dojo/META-INF/MANIFEST.MF b/sca-java-2.x/trunk/modules/web-javascript-dojo/META-INF/MANIFEST.MF index 2730e38cbb..176b77572a 100644 --- a/sca-java-2.x/trunk/modules/web-javascript-dojo/META-INF/MANIFEST.MF +++ b/sca-java-2.x/trunk/modules/web-javascript-dojo/META-INF/MANIFEST.MF @@ -15,6 +15,7 @@ Import-Package: javax.servlet, org.apache.tuscany.sca.core;version="2.0.0",
org.apache.tuscany.sca.extensibility;version="2.0.0",
org.apache.tuscany.sca.host.http;version="2.0.0",
+ org.apache.tuscany.sca.implementation.widget.javascript;version="2.0.0",
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
diff --git a/sca-java-2.x/trunk/modules/web-javascript-dojo/pom.xml b/sca-java-2.x/trunk/modules/web-javascript-dojo/pom.xml index be75ad8eb4..f41739a7cb 100644 --- a/sca-java-2.x/trunk/modules/web-javascript-dojo/pom.xml +++ b/sca-java-2.x/trunk/modules/web-javascript-dojo/pom.xml @@ -35,6 +35,12 @@ <artifactId>tuscany-core</artifactId> <version>2.0-SNAPSHOT</version> </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-implementation-widget</artifactId> + <version>2.0-SNAPSHOT</version> + </dependency> <dependency> <groupId>org.apache.tuscany.sca</groupId> diff --git a/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoModuleActivator.java b/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoModuleActivator.java deleted file mode 100644 index f9fdd96e1f..0000000000 --- a/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoModuleActivator.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.web.javascript.dojo; - -import java.net.URI; -import java.util.logging.Logger; - -import javax.servlet.Servlet; - -import org.apache.tuscany.sca.core.ExtensionPointRegistry; -import org.apache.tuscany.sca.core.ModuleActivator; -import org.apache.tuscany.sca.host.http.ServletHost; -import org.apache.tuscany.sca.host.http.ServletHostHelper; -import org.apache.tuscany.sca.host.http.ServletMappingException; - -public class DojoModuleActivator implements ModuleActivator { - private final static Logger logger = Logger.getLogger(DojoModuleActivator.class.getName()); - - private static final String dojoBaseUri = URI.create("/dojo").toString(); - private static final String dojoUri = URI.create("/dojo/*").toString(); - - private static final String tuscanyBaseUri = URI.create("/tuscany").toString(); - private static final String tuscanyUri = URI.create("/tuscany/*").toString(); - - private ServletHost servletHost; - - public DojoModuleActivator(ExtensionPointRegistry registry) { - this.servletHost = ServletHostHelper.getServletHost(registry); - } - - public void start() { - - if (servletHost == null) { - throw new IllegalStateException("Can't find ServletHost reference !"); - } - - Servlet servlet = null; - - servlet = servletHost.getServletMapping(dojoBaseUri); - if(servlet == null) { - try { - DojoResourceServlet baseResourceServlet = new DojoResourceServlet(); - servletHost.addServletMapping(dojoBaseUri, baseResourceServlet); - - DojoResourceServlet resourceServlet = new DojoResourceServlet(); - servletHost.addServletMapping(dojoUri, resourceServlet); - } catch (ServletMappingException me ) { - logger.warning("Dojo already registered at :" + dojoBaseUri); - } - } - - servlet = servletHost.getServletMapping(tuscanyBaseUri); - if(servlet == null) { - try { - DojoResourceServlet baseResourceServlet = new DojoResourceServlet(); - servletHost.addServletMapping(tuscanyBaseUri, baseResourceServlet); - - DojoResourceServlet resourceServlet = new DojoResourceServlet(); - servletHost.addServletMapping(tuscanyUri, resourceServlet); - } catch (ServletMappingException me ) { - logger.warning("Tuscany dojo extensions already registered at :" + tuscanyBaseUri); - } - } - - } - - public void stop() { - Servlet servlet = servletHost.getServletMapping(dojoBaseUri); - if(servlet != null) { - servletHost.removeServletMapping(dojoBaseUri); - servletHost.removeServletMapping(dojoUri); - - servletHost.removeServletMapping(tuscanyBaseUri); - servletHost.removeServletMapping(tuscanyUri); - } - - servletHost = null; - - } -} diff --git a/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/resources/META-INF/services/org.apache.tuscany.sca.core.ModuleActivator b/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/resources/META-INF/services/org.apache.tuscany.sca.implementation.widget.javascript.WidgetImplementationJavascriptProvider index 34edcb5199..70d29a5d86 100644 --- a/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/resources/META-INF/services/org.apache.tuscany.sca.core.ModuleActivator +++ b/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/resources/META-INF/services/org.apache.tuscany.sca.implementation.widget.javascript.WidgetImplementationJavascriptProvider @@ -14,5 +14,6 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. +# # Implementation class for the ModuleActivator -org.apache.tuscany.sca.web.javascript.dojo.DojoModuleActivator;priority=9999 +org.apache.tuscany.sca.web.javascript.dojo.DojoWidgetJavascriptProvider;priority=9999 |