Package org.apache.tapestry5.internal
Class TapestryInternalUtils
java.lang.Object
org.apache.tapestry5.internal.TapestryInternalUtils
Shared utility methods used by various implementation classes.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic Mapper<Asset,StylesheetLink> Common mapper, used primarily withFlow.map(org.apache.tapestry5.func.Mapper) -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidcopy(InputStream in, OutputStream out) Copies some content from an input stream to an output stream.static StringdefaultLabel(String id, Messages messages, String propertyExpression) Looks for a label within the messages based on the id.static StringextractIdFromPropertyExpression(String expression) Used to convert a property expression into a key that can be used to locate various resources (Blocks, messages, etc.).static Thread[]Gathers together an array containing all the threads.static <K,V> V getAndDeref(Map<K, ? extends Reference<V>> map, K key) Extracts a value from a map of references.static StringgetLabelForEnum(Messages messages, Enum value) static StringgetLabelForEnum(Messages messages, String prefix, Enum value) Converts an enum to a label string, allowing for overrides from a message catalog.static booleanisEqual(EventContext left, EventContext right) static <T> booleanisEqual(T left, T right) Determines if the two values are equal.static StringStrips 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.mapFromKeysAndValues(String... keysAndValues) mixinTypeAndOrder(String mixinDef) static KeyValueparseKeyValue(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[]static String[]Splits a path at each slash.static StringtoClassAttributeValue(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 StringtoFileSuffix(String fileName) static InternalPropertyConduittoInternalPropertyConduit(PropertyConduit conduit) static LinkCreationListener2toLinkCreationListener2(LinkCreationListener delegate) static OptionModeltoOptionModel(Object input) Converts an object to anOptionModel.static OptionModeltoOptionModel(String input) Converts a string to anOptionModel.static OptionModeltoOptionModel(Map.Entry input) Converts a map entry to anOptionModel.static List<OptionModel>toOptionModels(String input) Parses a string input into a series of value=label pairs compatible withtoOptionModel(String).static <E> List<OptionModel>toOptionModels(List<E> input) Processes a list input into a series of objects compatible withtoOptionModel(Object).static <K,V> List<OptionModel> toOptionModels(Map<K, V> input) Processes a map input into a series of map entries compatible withtoOptionModel(Map.Entry).static SelectModeltoSelectModel(String input) Wraps the result oftoOptionModels(String)as aSelectModel(with no option groups).static <E> SelectModeltoSelectModel(List<E> input) Wraps the result oftoOptionModels(List)as aSelectModel(with no option groups).static <K,V> SelectModel toSelectModel(Map<K, V> input) Wraps the result oftoOptionModels(Map)as aSelectModel(with no option groups).static StringCapitalizes the string, and inserts a space before each upper case character (or sequence of upper case characters).
-
Field Details
-
assetToStylesheetLink
Common mapper, used primarily withFlow.map(org.apache.tapestry5.func.Mapper)- Since:
- 5.2.0
-
-
Constructor Details
-
TapestryInternalUtils
public TapestryInternalUtils()
-
-
Method Details
-
toUserPresentable
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
-
toOptionModel
Converts a string to anOptionModel. 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. -
toOptionModels
Parses a string input into a series of value=label pairs compatible withtoOptionModel(String). Splits on commas. Ignores whitespace around commas.- Parameters:
input- comma seperated list of terms- Returns:
- list of option models
-
toSelectModel
Wraps the result oftoOptionModels(String)as aSelectModel(with no option groups). See TAP5-2184 for why this ends up causing some trouble! -
toOptionModel
Converts a map entry to anOptionModel. -
toOptionModels
Processes a map input into a series of map entries compatible withtoOptionModel(Map.Entry).- Parameters:
input- map of elements- Returns:
- list of option models
-
toSelectModel
Wraps the result oftoOptionModels(Map)as aSelectModel(with no option groups). -
toOptionModel
Converts an object to anOptionModel. -
toOptionModels
Processes a list input into a series of objects compatible withtoOptionModel(Object).- Parameters:
input- list of elements- Returns:
- list of option models
-
toSelectModel
Wraps the result oftoOptionModels(List)as aSelectModel(with no option groups). -
parseKeyValue
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 aKeyValue. -
extractIdFromPropertyExpression
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
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
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
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
Converts an enum to a label string, allowing for overrides from a message catalog.- As key prefix.name if present. Ex: "ElementType.LOCAL_VARIABLE"
- As key name if present, i.e., "LOCAL_VARIABLE".
- As a user-presentable version of the name, i.e., "Local Variable".
- Parameters:
messages- the messages to search for the labelprefix- prepended to keyvalue- to get a label for- Returns:
- the label
-
getLabelForEnum
-
isEqual
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.- Parameters:
left- value to compare, possibly nullright- value to compare, possibly null- Returns:
- true if same value, both null, or equal
-
splitPath
Splits a path at each slash. -
splitAtCommas
Splits a value around commas. Whitespace around the commas is removed, as is leading and trailing whitespace.- Since:
- 5.1.0.0
-
copy
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 dataout- sink of data- Throws:
IOException- Since:
- 5.1.0.0
-
isEqual
-
toInternalPropertyConduit
-
mixinTypeAndOrder
- Parameters:
mixinDef- the original mixin definition.- Returns:
- an Orderable whose id is the mixin name.
-
splitMixinConstraints
-
toLinkCreationListener2
-
toFileSuffix
- Since:
- 5.3
-
getAndDeref
Extracts a value from a map of references. Handles the case where the reference does not exist, and the case where the reference itself now contains null.- Since:
- 5.3
-
getAllThreads
Gathers together an array containing all the threads.- Since:
- 5.4
-