You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by da...@apache.org on 2006/03/20 23:43:41 UTC
svn commit: r387330 - in /cocoon/trunk/cocoon-blocks-fw:
cocoon-blocks-fw-ecm-impl/
cocoon-blocks-fw-ecm-impl/src/main/java/org/apache/cocoon/container/
cocoon-blocks-fw-impl/ cocoon-blocks-fw-impl/META-INF/
cocoon-blocks-fw-impl/src/main/java/org/apac...
Author: danielf
Date: Mon Mar 20 14:43:39 2006
New Revision: 387330
URL: http://svn.apache.org/viewcvs?rev=387330&view=rev
Log:
Reorganizing: moving the OSGi code to blocks-fw and makes it a bundle and moving the non OSGi block fw code to blocks-servlet-fw.
Added:
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/META-INF/components.xml
- copied, changed from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/components.xml
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Activator.java
- copied, changed from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/Activator.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockConnection.java
- copied, changed from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockConnection.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockProtocol.java
- copied, changed from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockProtocol.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockServlet.java
- copied, changed from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockServlet.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockConstants.java
- copied, changed from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockConstants.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockContext.java (with props)
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/Blocks.java
- copied, changed from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Blocks.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlocksContext.java
- copied, changed from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlocksContext.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/ServiceManagerRegistry.java
- copied, changed from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/ServiceManagerRegistry.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/ServiceManagerRegistryImpl.java
- copied, changed from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/ServiceManagerRegistryImpl.java
Removed:
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockConstants.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Blocks.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlocksContext.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/ServiceManagerRegistry.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/ServiceManagerRegistryImpl.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/Activator.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockConnection.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockContext.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockProtocol.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockServlet.java
Modified:
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-ecm-impl/pom.xml
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-ecm-impl/src/main/java/org/apache/cocoon/container/ECMBlockServiceManager.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/META-INF/MANIFEST.MF
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/pom.xml
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockContext.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/MANIFEST.MF
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/components.xml
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/pom.xml
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockManager.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockWiring.java
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlocksManager.java
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-ecm-impl/pom.xml
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-ecm-impl/pom.xml?rev=387330&r1=387329&r2=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-ecm-impl/pom.xml (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-ecm-impl/pom.xml Mon Mar 20 14:43:39 2006
@@ -18,7 +18,7 @@
</dependency>
<dependency>
<groupId>org.apache.cocoon</groupId>
- <artifactId>cocoon-blocks-fw-impl</artifactId>
+ <artifactId>cocoon-blocks-fw-servlet-impl</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-ecm-impl/src/main/java/org/apache/cocoon/container/ECMBlockServiceManager.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-ecm-impl/src/main/java/org/apache/cocoon/container/ECMBlockServiceManager.java?rev=387330&r1=387329&r2=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-ecm-impl/src/main/java/org/apache/cocoon/container/ECMBlockServiceManager.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-ecm-impl/src/main/java/org/apache/cocoon/container/ECMBlockServiceManager.java Mon Mar 20 14:43:39 2006
@@ -29,8 +29,8 @@
import org.apache.avalon.framework.service.ServiceException;
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.avalon.framework.service.Serviceable;
-import org.apache.cocoon.blocks.BlockConstants;
-import org.apache.cocoon.blocks.ServiceManagerRegistry;
+import org.apache.cocoon.blocks.servlet.BlockConstants;
+import org.apache.cocoon.blocks.servlet.ServiceManagerRegistry;
import org.apache.cocoon.components.ComponentInfo;
import org.apache.cocoon.components.LifecycleHelper;
import org.apache.cocoon.components.container.CocoonServiceManager;
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/META-INF/MANIFEST.MF?rev=387330&r1=387329&r2=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/META-INF/MANIFEST.MF (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/META-INF/MANIFEST.MF Mon Mar 20 14:43:39 2006
@@ -3,8 +3,13 @@
Bundle-Name: cocoon-blocks-fw-impl
Bundle-SymbolicName: org.apache.cocoon.blocks
Bundle-Version: 1.0.0
+Service-Component: META-INF/components.xml
Bundle-Localization: plugin
Import-Package: javax.servlet;version="2.3.0",
- javax.servlet.http
-Export-Package: org.apache.cocoon.blocks,
- org.apache.cocoon.blocks.util
+ javax.servlet.http,
+ org.osgi.framework;version="1.3.0",
+ org.osgi.service.component;version="1.0.0",
+ org.osgi.service.http;version="1.2.0",
+ org.osgi.service.log;version="1.3.0",
+ org.osgi.service.url;version="1.0.0"
+Export-Package: org.apache.cocoon.blocks
Copied: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/META-INF/components.xml (from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/components.xml)
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/META-INF/components.xml?p2=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/META-INF/components.xml&p1=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/components.xml&r1=387051&r2=387330&rev=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/components.xml (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/META-INF/components.xml Mon Mar 20 14:43:39 2006
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<components xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
<scr:component name="cocoon.activator">
- <scr:implementation class="org.apache.cocoon.blocks.osgi.Activator"/>
+ <scr:implementation class="org.apache.cocoon.blocks.Activator"/>
<scr:reference name="LOG"
interface="org.osgi.service.log.LogService"
bind="setLog"/>
@@ -15,66 +15,17 @@
bind="setServlet"
unbind="unsetServlet"/>
</scr:component>
-
+
<scr:component name="cocoon.protocol.block">
- <scr:implementation class="org.apache.cocoon.blocks.osgi.BlockProtocol"/>
+ <scr:implementation class="org.apache.cocoon.blocks.BlockProtocol"/>
<scr:service>
<scr:provide interface="org.osgi.service.url.URLStreamHandlerService"/>
- </scr:service>
- <scr:property name="url.handler.protocol">
- block
- </scr:property>
+ </scr:service>
+ <scr:property name="url.handler.protocol">
+ block
+ </scr:property>
<scr:reference name="LOG"
interface="org.osgi.service.log.LogService"
bind="setLog"/>
- </scr:component>
-
- <scr:component name="cocoon.blockServlet1">
- <scr:implementation class="org.apache.cocoon.blocks.osgi.BlockServlet"/>
- <scr:service>
- <scr:provide interface="javax.servlet.Servlet"/>
- </scr:service>
- <scr:property name="path" value="/test1"/>
- <scr:property name="attr" value="foo"/>
- <scr:reference name="blockServlet"
- interface="javax.servlet.Servlet"
- target="(component.name=cocoon.servlet1)"/>
- </scr:component>
-
- <scr:component name="cocoon.blockServlet2">
- <scr:implementation class="org.apache.cocoon.blocks.osgi.BlockServlet"/>
- <scr:service>
- <scr:provide interface="javax.servlet.Servlet"/>
- </scr:service>
- <scr:property name="path" value="/test2"/>
- <scr:property name="attr" value="bar"/>
- <scr:reference name="blockServlet"
- interface="javax.servlet.Servlet"
- target="(component.name=cocoon.servlet2)"/>
- <scr:reference name="block1"
- interface="javax.servlet.Servlet"
- target="(component.name=cocoon.blockServlet1)"/>
- </scr:component>
-
- <scr:component name="cocoon.servlet1">
- <scr:implementation class="org.apache.cocoon.blocks.osgi.TestServlet"/>
- <scr:service>
- <scr:provide interface="javax.servlet.Servlet"/>
- </scr:service>
- </scr:component>
-
- <scr:component name="cocoon.servlet2">
- <scr:implementation class="org.apache.cocoon.blocks.osgi.TestServlet2"/>
- <scr:service>
- <scr:provide interface="javax.servlet.Servlet"/>
- </scr:service>
- </scr:component>
-
- <scr:component name="cocoon.servlet3">
- <scr:implementation class="org.apache.cocoon.blocks.osgi.TestServlet"/>
- <scr:service>
- <scr:provide interface="javax.servlet.Servlet"/>
- </scr:service>
- <scr:property name="path" value="/test3"/>
</scr:component>
</components>
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/pom.xml
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/pom.xml?rev=387330&r1=387329&r2=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/pom.xml (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/pom.xml Mon Mar 20 14:43:39 2006
@@ -12,9 +12,14 @@
<name>Blocks Framework Implementation</name>
<dependencies>
<dependency>
- <groupId>org.apache.avalon.framework</groupId>
- <artifactId>avalon-framework-api</artifactId>
- <version>4.3</version>
+ <groupId>org.osgi</groupId>
+ <artifactId>osgi_R4_core</artifactId>
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>osgi_R4_compendium</artifactId>
+ <version>1.0</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
Copied: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Activator.java (from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/Activator.java)
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Activator.java?p2=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Activator.java&p1=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/Activator.java&r1=387051&r2=387330&rev=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/Activator.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Activator.java Mon Mar 20 14:43:39 2006
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.cocoon.blocks.osgi;
+package org.apache.cocoon.blocks;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
Copied: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockConnection.java (from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockConnection.java)
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockConnection.java?p2=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockConnection.java&p1=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockConnection.java&r1=387051&r2=387330&rev=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockConnection.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockConnection.java Mon Mar 20 14:43:39 2006
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.cocoon.blocks.osgi;
+package org.apache.cocoon.blocks;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@@ -29,7 +29,6 @@
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
-import org.apache.cocoon.blocks.BlockCallStack;
import org.apache.cocoon.blocks.util.BlockCallHttpServletRequest;
import org.apache.cocoon.blocks.util.BlockCallHttpServletResponse;
import org.osgi.service.log.LogService;
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockContext.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockContext.java?rev=387330&r1=387329&r2=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockContext.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockContext.java Mon Mar 20 14:43:39 2006
@@ -35,6 +35,7 @@
import javax.servlet.http.HttpServletRequest;
import org.apache.cocoon.blocks.util.ServletContextWrapper;
+import org.osgi.service.component.ComponentContext;
/**
* @version $Id$
@@ -43,11 +44,10 @@
private Hashtable attributes;
private Servlet servlet;
- private URL contextURL;
private String mountPath;
- private Dictionary connections;
private Dictionary properties;
-
+ protected ComponentContext componentContext;
+
/*
* (non-Javadoc)
*
@@ -93,8 +93,7 @@
public URL getResource(String path) throws MalformedURLException {
if (path.length() == 0 || path.charAt(0) != '/')
throw new MalformedURLException("The path must start with '/' " + path);
- path = path.substring(1);
- return new URL(this.contextURL, path);
+ return this.componentContext.getBundleContext().getBundle().getResource(path);
}
/*
@@ -272,21 +271,12 @@
* Get the context of a block with a given name.
*/
public ServletContext getNamedContext(String name) {
- ServletContext context = null;
- String blockId = (String) this.connections.get(name);
- if (blockId != null)
- context = ((BlocksContext)super.servletContext).getNamedContext(blockId);
-
- return context;
- }
-
- /**
- * @param contextURL The contextURL to set.
- */
- public void setContextURL(URL contextURL) {
- this.contextURL = contextURL;
+ BlockServlet blockServlet =
+ (BlockServlet) this.componentContext.locateService(name);
+ System.out.println("OSGIBlockContext: " + name + "=" + blockServlet);
+ return blockServlet.getBlockContext();
}
-
+
/**
* @param mountPath The mountPath to set.
*/
@@ -302,17 +292,14 @@
}
/**
- * @param connections The connections to set.
- */
- public void setConnections(Dictionary connections) {
- this.connections = connections;
- }
-
- /**
* @param properties The properties to set.
*/
public void setProperties(Dictionary properties) {
this.properties = properties;
+ }
+
+ protected void activate(ComponentContext componentContext) {
+ this.componentContext = componentContext;
}
protected class NamedDispatcher implements RequestDispatcher {
Copied: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockProtocol.java (from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockProtocol.java)
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockProtocol.java?p2=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockProtocol.java&p1=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockProtocol.java&r1=387051&r2=387330&rev=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockProtocol.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockProtocol.java Mon Mar 20 14:43:39 2006
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.cocoon.blocks.osgi;
+package org.apache.cocoon.blocks;
import java.io.IOException;
import java.net.URL;
Copied: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockServlet.java (from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockServlet.java)
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockServlet.java?p2=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockServlet.java&p1=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockServlet.java&r1=387051&r2=387330&rev=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/src/main/java/org/apache/cocoon/blocks/osgi/BlockServlet.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockServlet.java Mon Mar 20 14:43:39 2006
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.cocoon.blocks.osgi;
+package org.apache.cocoon.blocks;
import java.io.IOException;
import java.util.Enumeration;
@@ -26,7 +26,6 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-import org.apache.cocoon.blocks.BlockCallStack;
import org.apache.cocoon.blocks.util.ServletConfigurationWrapper;
import org.osgi.service.component.ComponentContext;
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/MANIFEST.MF?rev=387330&r1=387329&r2=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/MANIFEST.MF (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/MANIFEST.MF Mon Mar 20 14:43:39 2006
@@ -7,10 +7,4 @@
Bundle-Localization: plugin
Import-Package: javax.servlet,
javax.servlet.http,
- org.apache.cocoon.blocks,
- org.apache.cocoon.blocks.util,
- org.osgi.framework;version="1.3.0",
- org.osgi.service.component;version="1.0.0",
- org.osgi.service.http,
- org.osgi.service.log,
- org.osgi.service.url
+ org.apache.cocoon.blocks
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/components.xml
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/components.xml?rev=387330&r1=387329&r2=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/components.xml (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-osgi-impl/META-INF/components.xml Mon Mar 20 14:43:39 2006
@@ -1,36 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<components xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <scr:component name="cocoon.activator">
- <scr:implementation class="org.apache.cocoon.blocks.osgi.Activator"/>
- <scr:reference name="LOG"
- interface="org.osgi.service.log.LogService"
- bind="setLog"/>
- <scr:reference name="HTTP"
- interface="org.osgi.service.http.HttpService"
- bind="setHttpService"/>
- <scr:reference name="Servlet"
- interface="javax.servlet.Servlet"
- cardinality="0..n"
- policy="dynamic"
- bind="setServlet"
- unbind="unsetServlet"/>
- </scr:component>
-
- <scr:component name="cocoon.protocol.block">
- <scr:implementation class="org.apache.cocoon.blocks.osgi.BlockProtocol"/>
- <scr:service>
- <scr:provide interface="org.osgi.service.url.URLStreamHandlerService"/>
- </scr:service>
- <scr:property name="url.handler.protocol">
- block
- </scr:property>
- <scr:reference name="LOG"
- interface="org.osgi.service.log.LogService"
- bind="setLog"/>
- </scr:component>
-
<scr:component name="cocoon.blockServlet1">
- <scr:implementation class="org.apache.cocoon.blocks.osgi.BlockServlet"/>
+ <scr:implementation class="org.apache.cocoon.blocks.BlockServlet"/>
<scr:service>
<scr:provide interface="javax.servlet.Servlet"/>
</scr:service>
@@ -42,7 +13,7 @@
</scr:component>
<scr:component name="cocoon.blockServlet2">
- <scr:implementation class="org.apache.cocoon.blocks.osgi.BlockServlet"/>
+ <scr:implementation class="org.apache.cocoon.blocks.BlockServlet"/>
<scr:service>
<scr:provide interface="javax.servlet.Servlet"/>
</scr:service>
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/pom.xml
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/pom.xml?rev=387330&r1=387329&r2=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/pom.xml (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/pom.xml Mon Mar 20 14:43:39 2006
@@ -34,12 +34,6 @@
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.apache.cocoon</groupId>
- <artifactId>cocoon-blocks-fw-ecm-impl</artifactId>
- <version>1.0-SNAPSHOT</version>
- <scope>test</scope>
- </dependency>
- <dependency>
<groupId>httpunit</groupId>
<artifactId>httpunit</artifactId>
<version>1.6</version>
Copied: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockConstants.java (from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockConstants.java)
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockConstants.java?p2=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockConstants.java&p1=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockConstants.java&r1=387051&r2=387330&rev=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockConstants.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockConstants.java Mon Mar 20 14:43:39 2006
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.cocoon.blocks;
+package org.apache.cocoon.blocks.servlet;
/**
* BlockConstants used in the blocks framework
Added: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockContext.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockContext.java?rev=387330&view=auto
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockContext.java (added)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockContext.java Mon Mar 20 14:43:39 2006
@@ -0,0 +1,69 @@
+/*
+ * Copyright 1999-2004 The Apache Software Foundation.
+ *
+ * Licensed 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.cocoon.blocks.servlet;
+
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.Dictionary;
+
+import javax.servlet.ServletContext;
+
+
+/**
+ * @version $Id$
+ */
+public class BlockContext extends org.apache.cocoon.blocks.BlockContext {
+
+ private URL contextURL;
+ private Dictionary connections;
+
+ /* (non-Javadoc)
+ * @see javax.servlet.ServletContext#getResource(java.lang.String)
+ */
+ public URL getResource(String path) throws MalformedURLException {
+ if (path.length() == 0 || path.charAt(0) != '/')
+ throw new MalformedURLException("The path must start with '/' " + path);
+ path = path.substring(1);
+ return new URL(this.contextURL, path);
+ }
+
+ /**
+ * Get the context of a block with a given name.
+ */
+ public ServletContext getNamedContext(String name) {
+ ServletContext context = null;
+ String blockId = (String) this.connections.get(name);
+ if (blockId != null)
+ context = ((BlocksContext)super.servletContext).getNamedContext(blockId);
+
+ return context;
+ }
+
+ /**
+ * @param contextURL The contextURL to set.
+ */
+ public void setContextURL(URL contextURL) {
+ this.contextURL = contextURL;
+ }
+
+ /**
+ * @param connections The connections to set.
+ */
+ public void setConnections(Dictionary connections) {
+ this.connections = connections;
+ }
+
+}
Propchange: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockContext.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockContext.java
------------------------------------------------------------------------------
svn:keywords = Id
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockManager.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockManager.java?rev=387330&r1=387329&r2=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockManager.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockManager.java Mon Mar 20 14:43:39 2006
@@ -35,8 +35,6 @@
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.cocoon.blocks.Block;
import org.apache.cocoon.blocks.BlockCallStack;
-import org.apache.cocoon.blocks.BlockContext;
-import org.apache.cocoon.blocks.ServiceManagerRegistry;
import org.apache.cocoon.blocks.util.ServletConfigurationWrapper;
import org.apache.cocoon.components.LifecycleHelper;
import org.apache.cocoon.util.ClassUtils;
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockWiring.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockWiring.java?rev=387330&r1=387329&r2=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockWiring.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockWiring.java Mon Mar 20 14:43:39 2006
@@ -27,7 +27,6 @@
import org.apache.avalon.framework.configuration.ConfigurationException;
import org.apache.avalon.framework.configuration.DefaultConfigurationBuilder;
import org.apache.avalon.framework.logger.AbstractLogEnabled;
-import org.apache.cocoon.blocks.BlockConstants;
import org.xml.sax.SAXException;
/**
Copied: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/Blocks.java (from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Blocks.java)
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/Blocks.java?p2=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/Blocks.java&p1=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Blocks.java&r1=387051&r2=387330&rev=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Blocks.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/Blocks.java Mon Mar 20 14:43:39 2006
@@ -13,7 +13,9 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.cocoon.blocks;
+package org.apache.cocoon.blocks.servlet;
+
+import org.apache.cocoon.blocks.Block;
/**
* @version $Id$
Copied: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlocksContext.java (from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlocksContext.java)
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlocksContext.java?p2=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlocksContext.java&p1=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlocksContext.java&r1=387051&r2=387330&rev=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlocksContext.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlocksContext.java Mon Mar 20 14:43:39 2006
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.cocoon.blocks;
+package org.apache.cocoon.blocks.servlet;
import java.io.IOException;
@@ -26,6 +26,7 @@
import javax.servlet.http.HttpServletRequestWrapper;
import javax.servlet.http.HttpServletResponse;
+import org.apache.cocoon.blocks.Block;
import org.apache.cocoon.blocks.util.ServletContextWrapper;
/**
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlocksManager.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlocksManager.java?rev=387330&r1=387329&r2=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlocksManager.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlocksManager.java Mon Mar 20 14:43:39 2006
@@ -40,11 +40,6 @@
import org.apache.cocoon.Modifiable;
import org.apache.cocoon.ProcessingException;
import org.apache.cocoon.blocks.Block;
-import org.apache.cocoon.blocks.BlockConstants;
-import org.apache.cocoon.blocks.Blocks;
-import org.apache.cocoon.blocks.BlocksContext;
-import org.apache.cocoon.blocks.ServiceManagerRegistry;
-import org.apache.cocoon.blocks.ServiceManagerRegistryImpl;
import org.apache.cocoon.blocks.util.ServletConfigurationWrapper;
import org.apache.cocoon.components.LifecycleHelper;
import org.apache.cocoon.components.source.SourceUtil;
Copied: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/ServiceManagerRegistry.java (from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/ServiceManagerRegistry.java)
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/ServiceManagerRegistry.java?p2=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/ServiceManagerRegistry.java&p1=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/ServiceManagerRegistry.java&r1=387051&r2=387330&rev=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/ServiceManagerRegistry.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/ServiceManagerRegistry.java Mon Mar 20 14:43:39 2006
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.cocoon.blocks;
+package org.apache.cocoon.blocks.servlet;
import org.apache.avalon.framework.service.ServiceManager;
Copied: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/ServiceManagerRegistryImpl.java (from r387051, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/ServiceManagerRegistryImpl.java)
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/ServiceManagerRegistryImpl.java?p2=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/ServiceManagerRegistryImpl.java&p1=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/ServiceManagerRegistryImpl.java&r1=387051&r2=387330&rev=387330&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/ServiceManagerRegistryImpl.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/ServiceManagerRegistryImpl.java Mon Mar 20 14:43:39 2006
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.cocoon.blocks;
+package org.apache.cocoon.blocks.servlet;
import java.util.Collections;
import java.util.HashMap;