package org.Webgatherer.CoreEngine.Workflow;
import com.google.inject.Inject;
import com.google.inject.Provider;
import org.htmlcleaner.HtmlCleaner;
import java.lang.reflect.Method;
import java.util.Map;
/**
* @author Rick Dane
*/
public class WorfkflowWrapperImpl_Reflection {
private Provider <HtmlCleaner> htmlCleanerProvider;
@Inject
public WorfkflowWrapperImpl_Reflection(Provider<HtmlCleaner> htmlCleanerProvider) {
this.htmlCleanerProvider = htmlCleanerProvider;
}
public boolean runWorfklow(String methodName, Map<String, Object> workflowParams) {
Method method = null;
Class thisClass;
Class[] parameter = new Class[1];
parameter[0] = Map.class;
try {
thisClass = Class.forName("org.Webgatherer.CoreEngine.Workflow.WorfkflowWrapperImpl_Reflection");
method = thisClass.getDeclaredMethod(methodName, parameter);
} catch (Exception e) {
System.out.println("Reflection failed - method '" + methodName + "' does not exist");
return false;
}
try {
method.invoke(this, workflowParams);
} catch (Exception e) {
System.out.println("Reflection failed - error during execution of method: '" + methodName + "'");
}
return true;
}
}