/** * Copyright (c) 2012 Perforce Software. All rights reserved. */ package com.perforce.p4java.messages; import java.text.MessageFormat; import java.util.Locale; import java.util.ResourceBundle; /** * Handles formatting Perforce messages. It provides locale (language & country) * specific messages. The default locale is set during startup of the JVM based * on the host environment. </p> * * Additionally, this class provides a convenient way to format messages with * parameters. */ public class PerforceMessages { /** Default name of the Perforce message bundle properties file. */ public static final String MESSAGE_BUNDLE = PerforceMessages.class .getName(); /** The locale. */ private Locale locale; /** The messages. */ private ResourceBundle messages; /** * Instantiates a new perforce messages using the default message bundle * properties file package path name . */ public PerforceMessages() { this.messages = ResourceBundle.getBundle(MESSAGE_BUNDLE); } /** * Instantiates a new perforce messages base on the passed-in message bundle * properties file package path name. * * @param propertiesFile * the name (without the extension) of the properties file * including the full package path name (i.e. * com.perforce.p4java.messages.PerforceMessages) */ public PerforceMessages(String propertiesFile) { this.messages = ResourceBundle.getBundle(propertiesFile); } /** * Instantiates a new perforce messages. * * @param locale * the locale */ public PerforceMessages(Locale locale) { this.locale = locale; this.messages = ResourceBundle.getBundle(MESSAGE_BUNDLE, locale); } /** * Gets the locale. * * @return the locale */ public Locale getLocale() { return locale; } /** * Sets the locale. * * @param locale * the new locale */ public void setLocale(Locale locale) { this.locale = locale; } /** * Gets the messages. * * @return the messages */ public ResourceBundle getMessages() { return messages; } /** * Sets the messages. * * @param messages * the new messages */ public void setMessages(ResourceBundle messages) { this.messages = messages; } /** * Gets the message. * * @param key * the key * @return the message */ public String getMessage(String key) { return messages.getString(key); } /** * Gets the message. * * @param key * the key * @param params * the params * @return the message */ public String getMessage(String key, Object[] params) { return format(messages.getString(key), params); } /** * Format a message with parameters. * * @param message * the message * @param params * the params * @return the string * @see MessageFormat */ public String format(String message, Object[] params) { return MessageFormat.format(message, params); } }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 19903 | stuartrowe |
Branching //guest/perforce_software/p4java/... to //guest/stuartrowe/p4java/... |
||
//guest/perforce_software/p4java/r14.1/src/main/java/com/perforce/p4java/messages/PerforceMessages.java | |||||
#1 | 12541 | Matt Attaway | Initial add of the 14.1 p4java source code |