saker.build Documentation TaskDoc JavaDoc Packages
public interface ComposedStructuredTaskResult extends StructuredTaskResult
StructuredTaskResult interface representing a result that may contain other intermediate structured task results.

The getIntermediateTaskResult(TaskResultResolver) can be used to retrieve intermediate results. The intermediate results must return semantically the same object from their StructuredTaskResult.toResult(TaskResultResolver) function as this instance.

This interface is useful when the result of a task depends on other possibly structured task results. In cases like this, the consumer of the composed structured task result may optimize its behaviour and dependency management based on the intermediate results.

The interface should be implemented by clients to be used.

Methods
public StructuredTaskResult
Gets the intermediate task result that this task result is composed of.
Gets the intermediate task result that this task result is composed of.

The intermediate results has the same final result semantics as this instance. Its StructuredTaskResult.toResult(TaskResultResolver) and related methods must provide access to the semantically same object as this.

Note for implementations: This method must never return an object semantically same as this.

resultsThe results to resolve the task identifiers against.
The intermediate task result. Never semantically same as this. Never null.
NullPointerExceptionIf the argument is null.
RuntimeExceptionIn cases when the result cannot be computed properly. (E.g. task execution failure)