package org.jbehave.core.steps; import java.lang.reflect.Method; import java.lang.reflect.Type; import org.jbehave.core.model.StepPattern; /** * Interface to monitor step events */ public interface StepMonitor { void stepMatchesType(String stepAsString, String previousAsString, boolean matchesType, StepType stepType, Method method, Object stepsInstance); void stepMatchesPattern(String step, boolean matches, StepPattern stepPattern, Method method, Object stepsInstance); void convertedValueOfType(String value, Type type, Object converted, Class<?> converterClass); void performing(String step, boolean dryRun); void usingAnnotatedNameForParameter(String name, int position); void usingParameterNameForParameter(String name, int position); void usingTableAnnotatedNameForParameter(String name, int position); void usingTableParameterNameForParameter(String name, int position); void usingNaturalOrderForParameter(int position); void foundParameter(String parameter, int position); void usingStepsContextParameter(String parameter); }