vgritsenko 01/08/17 07:09:15
Modified: src/org/apache/cocoon/environment AbstractEnvironment.java
Environment.java
src/org/apache/cocoon/environment/wrapper
EnvironmentWrapper.java
Log:
Wrapper always processed all requests relative to rootContext, not current context.
Revision Changes Path
1.15 +5 -1
xml-cocoon2/src/org/apache/cocoon/environment/AbstractEnvironment.java
Index: AbstractEnvironment.java
===================================================================
RCS file:
/home/cvs/xml-cocoon2/src/org/apache/cocoon/environment/AbstractEnvironment.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- AbstractEnvironment.java 2001/08/16 11:25:41 1.14
+++ AbstractEnvironment.java 2001/08/17 14:09:15 1.15
@@ -25,7 +25,7 @@
*
* @author <a href="mailto:[EMAIL PROTECTED]">Giacomo Pati</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Carsten Ziegeler</a>
- * @version CVS $Revision: 1.14 $ $Date: 2001/08/16 11:25:41 $
+ * @version CVS $Revision: 1.15 $ $Date: 2001/08/17 14:09:15 $
*/
public abstract class AbstractEnvironment extends AbstractLoggable implements
Environment {
@@ -127,6 +127,10 @@
*/
public URL getRootContext() {
return this.rootContext;
+ }
+
+ public URL getContext() {
+ return this.context;
}
/**
1.8 +6 -1 xml-cocoon2/src/org/apache/cocoon/environment/Environment.java
Index: Environment.java
===================================================================
RCS file: /home/cvs/xml-cocoon2/src/org/apache/cocoon/environment/Environment.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- Environment.java 2001/08/16 11:25:41 1.7
+++ Environment.java 2001/08/17 14:09:15 1.8
@@ -21,7 +21,7 @@
*
* @author <a href="mailto:[EMAIL PROTECTED]">Giacomo Pati</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Carsten Ziegeler</a>
- * @version CVS $Revision: 1.7 $ $Date: 2001/08/16 11:25:41 $
+ * @version CVS $Revision: 1.8 $ $Date: 2001/08/17 14:09:15 $
*/
public interface Environment extends SourceResolver {
@@ -45,6 +45,11 @@
* Get the prefix of the URI in progress.
*/
String getURIPrefix();
+
+ /**
+ * Get current context
+ */
+ URL getContext();
/**
* Get the Root Context
1.6 +16 -5
xml-cocoon2/src/org/apache/cocoon/environment/wrapper/EnvironmentWrapper.java
Index: EnvironmentWrapper.java
===================================================================
RCS file:
/home/cvs/xml-cocoon2/src/org/apache/cocoon/environment/wrapper/EnvironmentWrapper.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- EnvironmentWrapper.java 2001/08/16 11:25:41 1.5
+++ EnvironmentWrapper.java 2001/08/17 14:09:15 1.6
@@ -38,7 +38,7 @@
* contains a <code>RequestWrapper</code> object.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Carsten Ziegeler</a>
- * @version $Id: EnvironmentWrapper.java,v 1.5 2001/08/16 11:25:41 cziegeler Exp $
+ * @version $Id: EnvironmentWrapper.java,v 1.6 2001/08/17 14:09:15 vgritsenko Exp $
*/
public final class EnvironmentWrapper
extends AbstractEnvironment
@@ -66,9 +66,12 @@
Logger logger)
throws MalformedURLException {
super(env.getURI(), env.getView(), env.getRootContext(), env.getAction());
- this.setURI(env.getURIPrefix(), env.getURI());
this.setLogger(logger);
this.environment = env;
+
+ this.context = env.getContext();
+ this.prefix = new StringBuffer(env.getURIPrefix());
+
this.setSourceHandler(env.getSourceHandler());
// create new object model and replace the request object
this.objectModel = new HashMap(4);
@@ -153,10 +156,18 @@
return this.objectModel;
}
+ /**
+ * Set a new URI for processing. If the prefix is null the
+ * new URI is inside the current context.
+ * If the prefix is not null the context is changed to the root
+ * context and the prefix is set.
+ */
public void setURI(String prefix, String uri) {
- this.context = this.rootContext;
- this.prefix = new StringBuffer((prefix == null ? "" : prefix));
- this.uris = uri;
+ if (prefix != null) {
+ this.context = this.rootContext;
+ this.prefix = new StringBuffer(prefix);
+ }
+ this.uris = uri;
}
}
----------------------------------------------------------------------
In case of troubles, e-mail: [EMAIL PROTECTED]
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]