blob: c04f091e4c907f37edbe85fdf1d882ea8d1a4314 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2002-2005 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM - Initial API and implementation
*******************************************************************************/
package org.eclipse.wst.wsi.internal.core.util;
import java.util.ResourceBundle;
/**
* This class creates and maintains a message list.
*
* @author Peter Brittenham (peterbr@us.ibm.com)
* @version 1.0.1
*/
public class MessageList
{
/**
* Message resource bundle.
*/
private ResourceBundle messageResourceBundle = null;
/**
* Do not allow this object to be created with null constructor.
*/
private MessageList()
{
}
/**
* Constructor for MessageList.
* @param resourceBundleName a resource bundle name.
*/
public MessageList(String resourceBundleName)
{
this.messageResourceBundle = ResourceBundle.getBundle(resourceBundleName);
}
/**
* Get a message from the resource bundle.
* @param key a key.
* @param defaultMessage a default message.
* @return message from the resource bundle.
*/
public String getMessage(String key, String defaultMessage)
{
return getMessage(key, null, defaultMessage);
}
/**
* Get a message from the resource bundle.
* @param key a key.
* @param messageData message data.
* @param defaultMessage a default message.
* @return message from the resource bundle.
*/
public String getMessage(
String key,
String messageData,
String defaultMessage)
{
String message = defaultMessage;
try
{
// Get message
message = messageResourceBundle.getString(key);
}
catch (Exception e)
{
// Ignore and just use default message
}
if (messageData != null)
message += " " + messageData;
// Return message
return message;
}
/**
* Print a message from the resource bundle.
* @param key a key.
* @param defaultMessage a default message.
*/
public void printMessage(String key, String defaultMessage)
{
printMessage(key, null, defaultMessage);
}
/**
* Print a message from the resource bundle.
* @param key a key.
* @param messageData message data.
* @param defaultMessage a default message.
*/
public void printMessage(
String key,
String messageData,
String defaultMessage)
{
// Print message
System.out.println(getMessage(key, messageData, defaultMessage));
}
/**
* Static get message.
* @param resourceBundleName resource bundle name.
* @param key a key.
* @param messageData message data.
* @param defaultMessage a default message.
* @return message.
*/
public static String getMessage(
String resourceBundleName,
String key,
String messageData,
String defaultMessage)
{
String message = defaultMessage;
ResourceBundle messageResourceBundle = null;
try
{
// Get resource bundle
messageResourceBundle = ResourceBundle.getBundle(resourceBundleName);
// Get message
message = messageResourceBundle.getString(key);
}
catch (Exception e)
{
// Ignore and just use default message
}
if (messageData != null)
message += " " + messageData;
if (!message.endsWith("."))
message += ".";
// Return message
return message;
}
/**
* Print message.
* @param resourceBundleName resource bundle name.
* @param key a key.
* @param messageData message data.
* @param defaultMessage a default message.
*/
public static void printMessage(
String resourceBundleName,
String key,
String messageData,
String defaultMessage)
{
// Print message
System.out.println(
getMessage(resourceBundleName, key, messageData, defaultMessage));
}
}