public class LabelLoaderImpl extends java.lang.Object implements LabelLoader
Labels
.
Notice that the encoding of the Locale dependent file (*.properties) is assumed to be UTF-8. If it is not the case, please refer to ZK Configuration Reference for more information.
Specify the library property of org.zkoss.util.resource.LabelLoader.class
in zk.xml to provide a customized label loader for debugging purpose. (since 7.0.1)
Constructor and Description |
---|
LabelLoaderImpl() |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
getLabel(java.util.Locale locale,
java.lang.String key)
Returns the label of the specified key for the specified locale,
or null if not found.
|
java.lang.String |
getLabel(java.lang.String key)
Returns the label of the specified key for the current locale,
or null if not found.
|
java.util.Map<java.lang.String,java.lang.Object> |
getSegmentedLabels()
Returns a map of segmented labels for the current locale (never null).
|
java.util.Map<java.lang.String,java.lang.Object> |
getSegmentedLabels(java.util.Locale locale)
Returns a map of segmented labels for the specified locale (never null).
|
void |
register(LabelLocator locator)
Registers a locator which is used to load the Locale-dependent labels
from other resource, such as servlet contexts.
|
void |
register(LabelLocator2 locator)
Registers a locator which is used to load the Locale-dependent labels
from other resource, such as database.
|
void |
reset()
Resets all cached labels and next call to
getLabel(java.lang.String)
will cause re-loading the Locale-dependent labels. |
VariableResolver |
setVariableResolver(VariableResolver resolv)
Sets the variable resolver, which is used if an EL expression
is specified.
|
public java.lang.String getLabel(java.lang.String key)
getLabel
in interface LabelLoader
getSegmentedLabels()
public java.lang.String getLabel(java.util.Locale locale, java.lang.String key)
getLabel
in interface LabelLoader
public java.util.Map<java.lang.String,java.lang.Object> getSegmentedLabels()
getLabel(java.lang.String)
, if a key of the label contains dot, it will
be split into multiple keys and then grouped into map. It is so-called
segmented.
For example, the following property file will parsed into a couple of maps,
and getSegmentedLabels()
returns a map containing
a single entry. The entry's key is "a"
and the value
is another map with two entries "b"
and "c"
.
And, the value for "b"
is another two-entries map (containing
"c"
and "d"
).
a.b.c=1
a.b.d=2
a.e=3
This method is designed to make labels easier to be accessed in EL expressions.
On the other hand, getLabel(java.lang.String)
does not split them, and
you could access them by, say, getLabel("a.b.d")
.
getSegmentedLabels
in interface LabelLoader
public java.util.Map<java.lang.String,java.lang.Object> getSegmentedLabels(java.util.Locale locale)
getSegmentedLabels()
for details.getSegmentedLabels
in interface LabelLoader
public VariableResolver setVariableResolver(VariableResolver resolv)
setVariableResolver
in interface LabelLoader
public void register(LabelLocator locator)
register
in interface LabelLoader
public void register(LabelLocator2 locator)
register
in interface LabelLoader
public void reset()
getLabel(java.lang.String)
will cause re-loading the Locale-dependent labels.reset
in interface LabelLoader
Copyright © 2005-2018 Potix Corporation. All Rights Reserved.