package eu.dnetlib.contract.runner;



/**
 * Result context. Encapsulates results returned by tested method, 'before' and 'after' modules.
 * @author mhorst
 *
 */
public class RunnerResultContext {
	
	/**
	 * Tested method's entry containing execution result.
	 */
	private InvokerDataResultEntry[] executionDataResultEntries;
	
	/**
	 * Array of 'before' methods results.
	 */
	private InvokerDataResultEntry[] beforeDataResultEntries;
	
	/**
	 * Array of 'after' methods results.
	 */
	private InvokerDataResultEntry[] afterDataResultEntries;
		

	/**
	 * Returns tested method's execution result.
	 * @return tested method's execution result
	 */
	public InvokerDataResultEntry[] getExecutionDataResultEntries() {
		return executionDataResultEntries;
	}

	/**
	 * Sets tested method's execution result.
	 * @param executionDataResultEntry
	 */
	public void setExecutionDataResultEntries(
			InvokerDataResultEntry[] executionDataResultEntries) {
		this.executionDataResultEntries = executionDataResultEntries;
	}

	/**
	 * Returns 'before' methods' execution results.
	 * @return 'before' methods' execution results
	 */
	public InvokerDataResultEntry[] getBeforeDataResultEntries() {
		return beforeDataResultEntries;
	}

	/**
	 * Sets 'before' methods' execution results.
	 * @param beforeDataResultEntries
	 */
	public void setBeforeDataResultEntries(
			InvokerDataResultEntry[] beforeDataResultEntries) {
		this.beforeDataResultEntries = beforeDataResultEntries;
	}

	/**
	 * Returns 'after' methods' execution results.
	 * @return 'after' methods' execution results
	 */
	public InvokerDataResultEntry[] getAfterDataResultEntries() {
		return afterDataResultEntries;
	}

	/**
	 * Sets 'after' methods' execution results.
	 * @param afterDataResultEntries
	 */
	public void setAfterDataResultEntries(
			InvokerDataResultEntry[] afterDataResultEntries) {
		this.afterDataResultEntries = afterDataResultEntries;
	}

}
