/* * Copyright 2015 Nokia Solutions and Networks * Licensed under the Apache License, Version 2.0, * see license.txt file for details. */ package org.robotframework.ide.eclipse.main.plugin.project.build.validation.versiondependent.setting; import java.util.List; import org.eclipse.core.resources.IFile; import org.rf.ide.core.testdata.model.RobotVersion; import org.rf.ide.core.testdata.model.table.setting.TestTemplate; import org.robotframework.ide.eclipse.main.plugin.model.RobotSettingsSection; import org.robotframework.ide.eclipse.main.plugin.project.build.ProblemsReportingStrategy; import org.robotframework.ide.eclipse.main.plugin.project.build.causes.GeneralSettingsProblem; import com.google.common.base.Function; import com.google.common.collect.Range; public class DuplicatedTemplateInOlderValidator extends ADuplicatedInOldValidator<TestTemplate> { public DuplicatedTemplateInOlderValidator(final IFile file, final RobotSettingsSection section, final ProblemsReportingStrategy reporter) { super(file, section, reporter); } @Override protected Range<RobotVersion> getApplicableVersionRange() { return Range.lessThan(new RobotVersion(3, 0)); } @Override protected List<TestTemplate> getElements() { return section.getLinkedElement().getTestTemplates(); } @Override protected Function<TestTemplate, String> getImportantElement() { return new Function<TestTemplate, String>() { @Override public String apply(final TestTemplate template) { return template.getKeywordName() == null ? null : template.getKeywordName().getText(); } }; } @Override protected GeneralSettingsProblem getSettingProblemId() { return GeneralSettingsProblem.DUPLICATED_TEMPLATE_28; } }