// ============================================================================ // // 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.dataprofiler.core.ui.editor.preview.model.states.pattern; import org.talend.dataprofiler.core.ui.editor.preview.IndicatorUnit; import org.talend.dataprofiler.core.ui.editor.preview.model.states.utils.CommonStateUtil; import org.talend.dataquality.indicators.Indicator; import org.talend.dq.analysis.explore.DataExplorer; import org.talend.dq.analysis.explore.RegexPatternExplorer; import org.talend.dq.indicators.IndicatorCommonUtil; import org.talend.dq.indicators.ext.PatternMatchingExt; import org.talend.dq.indicators.preview.table.PatternChartDataEntity; /** * created by yyin on 2014-12-3 Detailled comment * */ public class PatternStatisticeStateUtil { /** * DOC yyin Comment method "createDataEntity". * * @param unit * @param label * @param notMathCount * @param machCount * @return */ public static PatternChartDataEntity createDataEntity(IndicatorUnit unit, String label, String notMathCount, String machCount) { PatternChartDataEntity patternEntity = new PatternChartDataEntity(); patternEntity.setIndicator(unit.getIndicator()); patternEntity.setLabel(label); patternEntity.setNumMatch(machCount); patternEntity.setNumNoMatch(notMathCount); return patternEntity; } /** * DOC yyin Comment method "getMatchCount". * * @param patternExt * @return */ public static String getMatchCount(PatternMatchingExt patternExt) { return CommonStateUtil.getUnitValue(patternExt.getMatchingValueCount(), 0); } /** * DOC yyin Comment method "getNotMatchCount". * * @param patternExt * @return */ public static String getNotMatchCount(PatternMatchingExt patternExt) { return CommonStateUtil.getUnitValue(patternExt.getNotMatchingValueCount(), 0); } public static DataExplorer getDataExplorer() { return new RegexPatternExplorer(); } /** * * Convert unitValue when indicator is not computed * * @param indicator * @param unitValue * @return Instance of PatternMatchingExt which contain the result of currnt matching indicator */ public static PatternMatchingExt getUnitValue(Indicator indicator, Object unitValue) { if (indicator.isComputed() && unitValue != null && unitValue instanceof PatternMatchingExt) { return (PatternMatchingExt) unitValue; } return IndicatorCommonUtil.handleMatchingValue(indicator); } }