cziegeler 2002/08/06 23:50:05
Modified: . changes.xml
src/java/org/apache/cocoon/generation RequestGenerator.java
Log:
Applied patch by Ilya A. Kriveshko [EMAIL PROTECTED]
Revision Changes Path
1.230 +4 -1 xml-cocoon2/changes.xml
Index: changes.xml
===================================================================
RCS file: /home/cvs/xml-cocoon2/changes.xml,v
retrieving revision 1.229
retrieving revision 1.230
diff -u -r1.229 -r1.230
--- changes.xml 4 Aug 2002 18:28:16 -0000 1.229
+++ changes.xml 7 Aug 2002 06:50:05 -0000 1.230
@@ -39,6 +39,9 @@
</devs>
<release version="@version@" date="@date@">
+ <action dev="CZ" type="add" due-to="Ilya A. Kriveshko"
due-to-email="[EMAIL PROTECTED]">
+ RequestGenerator does optionally output request parameters.
+ </action>
<action dev="BH" type="add">
Output extra locator info if included Throwable of ProcessingException is
SAXParseException or TransformerException.
1.7 +37 -1
xml-cocoon2/src/java/org/apache/cocoon/generation/RequestGenerator.java
Index: RequestGenerator.java
===================================================================
RCS file:
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/generation/RequestGenerator.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- RequestGenerator.java 22 Feb 2002 07:03:51 -0000 1.6
+++ RequestGenerator.java 7 Aug 2002 06:50:05 -0000 1.7
@@ -75,6 +75,8 @@
* <dd> The encoding used by container. Default value is ISO-8859-1.
* <dt> <i>form-encoding</i> (optional)
* <dd> The supposed encoding of the request parameter. Default is null.
+ * <dt> <i>generate-attributes</i> (optional)
+ * <dd> If true, also generates request attributes. Default is false.
* </dl>
* These configuration options supported in both declaration and use time.
*
@@ -92,6 +94,8 @@
private String global_form_encoding;
private String container_encoding;
private String form_encoding;
+ private boolean global_generate_attributes;
+ private boolean generate_attributes;
public void parameterize(Parameters parameters)
throws ParameterException {
@@ -99,6 +103,7 @@
global_container_encoding =
parameters.getParameter("container-encoding", "ISO-8859-1");
global_form_encoding = parameters.getParameter("form-encoding",
null);
+ global_generate_attributes = "false no
off".indexOf(parameters.getParameter("generate-attributes", "false")) < 0;
}
public void setup(SourceResolver resolver, Map objectModel, String src,
Parameters par)
@@ -107,6 +112,8 @@
container_encoding = par.getParameter("container-encoding",
global_container_encoding);
form_encoding = par.getParameter("form-encoding",
global_form_encoding);
+ generate_attributes = "false no
off".indexOf(par.getParameter("generate-attributes",
+ "" +
global_generate_attributes)) < 0;
}
/**
@@ -179,6 +186,35 @@
this.end("requestParameters");
this.data("\n");
this.data("\n");
+
+ if(generate_attributes) {
+ this.data(" ");
+ this.start("requestAttributes",attr);
+ this.data("\n");
+ Enumeration attributes=request.getAttributeNames();
+ while (attributes.hasMoreElements()) {
+ String attribute=(String)attributes.nextElement();
+ this.attribute(attr,"name",attribute);
+ this.data(" ");
+ this.start("attribute",attr);
+ this.data("\n");
+ Object value=request.getAttribute(attribute);
+ if (value!=null) {
+ this.data(" ");
+ this.start("value",attr);
+ this.data(String.valueOf( value ));
+ this.end("value");
+ this.data("\n");
+ }
+ this.data(" ");
+ this.end("attribute");
+ this.data("\n");
+ }
+ this.data(" ");
+ this.end("requestAttributes");
+ this.data("\n");
+ this.data("\n");
+ }
this.data(" ");
this.start("configurationParameters",attr);
----------------------------------------------------------------------
In case of troubles, e-mail: [EMAIL PROTECTED]
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]