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/02/16 23:07:10 UTC
svn commit: r378376 - in /cocoon/trunk/cocoon-blocks-fw:
cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/
cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/
Author: danielf
Date: Thu Feb 16 14:07:06 2006
New Revision: 378376
URL: http://svn.apache.org/viewcvs?rev=378376&view=rev
Log:
Removed unused method in Block. Removed direct dependency of BlockWiring for BlockContext and moved the BlockWiring to blocks servlet.
Added:
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockWiring.java
- copied, changed from r378112, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockWiring.java
Removed:
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockWiring.java
Modified:
cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Block.java
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-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockManager.java
Modified: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Block.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Block.java?rev=378376&r1=378375&r2=378376&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Block.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/Block.java Thu Feb 16 14:07:06 2006
@@ -18,8 +18,6 @@
import javax.servlet.Servlet;
import javax.servlet.ServletContext;
-import org.apache.avalon.framework.service.ServiceManager;
-
/**
* @version $Id$
*/
@@ -28,12 +26,5 @@
public static String NAME = Block.class.getName() + "-name";
public static String SUPER = "super";
- /**
- * The exported components of the block. Return null if the block doesn't export components.
- *
- * @return a ServiceManager containing the blocks exported components
- */
- public ServiceManager getServiceManager();
-
public ServletContext getBlockContext();
}
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=378376&r1=378375&r2=378376&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 Thu Feb 16 14:07:06 2006
@@ -21,6 +21,7 @@
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
+import java.util.Dictionary;
import java.util.Enumeration;
import java.util.Hashtable;
import java.util.Set;
@@ -40,14 +41,14 @@
public class BlockContext extends ServletContextWrapper {
private Hashtable attributes;
- private BlockWiring wiring;
private Servlet servlet;
private URL contextURL;
+ private String mountPath;
+ private Dictionary connections;
+ private Dictionary properties;
- public BlockContext(ServletContext parentContext, URL contextURL, BlockWiring wiring) {
+ public BlockContext(ServletContext parentContext) {
super(parentContext);
- this.contextURL = contextURL;
- this.wiring = wiring;
}
/*
@@ -116,7 +117,7 @@
*/
// FIXME, this should be defined in the config instead
public String getInitParameter(String name) {
- String value = this.wiring.getProperty(name);
+ String value = (String) this.properties.get(name);
// Ask the super block for the property
if (value == null) {
ServletContext superContext = this.getNamedContext(Block.SUPER);
@@ -275,7 +276,7 @@
*/
public ServletContext getNamedContext(String name) {
ServletContext context = null;
- String blockId = this.wiring.getBlockId(name);
+ String blockId = (String) this.connections.get(name);
if (blockId != null)
context = ((BlocksContext)super.servletContext).getNamedContext(blockId);
@@ -283,12 +284,40 @@
}
/**
+ * @param contextURL The contextURL to set.
+ */
+ public void setContextURL(URL contextURL) {
+ this.contextURL = contextURL;
+ }
+
+ /**
+ * @param mountPath The mountPath to set.
+ */
+ public void setMountPath(String mountPath) {
+ this.mountPath = mountPath;
+ }
+
+ /**
* Get the mount path of the block context
*/
public String getMountPath() {
- return this.wiring.getMountPath();
+ return this.mountPath;
}
-
+
+ /**
+ * @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;
+ }
+
private class NamedDispatcher implements RequestDispatcher {
private String blockName;
@@ -298,7 +327,8 @@
private NamedDispatcher(String blockName) {
this.blockName = blockName;
this.superCall = Block.SUPER.equals(this.blockName);
- String blockId = BlockContext.this.wiring.getBlockId(this.blockName);
+ String blockId =
+ (String) BlockContext.this.connections.get(this.blockName);
if (blockId != null) {
// Call to a named block that exists in the current context
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=378376&r1=378375&r2=378376&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 Thu Feb 16 14:07:06 2006
@@ -36,7 +36,6 @@
import org.apache.cocoon.blocks.Block;
import org.apache.cocoon.blocks.BlockCallStack;
import org.apache.cocoon.blocks.BlockContext;
-import org.apache.cocoon.blocks.BlockWiring;
import org.apache.cocoon.blocks.ServiceManagerRegistry;
import org.apache.cocoon.blocks.util.ServletConfigurationWrapper;
import org.apache.cocoon.components.LifecycleHelper;
@@ -99,8 +98,11 @@
getLogger().debug("Initializing new Block Manager: " + this.blockWiring.getId());
- this.blockContext =
- new BlockContext(this.getServletContext(), this.contextURL, this.blockWiring);
+ this.blockContext = new BlockContext(this.getServletContext());
+ this.blockContext.setContextURL(this.contextURL);
+ this.blockContext.setMountPath(this.blockWiring.getMountPath());
+ this.blockContext.setConnections(this.blockWiring.getConnections());
+ this.blockContext.setProperties(this.blockWiring.getProperties());
ServletConfig blockServletConfig =
new ServletConfigurationWrapper(this.getServletConfig(), this.blockContext);
@@ -166,20 +168,6 @@
super.destroy();
}
- /**
- * The exported components of the block. Return null if the block doesn't export components.
- *
- * @return a ServiceManager containing the blocks exported components
- */
- public ServiceManager getServiceManager() {
- // Check that the block have a local service manager
- if (this.blockWiring.getComponentConfiguration() != null) {
- return this.serviceManager;
- } else {
- return null;
- }
- }
-
public ServletContext getBlockContext() {
return this.blockContext;
}
Copied: cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockWiring.java (from r378112, cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/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?p2=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockWiring.java&p1=cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockWiring.java&r1=378112&r2=378376&rev=378376&view=diff
==============================================================================
--- cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-impl/src/main/java/org/apache/cocoon/blocks/BlockWiring.java (original)
+++ cocoon/trunk/cocoon-blocks-fw/cocoon-blocks-fw-servlet-impl/src/main/java/org/apache/cocoon/blocks/servlet/BlockWiring.java Thu Feb 16 14:07:06 2006
@@ -13,13 +13,13 @@
* 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;
import java.net.URL;
+import java.util.Dictionary;
import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Map;
+import java.util.Hashtable;
import java.util.Vector;
import org.apache.avalon.framework.configuration.Configurable;
@@ -27,6 +27,7 @@
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;
/**
@@ -38,8 +39,8 @@
private URL contextURL;
private String id;
- private Map connections = new HashMap();
- private Map properties = new HashMap();
+ private Dictionary connections = new Hashtable();
+ private Dictionary properties = new Hashtable();
private Vector connectionNames;
private String mountPath;
@@ -149,27 +150,23 @@
}
/**
- * Get a block id from the blockname.
+ * Get connections
*/
- public String getBlockId(String blockName) {
- String blockId = (String)this.connections.get(blockName);
- getLogger().debug("Resolving block: " + blockName + " to " + blockId);
- return blockId;
+ public Dictionary getConnections() {
+ return this.connections;
}
/**
- * Get a block property
+ * Get the block properties
*/
- public String getProperty(String name) {
- String value = (String)this.properties.get(name);
- getLogger().debug("Accessing property=" + name + " value=" + value + " block=" + this.id);
- return value;
+ public Dictionary getProperties() {
+ return this.properties;
}
/**
* Get path where the block should be mounted
*/
- String getMountPath() {
+ public String getMountPath() {
return this.mountPath;
}