001// License: GPL. For details, see LICENSE file.
002package org.openstreetmap.josm.tools.template_engine;
003
004import org.openstreetmap.josm.actions.search.SearchCompiler.Match;
005
006public class SearchExpressionCondition implements TemplateEntry {
007
008    private final Match condition;
009    private final TemplateEntry text;
010
011    public SearchExpressionCondition(Match condition, TemplateEntry text) {
012        this.condition = condition;
013        this.text = text;
014    }
015
016    @Override
017    public void appendText(StringBuilder result, TemplateEngineDataProvider dataProvider) {
018        text.appendText(result, dataProvider);
019    }
020
021    @Override
022    public boolean isValid(TemplateEngineDataProvider dataProvider) {
023        return dataProvider.evaluateCondition(condition);
024    }
025
026    @Override
027    public String toString() {
028        return condition + " '" + text + '\'';
029    }
030}