package hudson.plugins.testabilityexplorer.helpers; import hudson.remoting.Callable; import hudson.model.BuildListener; /** * A {@link Callable} that will delegate parsing of the reports to the {@link ParseDelegate}. * * @author reik.schatz */ public class BuildProxyCallableHelper implements Callable<BuildProxy, Exception> { private final BuildProxy m_buildProxy; private final ParseDelegate m_parseDelegate; private final BuildListener m_listener; public BuildProxyCallableHelper(BuildProxy buildProxy, ParseDelegate parseDelegate, BuildListener listener) { m_buildProxy = buildProxy; m_parseDelegate = parseDelegate; m_listener = listener; } /** * Delegates report parsing to the {@link ParseDelegate}. Might flags the {@link BuildProxy} as not being * successful. * * @return BuildProxy * @throws Exception */ public BuildProxy call() throws Exception { m_parseDelegate.perform(m_buildProxy, m_listener); return m_buildProxy; } }