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]

Reply via email to