diff options
Diffstat (limited to 'plugins/org.eclipse.emf.compare.uml2.papyrus/src/org/eclipse/emf/compare/uml2/papyrus/internal/UMLPapyrusCompareMessages.java')
-rw-r--r-- | plugins/org.eclipse.emf.compare.uml2.papyrus/src/org/eclipse/emf/compare/uml2/papyrus/internal/UMLPapyrusCompareMessages.java | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/plugins/org.eclipse.emf.compare.uml2.papyrus/src/org/eclipse/emf/compare/uml2/papyrus/internal/UMLPapyrusCompareMessages.java b/plugins/org.eclipse.emf.compare.uml2.papyrus/src/org/eclipse/emf/compare/uml2/papyrus/internal/UMLPapyrusCompareMessages.java new file mode 100644 index 000000000..5a7e85160 --- /dev/null +++ b/plugins/org.eclipse.emf.compare.uml2.papyrus/src/org/eclipse/emf/compare/uml2/papyrus/internal/UMLPapyrusCompareMessages.java @@ -0,0 +1,67 @@ +/******************************************************************************* + * Copyright (c) 2016 EclipseSource Services GmbH 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: + * Martin Fleck - initial API and implementation + *******************************************************************************/ +package org.eclipse.emf.compare.uml2.papyrus.internal; + +import java.text.MessageFormat; +import java.util.MissingResourceException; +import java.util.ResourceBundle; + +/** + * Utility class to access externalized Strings for UML Papyrus Compare. + * + * @author Martin Fleck <mfleck@eclipsesource.com> + */ +public final class UMLPapyrusCompareMessages { + /** Full qualified path to the properties file in which to seek the keys. */ + private static final String BUNDLE_NAME = "org.eclipse.emf.compare.uml2.papyrus.internal.messages"; //$NON-NLS-1$ + + /** Contains the locale specific {@link String}s needed by this plug-in. */ + private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME); + + /** + * Utility classes don't need to (and shouldn't) be instantiated. + */ + private UMLPapyrusCompareMessages() { + // prevents instantiation + } + + /** + * Returns a specified {@link String} from the resource bundle. + * + * @param key + * Key of the String we seek. + * @return The String from the resource bundle associated with <code>key</code>. + */ + public static String getString(final String key) { + try { + return RESOURCE_BUNDLE.getString(key); + } catch (final MissingResourceException e) { + return '!' + key + '!'; + } + } + + /** + * Returns a String from the resource bundle bound with the given arguments. + * + * @param key + * Key of the String we seek. + * @param arguments + * Arguments for the String formatting. + * @return formatted {@link String}. + * @see MessageFormat#format(String, Object[]) + */ + public static String getString(final String key, final Object... arguments) { + if (arguments == null) { + return getString(key); + } + return MessageFormat.format(getString(key), arguments); + } +} |