blob: 099ba2d2dc84ca7aa66f454785e666f6babf7dae [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2004, 2012 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.osgi.storage;
import java.util.ResourceBundle;
import org.eclipse.osgi.container.Module;
import org.eclipse.osgi.container.ModuleRevision;
import org.eclipse.osgi.internal.framework.EquinoxBundle;
import org.eclipse.osgi.service.localization.BundleLocalization;
import org.eclipse.osgi.storage.BundleInfo.Generation;
import org.osgi.framework.Bundle;
/**
* The implementation of the service that gets ResourceBundle objects from a given
* bundle with a given locale.
*
* <p>Internal class.</p>
*/
public class BundleLocalizationImpl implements BundleLocalization {
/**
* The getLocalization method gets a ResourceBundle object for the given
* locale and bundle.
*
* @return A <code>ResourceBundle</code> object for the given bundle and locale.
* If null is passed for the locale parameter, the default locale is used.
*/
@Override
public ResourceBundle getLocalization(Bundle bundle, String locale) {
Module m = ((EquinoxBundle) bundle).getModule();
ModuleRevision r = m.getCurrentRevision();
Generation g = (Generation) r.getRevisionInfo();
return g.getResourceBundle(locale);
}
}