org.apache.tapestry5.internal
Class TapestryInternalUtils

java.lang.Object
  extended by org.apache.tapestry5.internal.TapestryInternalUtils

public class TapestryInternalUtils
extends Object

Shared utility methods used by various implementation classes.


Constructor Summary
TapestryInternalUtils()
           
 
Method Summary
static void copy(InputStream in, OutputStream out)
          Copies some content from an input stream to an output stream.
static String defaultLabel(String id, Messages messages, String propertyExpression)
          Looks for a label within the messages based on the id.
static String extractIdFromPropertyExpression(String expression)
          Used to convert a property expression into a key that can be used to locate various resources (Blocks, messages, etc.).
static String getLabelForEnum(Messages messages, Enum value)
           
static String getLabelForEnum(Messages messages, String prefix, Enum value)
          Converts an enum to a label string, allowing for overrides from a message catalog.
static boolean isEqual(EventContext left, EventContext right)
           
static
<T> boolean
isEqual(T left, T right)
          Determines if the two values are equal.
static String lastTerm(String input)
          Strips a dotted sequence (such as a property expression, or a qualified class name) down to the last term of that expression, by locating the last period ('.') in the string.
static Map<String,String> mapFromKeysAndValues(String... keysAndValues)
           
static KeyValue parseKeyValue(String input)
          Parses a key/value pair where the key and the value are seperated by an equals sign.
static String[] splitAtCommas(String value)
          Splits a value around commas.
static String[] splitPath(String path)
          Splits a path at each slash.
static Asset2 toAsset2(Asset asset)
          Converts an Asset to an Asset2 if necessary.
static String toClassAttributeValue(List<String> classes)
          Converts an list of strings into a space-separated string combining them all, suitable for use as an HTML class attribute value.
static OptionModel toOptionModel(Map.Entry input)
          Converts a map entry to an OptionModel.
static OptionModel toOptionModel(Object input)
          Converts an object to an OptionModel.
static OptionModel toOptionModel(String input)
          Converts a string to an OptionModel.
static
<E> List<OptionModel>
toOptionModels(List<E> input)
          Processes a list input into a series of objects compatible with toOptionModel(Object).
static
<K,V> List<OptionModel>
toOptionModels(Map<K,V> input)
          Processes a map input into a series of map entries compatible with toOptionModel(Map.Entry).
static List<OptionModel> toOptionModels(String input)
          Parses a string input into a series of value=label pairs compatible with toOptionModel(String).
static
<E> SelectModel
toSelectModel(List<E> input)
          Wraps the result of toOptionModels(List) as a SelectModel (with no option groups).
static
<K,V> SelectModel
toSelectModel(Map<K,V> input)
          Wraps the result of toOptionModels(Map) as a SelectModel (with no option groups).
static SelectModel toSelectModel(String input)
          Wraps the result of toOptionModels(String) as a SelectModel (with no option groups).
static String toUserPresentable(String id)
          Capitalizes the string, and inserts a space before each upper case character (or sequence of upper case characters).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TapestryInternalUtils

public TapestryInternalUtils()
Method Detail

toUserPresentable

public static String toUserPresentable(String id)
Capitalizes the string, and inserts a space before each upper case character (or sequence of upper case characters). Thus "userId" becomes "User Id", etc. Also, converts underscore into space (and capitalizes the following word), thus "user_id" also becomes "User Id".


mapFromKeysAndValues

public static Map<String,String> mapFromKeysAndValues(String... keysAndValues)

toOptionModel

public static OptionModel toOptionModel(String input)
Converts a string to an OptionModel. The string is of the form "value=label". If the equals sign is omitted, then the same value is used for both value and label.

Parameters:
input -
Returns:

toOptionModels

public static List<OptionModel> toOptionModels(String input)
Parses a string input into a series of value=label pairs compatible with toOptionModel(String). Splits on commas. Ignores whitespace around commas.

Parameters:
input - comma seperated list of terms
Returns:
list of option models

toSelectModel

public static SelectModel toSelectModel(String input)
Wraps the result of toOptionModels(String) as a SelectModel (with no option groups).

Parameters:
input -
Returns:

toOptionModel

public static OptionModel toOptionModel(Map.Entry input)
Converts a map entry to an OptionModel.

Parameters:
input -
Returns:

toOptionModels

public static <K,V> List<OptionModel> toOptionModels(Map<K,V> input)
Processes a map input into a series of map entries compatible with toOptionModel(Map.Entry).

Parameters:
input - map of elements
Returns:
list of option models

toSelectModel

public static <K,V> SelectModel toSelectModel(Map<K,V> input)
Wraps the result of toOptionModels(Map) as a SelectModel (with no option groups).

Parameters:
input -
Returns:

toOptionModel

public static OptionModel toOptionModel(Object input)
Converts an object to an OptionModel.

Parameters:
input -
Returns:

toOptionModels

public static <E> List<OptionModel> toOptionModels(List<E> input)
Processes a list input into a series of objects compatible with toOptionModel(Object).

Parameters:
input - list of elements
Returns:
list of option models

toSelectModel

public static <E> SelectModel toSelectModel(List<E> input)
Wraps the result of toOptionModels(List) as a SelectModel (with no option groups).

Parameters:
input -
Returns:

parseKeyValue

public static KeyValue parseKeyValue(String input)
Parses a key/value pair where the key and the value are seperated by an equals sign. The key and value are trimmed of leading and trailing whitespace, and returned as a KeyValue.

Parameters:
input -
Returns:

extractIdFromPropertyExpression

public static String extractIdFromPropertyExpression(String expression)
Used to convert a property expression into a key that can be used to locate various resources (Blocks, messages, etc.). Strips out any punctuation characters, leaving just words characters (letters, number and the underscore).

Parameters:
expression - a property expression
Returns:
the expression with punctuation removed

defaultLabel

public static String defaultLabel(String id,
                                  Messages messages,
                                  String propertyExpression)
Looks for a label within the messages based on the id. If found, it is used, otherwise the name is converted to a user presentable form.


lastTerm

public static String lastTerm(String input)
Strips a dotted sequence (such as a property expression, or a qualified class name) down to the last term of that expression, by locating the last period ('.') in the string.


toClassAttributeValue

public static String toClassAttributeValue(List<String> classes)
Converts an list of strings into a space-separated string combining them all, suitable for use as an HTML class attribute value.

Parameters:
classes - classes to combine
Returns:
the joined classes, or null if classes is empty

getLabelForEnum

public static String getLabelForEnum(Messages messages,
                                     String prefix,
                                     Enum value)
Converts an enum to a label string, allowing for overrides from a message catalog.

Parameters:
messages - the messages to search for the label
prefix -
value - to get a label for
Returns:
the label

getLabelForEnum

public static String getLabelForEnum(Messages messages,
                                     Enum value)

isEqual

public static <T> boolean isEqual(T left,
                                  T right)
Determines if the two values are equal. They are equal if they are the exact same value (including if they are both null). Otherwise standard equals() comparison is used.

Type Parameters:
T -
Parameters:
left - value to compare, possibly null
right - value to compare, possibly null
Returns:
true if same value, both null, or equal

splitPath

public static String[] splitPath(String path)
Splits a path at each slash.


splitAtCommas

public static String[] splitAtCommas(String value)
Splits a value around commas. Whitespace around the commas is removed, as is leading and trailing whitespace.

Since:
5.1.0.0

copy

public static void copy(InputStream in,
                        OutputStream out)
                 throws IOException
Copies some content from an input stream to an output stream. It is the caller's responsibility to close the streams.

Parameters:
in - source of data
out - sink of data
Throws:
IOException
Since:
5.1.0.0

isEqual

public static boolean isEqual(EventContext left,
                              EventContext right)

toAsset2

public static Asset2 toAsset2(Asset asset)
Converts an Asset to an Asset2 if necessary. When actually wrapping an Asset as an Asset2, the asset is assumed to be variant (i.e., not cacheable).

Since:
5.1.0.0


Copyright © 2006-2009 Apache Software Foundation. All Rights Reserved.