blob: ae1d55e32cf662fd7906a49cd9d65a568acfc8b2 [file] [log] [blame]
/*
* Copyright 2004,2005 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.axis2.i18n;
import java.util.HashMap;
import java.util.Locale;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
public class Messages {
private static final Class thisClass = Messages.class;
private static final String projectName = MessagesConstants.projectName;
private static final String resourceName = MessagesConstants.resourceName;
private static final Locale locale = MessagesConstants.locale;
public static final String DEFAULT_MESSAGE_BUNDLE_KEY = "default";
private static final String NO_MESSAGE_BUNDLE = "Message Bundle is not available";
private static final String packageName = getPackage(thisClass.getName());
private static final ClassLoader classLoader = thisClass.getClassLoader();
private static final ResourceBundle parent =
(MessagesConstants.rootPackageName.equals(packageName))
? null
: MessagesConstants.rootBundle;
private static HashMap messageBundleMap = new HashMap ();
static {
MessageBundle defaultMessageBundle =
new MessageBundle(projectName, packageName, resourceName,
locale, classLoader, parent);
addMessageBundle(DEFAULT_MESSAGE_BUNDLE_KEY,defaultMessageBundle);
}
/**
* To add a new Message Bundle to the MessageBundle list.
*
* @param messageBundleKey The key which will be used to refer to this message bundle later.
* @param messageBundle The message bundle.
*/
public static void addMessageBundle (String messageBundleKey,MessageBundle messageBundle) {
messageBundleMap.put(messageBundleKey,messageBundle);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param key The resource key
* @return The formatted message
*/
public static String getMessage(String key)
throws MissingResourceException {
MessageBundle messageBundle = getMessageBundle (DEFAULT_MESSAGE_BUNDLE_KEY);
return messageBundle.getMessage(key);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param key The resource key
* @param arg0 The argument to place in variable {0}
* @return The formatted message
*/
public static String getMessage(String key, String arg0)
throws MissingResourceException {
MessageBundle messageBundle = getMessageBundle (DEFAULT_MESSAGE_BUNDLE_KEY);
return messageBundle.getMessage(key, arg0);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param key The resource key
* @param arg0 The argument to place in variable {0}
* @param arg1 The argument to place in variable {1}
* @return The formatted message
*/
public static String getMessage(String key, String arg0, String arg1)
throws MissingResourceException {
MessageBundle messageBundle = getMessageBundle (DEFAULT_MESSAGE_BUNDLE_KEY);
return messageBundle.getMessage(key, arg0, arg1);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param key The resource key
* @param arg0 The argument to place in variable {0}
* @param arg1 The argument to place in variable {1}
* @param arg2 The argument to place in variable {2}
* @return The formatted message
*/
public static String getMessage(String key, String arg0, String arg1, String arg2)
throws MissingResourceException {
MessageBundle messageBundle = getMessageBundle (DEFAULT_MESSAGE_BUNDLE_KEY);
return messageBundle.getMessage(key, arg0, arg1, arg2);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param key The resource key
* @param arg0 The argument to place in variable {0}
* @param arg1 The argument to place in variable {1}
* @param arg2 The argument to place in variable {2}
* @param arg3 The argument to place in variable {3}
* @return The formatted message
*/
public static String getMessage(String key, String arg0, String arg1, String arg2, String arg3)
throws MissingResourceException {
MessageBundle messageBundle = getMessageBundle (DEFAULT_MESSAGE_BUNDLE_KEY);
return messageBundle.getMessage(key, arg0, arg1, arg2, arg3);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param key The resource key
* @param arg0 The argument to place in variable {0}
* @param arg1 The argument to place in variable {1}
* @param arg2 The argument to place in variable {2}
* @param arg3 The argument to place in variable {3}
* @param arg4 The argument to place in variable {4}
* @return The formatted message
*/
public static String getMessage(String key, String arg0, String arg1, String arg2, String arg3, String arg4)
throws MissingResourceException {
MessageBundle messageBundle = getMessageBundle (DEFAULT_MESSAGE_BUNDLE_KEY);
return messageBundle.getMessage(key, arg0, arg1, arg2, arg3, arg4);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param key The resource key
* @param args An array of objects to place in corresponding variables
* @return The formatted message
*/
public static String getMessage(String key, String[] args)
throws MissingResourceException {
MessageBundle messageBundle = getMessageBundle (DEFAULT_MESSAGE_BUNDLE_KEY);
return messageBundle.getMessage(key, args);
}
public static ResourceBundle getResourceBundle() {
MessageBundle messageBundle = getMessageBundle (DEFAULT_MESSAGE_BUNDLE_KEY);
return messageBundle.getResourceBundle();
}
public static MessageBundle getMessageBundle() {
return getMessageBundle (DEFAULT_MESSAGE_BUNDLE_KEY);
}
public static MessageBundle getMessageBundle(String messageBundleKey) {
return (MessageBundle) messageBundleMap.get (messageBundleKey);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param messageBundleKey The key for getting the correct message bundle.
* @param key The resource key
* @return The formatted message
*/
public static String getMessageFromBundle(String messageBundleKey,String key)
throws MissingResourceException, Exception {
MessageBundle messageBundle = getMessageBundle (messageBundleKey);
if (messageBundle==null)
throw new Exception (NO_MESSAGE_BUNDLE);
return messageBundle.getMessage(key);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param messageBundleKey The key for getting the correct message bundle.
* @param key The resource key
* @param arg0 The argument to place in variable {0}
* @return The formatted message
*/
public static String getMessageFromBundle(String messageBundleKey,String key, String arg0)
throws MissingResourceException, Exception {
MessageBundle messageBundle = getMessageBundle (messageBundleKey);
if (messageBundle==null)
throw new Exception (NO_MESSAGE_BUNDLE);
return messageBundle.getMessage(key, arg0);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param messageBundleKey The key for getting the correct message bundle.
* @param key The resource key
* @param arg0 The argument to place in variable {0}
* @param arg1 The argument to place in variable {1}
* @return The formatted message
*/
public static String getMessageFromBundle(String messageBundleKey,String key, String arg0, String arg1)
throws MissingResourceException, Exception {
MessageBundle messageBundle = getMessageBundle (messageBundleKey);
if (messageBundle==null)
throw new Exception (NO_MESSAGE_BUNDLE);
return messageBundle.getMessage(key, arg0, arg1);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param messageBundleKey The key for getting the correct message bundle.
* @param key The resource key
* @param arg0 The argument to place in variable {0}
* @param arg1 The argument to place in variable {1}
* @param arg2 The argument to place in variable {2}
* @return The formatted message
*/
public static String getMessageFromBundle(String messageBundleKey,String key, String arg0, String arg1, String arg2)
throws MissingResourceException, Exception {
MessageBundle messageBundle = getMessageBundle (messageBundleKey);
if (messageBundle==null)
throw new Exception (NO_MESSAGE_BUNDLE);
return messageBundle.getMessage(key, arg0, arg1, arg2);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param messageBundleKey The key for getting the correct message bundle.
* @param key The resource key
* @param arg0 The argument to place in variable {0}
* @param arg1 The argument to place in variable {1}
* @param arg2 The argument to place in variable {2}
* @param arg3 The argument to place in variable {3}
* @return The formatted message
*/
public static String getMessageFromBundle(String messageBundleKey,String key, String arg0, String arg1, String arg2, String arg3)
throws MissingResourceException, Exception {
MessageBundle messageBundle = getMessageBundle (messageBundleKey);
if (messageBundle==null)
throw new Exception (NO_MESSAGE_BUNDLE);
return messageBundle.getMessage(key, arg0, arg1, arg2, arg3);
}
/**
* Get a message from resource.properties from the package of the given object.
*
* @param messageBundleKey The key for getting the correct message bundle.
* @param key The resource key
* @param arg0 The argument to place in variable {0}
* @param arg1 The argument to place in variable {1}
* @param arg2 The argument to place in variable {2}
* @param arg3 The argument to place in variable {3}
* @param arg4 The argument to place in variable {4}
* @return The formatted message
*/
public static String getMessageFromBundle(String messageBundleKey,String key, String arg0, String arg1, String arg2, String arg3, String arg4)
throws MissingResourceException, Exception {
MessageBundle messageBundle = getMessageBundle (messageBundleKey);
if (messageBundle==null)
throw new Exception (NO_MESSAGE_BUNDLE);
return messageBundle.getMessage(key, arg0, arg1, arg2, arg3, arg4);
}
private static String getPackage(String name) {
return name.substring(0, name.lastIndexOf('.')).intern();
}
}