haul 01/09/18 07:56:45
Modified: src/org/apache/cocoon/matching Tag: cocoon_20_branch
WildcardParameterValueMatcherFactory.java
Log:
- changed *SessionState(Matcher|Selector)* to more general
*SessionAttribute(Matcher|Selector)*
updated docs + samples accordingly
- make some SourceFactories fail in a friendlier way when parameters are missing
Revision Changes Path
No revision
No revision
1.1.2.4 +41 -13
xml-cocoon2/src/org/apache/cocoon/matching/WildcardParameterValueMatcherFactory.java
Index: WildcardParameterValueMatcherFactory.java
===================================================================
RCS file:
/home/cvs/xml-cocoon2/src/org/apache/cocoon/matching/WildcardParameterValueMatcherFactory.java,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -r1.1.2.3 -r1.1.2.4
--- WildcardParameterValueMatcherFactory.java 2001/08/20 14:07:32 1.1.2.3
+++ WildcardParameterValueMatcherFactory.java 2001/09/18 14:56:45 1.1.2.4
@@ -26,7 +26,7 @@
* </table>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Christian Haul</a>
- * @version CVS $Revision: 1.1.2.3 $ $Date: 2001/08/20 14:07:32 $ */
+ * @version CVS $Revision: 1.1.2.4 $ $Date: 2001/09/18 14:56:45 $ */
public class WildcardParameterValueMatcherFactory extends WildcardURIMatcherFactory
{
@@ -51,18 +51,46 @@
}
}
- return "HashMap map = new HashMap(1);" +
- "String theParameter = null; " +
- "if (parameters == null) {"+
- " theParameter = XSPRequestHelper.getParameter(objectModel,
\""+parameterName+"\",null);" +
- " } else { " +
- " theParameter = XSPRequestHelper.getParameter(objectModel,
parameters.getParameter(\"parameter-name\",\""+parameterName+"\"),null);" +
- " }; " +
- "if (theParameter != null &&
org.apache.cocoon.matching.helpers.WildcardURIMatcher.match (map, theParameter,
pattern)) {" +
- "map.put(\""+parameterName+"\", theParameter);"+
- "return map;" +
- "} else {" +
- "return null;}";
+ StringBuffer sb = new StringBuffer();
+ sb
+ .append("HashMap map = new HashMap(1);")
+ .append("String parameterName = null;")
+ .append("String parameterValue = null;")
+ .append("if (parameters.getNames().length == 0) {");
+ if ( parameterName == null ) {
+ sb
+ .append(" getLogger().warn(\"No request parameter name and no
default name given. FAILING\");")
+ .append("} else { ")
+ .append(" parameterName = parameters.getParameter(\"parameter-name\",
null);")
+ .append(" if ( parameterName == null ) {")
+ .append(" getLogger().warn(\"No request parameter name and no
default name given. FAILING\");")
+ .append(" } else {")
+ .append(" parameterValue =
XSPRequestHelper.getParameter(objectModel, parameterName, null); ")
+ .append(" }");
+ } else {
+ sb
+ .append(" parameterName = \""+parameterName+"\";")
+ .append(" parameterValue = XSPRequestHelper.getParameter(objectModel,
parameterName, null);")
+ .append("} else { ")
+ .append(" parameterName = parameters.getParameter(\"parameter-name\",
null);")
+ .append(" if ( parameterName == null ) {")
+ .append(" getLogger().warn(\"No request parameter name given, will
use default\");")
+ .append(" parameterName = \""+parameterName+"\";")
+ .append(" }")
+ .append(" parameterValue = XSPRequestHelper.getParameter(objectModel,
parameterName, null); ");
+ }
+ sb
+ .append("}")
+ .append("if ( parameterValue == null ) {")
+ .append(" getLogger().debug(\"Request parameter not set\");")
+ .append("} else {")
+ .append(" if
(org.apache.cocoon.matching.helpers.WildcardURIMatcher.match (map, parameterValue,
pattern)) {")
+ .append(" map.put(parameterName, parameterValue ); ")
+ .append(" return map;")
+ .append(" }")
+ .append("}")
+ .append("return null;");
+ return sb.toString();
}
}
----------------------------------------------------------------------
In case of troubles, e-mail: [EMAIL PROTECTED]
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]