// ============================================================================ // // Copyright (C) 2006-2016 Talend Inc. - www.talend.com // // This source code is available under agreement available at // %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt // // You should have received a copy of the agreement // along with this program; if not, write to Talend SA // 9 rue Pages 92150 Suresnes, France // // ============================================================================ package org.talend.cwm.management.i18n; import org.apache.commons.lang.StringUtils; import org.talend.core.model.properties.Property; import org.talend.dataquality.PluginConstant; /** * get internationalization string util class * */ public class InternationalizationUtil { /** * * get Internationalization Label of SystemIndicatorDefinition * * * @param originalName the value of parameter should be lable of property(for "Row_Count.definition" * indicatorDefinition it should be "Row_Count") * @return if originalName is null we will return EMPTY string else will return internationalization string */ public static String getDefinitionInternationalizationLabel(String originalName) { return getInternationalizationLabel(originalName); } private static String getInternationalizationLabel(String originalName) { return originalName == null ? StringUtils.EMPTY : Messages.getString(originalName); } /** * * get Internationalization Label of Category. We must do a replace operation is because of we can only get * "Advanced Statistics" from frequency indicatorDefinition but we can not use it to do a interational key.So we * replace it from "Advanced Statistics" to "Advanced_Statistics" then do international operation. * * It will be used on Category of User Definition Indicator and presistence report file by now. * * @param originalName the value of parameter should be lable of category(for * "Bin_Low_Frequency_Table_0.1.definition" indicatorDefinition it should be "Advanced Statistics") * * @return if originalName is null we will return EMPTY string else will return internationalization string */ public static String getCategoryInternationalizationLabel(String originalName) { return getInternationalizationLabel(originalName == null ? null : originalName.replace(PluginConstant.SPACE_STRING, PluginConstant.UNDER_LINE)); } /** * * get Internationalization Label of SystemIndicatorDefinition * * @param property the property of indicatorDefinition * @return if property is null or label of property is null we will return EMPTY string else will return * internationalization string */ public static String getDefinitionInternationalizationLabel(Property property) { if (property == null) { return StringUtils.EMPTY; } String originalName = property.getLabel(); return getDefinitionInternationalizationLabel(originalName); } }