com.opensymphony.xwork2.util
Class TextParseUtil

java.lang.Object
  extended by com.opensymphony.xwork2.util.TextParseUtil

public class TextParseUtil
extends java.lang.Object

Utility class for text parsing.

Version:
$Date: 2009-12-27 19:18:29 +0100 (Sun, 27 Dec 2009) $ $Id: TextParseUtil.java 894090 2009-12-27 18:18:29Z martinc $
Author:
Jason Carreira, Rainer Hermanns, tm_jee

Nested Class Summary
static interface TextParseUtil.ParsedValueEvaluator
          A parsed value evaluator for TextParseUtil.
 
Constructor Summary
TextParseUtil()
           
 
Method Summary
static java.util.Set<java.lang.String> commaDelimitedStringToSet(java.lang.String s)
          Returns a set from comma delimted Strings.
static java.lang.Object translateVariables(char[] openChars, java.lang.String expression, ValueStack stack, java.lang.Class asType, TextParseUtil.ParsedValueEvaluator evaluator)
          Converted object from variable translation.
static java.lang.Object translateVariables(char[] openChars, java.lang.String expression, ValueStack stack, java.lang.Class asType, TextParseUtil.ParsedValueEvaluator evaluator, int maxLoopCount)
          Converted object from variable translation.
static java.lang.String translateVariables(char open, java.lang.String expression, ValueStack stack)
          Converts all instances of ${...} in expression to the value returned by a call to ValueStack.findValue(java.lang.String).
static java.lang.Object translateVariables(char open, java.lang.String expression, ValueStack stack, java.lang.Class asType)
          Converted object from variable translation.
static java.lang.Object translateVariables(char open, java.lang.String expression, ValueStack stack, java.lang.Class asType, TextParseUtil.ParsedValueEvaluator evaluator)
          Converted object from variable translation.
static java.lang.Object translateVariables(char open, java.lang.String expression, ValueStack stack, java.lang.Class asType, TextParseUtil.ParsedValueEvaluator evaluator, int maxLoopCount)
          Converted object from variable translation.
static java.lang.String translateVariables(java.lang.String expression, ValueStack stack)
          Converts all instances of ${...}, and %{...} in expression to the value returned by a call to ValueStack.findValue(java.lang.String).
static java.lang.String translateVariables(java.lang.String expression, ValueStack stack, TextParseUtil.ParsedValueEvaluator evaluator)
          Function similarly as translateVariables(char, String, ValueStack) except for the introduction of an additional evaluator that allows the parsed value to be evaluated by the evaluator.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TextParseUtil

public TextParseUtil()
Method Detail

translateVariables

public static java.lang.String translateVariables(java.lang.String expression,
                                                  ValueStack stack)
Converts all instances of ${...}, and %{...} in expression to the value returned by a call to ValueStack.findValue(java.lang.String). If an item cannot be found on the stack (null is returned), then the entire variable ${...} is not displayed, just as if the item was on the stack but returned an empty string.

Parameters:
expression - an expression that hasn't yet been translated
Returns:
the parsed expression

translateVariables

public static java.lang.String translateVariables(java.lang.String expression,
                                                  ValueStack stack,
                                                  TextParseUtil.ParsedValueEvaluator evaluator)
Function similarly as translateVariables(char, String, ValueStack) except for the introduction of an additional evaluator that allows the parsed value to be evaluated by the evaluator. The evaluator could be null, if it is it will just be skipped as if it is just calling translateVariables(char, String, ValueStack).

A typical use-case would be when we need to URL Encode the parsed value. To do so we could just supply a URLEncodingEvaluator for example.

Parameters:
expression -
stack -
evaluator - The parsed Value evaluator (could be null).
Returns:
the parsed (and possibly evaluated) variable String.

translateVariables

public static java.lang.String translateVariables(char open,
                                                  java.lang.String expression,
                                                  ValueStack stack)
Converts all instances of ${...} in expression to the value returned by a call to ValueStack.findValue(java.lang.String). If an item cannot be found on the stack (null is returned), then the entire variable ${...} is not displayed, just as if the item was on the stack but returned an empty string.

Parameters:
open -
expression -
stack -
Returns:
Translated variable String

translateVariables

public static java.lang.Object translateVariables(char open,
                                                  java.lang.String expression,
                                                  ValueStack stack,
                                                  java.lang.Class asType)
Converted object from variable translation.

Parameters:
open -
expression -
stack -
asType -
Returns:
Converted object from variable translation.

translateVariables

public static java.lang.Object translateVariables(char open,
                                                  java.lang.String expression,
                                                  ValueStack stack,
                                                  java.lang.Class asType,
                                                  TextParseUtil.ParsedValueEvaluator evaluator)
Converted object from variable translation.

Parameters:
open -
expression -
stack -
asType -
evaluator -
Returns:
Converted object from variable translation.

translateVariables

public static java.lang.Object translateVariables(char[] openChars,
                                                  java.lang.String expression,
                                                  ValueStack stack,
                                                  java.lang.Class asType,
                                                  TextParseUtil.ParsedValueEvaluator evaluator)
Converted object from variable translation.

Parameters:
open -
expression -
stack -
asType -
evaluator -
Returns:
Converted object from variable translation.

translateVariables

public static java.lang.Object translateVariables(char open,
                                                  java.lang.String expression,
                                                  ValueStack stack,
                                                  java.lang.Class asType,
                                                  TextParseUtil.ParsedValueEvaluator evaluator,
                                                  int maxLoopCount)
Converted object from variable translation.

Parameters:
open -
expression -
stack -
asType -
evaluator -
Returns:
Converted object from variable translation.

translateVariables

public static java.lang.Object translateVariables(char[] openChars,
                                                  java.lang.String expression,
                                                  ValueStack stack,
                                                  java.lang.Class asType,
                                                  TextParseUtil.ParsedValueEvaluator evaluator,
                                                  int maxLoopCount)
Converted object from variable translation.

Parameters:
open -
expression -
stack -
asType -
evaluator -
Returns:
Converted object from variable translation.

commaDelimitedStringToSet

public static java.util.Set<java.lang.String> commaDelimitedStringToSet(java.lang.String s)
Returns a set from comma delimted Strings.

Parameters:
s - The String to parse.
Returns:
A set from comma delimted Strings.


Copyright © 2000-2011 Apache Software Foundation. All Rights Reserved.