All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jresearch.commons.gwt.client.model.localization.L18nValueProvider Maven / Gradle / Ivy

package org.jresearch.commons.gwt.client.model.localization;

import org.jresearch.commons.gwt.client.resource.UtilsRs;
import org.jresearch.commons.gwt.shared.model.localization.L18nProperty;
import org.jresearch.commons.gwt.shared.model.localization.LocaleModel;
import org.jresearch.commons.gwt.shared.model.localization.LocaleTool;

import com.sencha.gxt.core.client.ValueProvider;

public class L18nValueProvider implements ValueProvider {

    private LocaleModel locale;
    private final ValueProvider provider;

    public L18nValueProvider(final ValueProvider provider) {
        this.provider = provider;
        locale = LocaleTool.getCurrentLocale(true);
    }

    @Override
    public String getValue(final T object) {
        final L18nProperty property = provider.getValue(object);
        return UtilsRs.TXT.l18nAdminValue(LocaleTool.getRaw(property.getContainer(), locale), property.get(locale));
    }

    @Override
    public void setValue(final T object, final String value) {
        provider.getValue(object).set(locale, value);
    }

    @Override
    public String getPath() {
        return provider.getPath();
    }

    /**
     * @param locale
     *            the locale to set
     */
    public void setLocale(final LocaleModel locale) {
        this.locale = locale;
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy