public class ResourceDefinition extends Object
A resource is identified within a ResourceBundle by a text
key, and has a message in its base locale (which is
usually US-English (en_US)). It may also have a set of properties, which are
represented as name-value pairs.
A resource definition is immutable.
| Modifier and Type | Field and Description |
|---|---|
String |
baseMessage |
String |
key |
static int |
TYPE_DATE |
static int |
TYPE_NUMBER |
static int |
TYPE_STRING |
static int |
TYPE_TIME |
static int |
TYPE_UNKNOWN |
| Constructor and Description |
|---|
ResourceDefinition(String key,
String baseMessage)
Creates a resource definition with no properties.
|
ResourceDefinition(String key,
String baseMessage,
String[] props)
Creates a resource definition.
|
| Modifier and Type | Method and Description |
|---|---|
protected static int |
getArgType(int i,
String message)
Returns the type of the
ith argument inside a message,
or TYPE_UNKNOWN if not found. |
String[] |
getArgTypes()
Returns the types of arguments.
|
protected static String[] |
getArgTypes(String message,
String[] typeNames)
Parses a message for the arguments inside it, and
returns an array with the types of those arguments.
|
protected static String[] |
getArgTypesByHand(String message,
String[] typeNames) |
String |
getBaseMessage()
Returns this resource definition's message in the base locale.
|
String |
getKey()
Returns this resource definition's key.
|
Properties |
getProperties()
Returns the properties of this resource definition.
|
ResourceInstance |
instantiate(ResourceBundle bundle,
Object[] args)
Creates an instance of this definition with a set of parameters.
|
public final String key
public final String baseMessage
public static final int TYPE_UNKNOWN
public static final int TYPE_STRING
public static final int TYPE_NUMBER
public static final int TYPE_DATE
public static final int TYPE_TIME
public ResourceDefinition(String key, String baseMessage)
key - Unique name for this resource definition.baseMessage - Message for this resource definition in the base
locale.public ResourceDefinition(String key, String baseMessage, String[] props)
key - Unique name for this resource definition.baseMessage - Message for this resource definition in the base
locale.props - Array of property name/value pairs.
null means the same as an empty array.public String getKey()
public String getBaseMessage()
public Properties getProperties()
public String[] getArgTypes()
public ResourceInstance instantiate(ResourceBundle bundle, Object[] args)
bundle - Resource bundle the resource instance will belong to
(This contains the locale, among other things.)args - Arguments to populate the message's parameters.
The arguments must be consistent in number and type with the results
of getArgTypes().protected static String[] getArgTypes(String message, String[] typeNames)
For example, getArgTypes("I bought {0,number} {2}s",
new String[] {"string", "number", "date", "time"})
yields {"number", null, "string"}.
Note the null corresponding to missing message #1.
message - Message to be parsed.typeNames - Strings to return for types.protected static int getArgType(int i,
String message)
ith argument inside a message,
or TYPE_UNKNOWN if not found.i - Ordinal of argumentmessage - Message to parseTYPE_STRING etc.)Copyright © 2012–2021 Julian Hyde. All rights reserved.