/* * Copyright 2014 Red Hat, Inc. and/or its affiliates. * * Licensed under the Eclipse Public License version 1.0, available at * http://www.eclipse.org/legal/epl-v10.html */ package org.jboss.windup.config.condition; import java.util.Arrays; import java.util.HashSet; import java.util.Set; import org.jboss.windup.config.GraphRewrite; import org.ocpsoft.rewrite.context.EvaluationContext; import org.ocpsoft.rewrite.param.ParameterStore; import org.ocpsoft.rewrite.param.ParameterValueStore; import org.ocpsoft.rewrite.param.Parameterized; /** * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> */ public class ParamCondition extends GraphCondition implements Parameterized { private final String name; private final String value; public ParamCondition(String name, String value) { this.name = name; this.value = value; } @Override public boolean evaluate(GraphRewrite event, EvaluationContext context) { ParameterStore store = (ParameterStore) context.get(ParameterStore.class); ParameterValueStore values = (ParameterValueStore) context.get(ParameterValueStore.class); boolean result = values.submit(event, context, store.get(name), value); return result; } @Override public Set<String> getRequiredParameterNames() { return new HashSet<>(Arrays.asList(name)); } @Override public void setParameterStore(ParameterStore store) { } }