All Downloads are FREE. Search and download functionalities are using the official Maven repository.

fr.boreal.component_builder.api.algorithm.IEnvironmentExecutionParameters Maven / Gradle / Ivy

There is a newer version: 1.6.2
Show newest version
package fr.boreal.component_builder.api.algorithm;

import java.time.Duration;
import java.util.Optional;

import fr.lirmm.boreal.util.externalHaltingConditions.ExternalAlgorithmHaltingConditions;

interface IEnvironmentExecutionParameters {

	ExternalAlgorithmHaltingConditions getExternalHaltingConditions();

	IAlgorithmParameters setExternalHaltingConditions(ExternalAlgorithmHaltingConditions hc);

	default IAlgorithmParameters setRank(Long rank) {
		return setExternalHaltingConditions(getExternalHaltingConditions().withModified(rank, null));
	}

	default IAlgorithmParameters setTimeout(Duration timeout) {
		return setExternalHaltingConditions(getExternalHaltingConditions().withModified(null, timeout));
	}

	default Optional getRank() {
		return Optional.ofNullable(getExternalHaltingConditions().rank());
	};

	default Optional getTimeout() {
		return Optional.ofNullable(getExternalHaltingConditions().timeout());
	};

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy