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

nl.uu.cs.ape.models.enums.SynthesisFlag Maven / Gradle / Ivy

Go to download

APE is a command line tool and an API for the automated exploration of possible computational pipelines (workflows) from large collections of computational tools.

The newest version!
package nl.uu.cs.ape.models.enums;

/**
 * The {@code SynthesisFlag} class is used to model the reason why the synthesis
 * search was interrupted.
 *
 * @author Vedran Kasalica
 */
public enum SynthesisFlag {

    /**
     * Synthesis found all required solutions (it was not interrupted, it finished
     * successfully).
     */
    NONE,

    /**
     * Synthesis couldn't find any solutions for the given specification and length.
     */
    UNSAT,

    /**
     * Synthesis search was interrupted because it reached the maximum workflow
     * length without finding the specified number of solutions.
     */
    MAX_LENGTH,

    /**
     * Synthesis was interrupted because it reached the maximum run duration.
     */
    TIMEOUT,

    /**
     * Synthesis was interrupted for an unknown reason.
     */
    UNKNOWN;

    /**
     * Get the message that reflects the reason the synthesis execution was
     * interrupted. 
* {@link SynthesisFlag#NONE} signals that the synthesis search was not * interrupted (it finished), so there is no corresponding message. * * @return A string corresponding to the message the flag depicts. */ public String getMessage() { if (this == SynthesisFlag.NONE) { return ""; } else if (this == SynthesisFlag.UNSAT) { return "No solutions can be found for the given specification."; } else if (this == SynthesisFlag.MAX_LENGTH) { return "Synthesis was interrupted because it reached the maximum workflow length without finding the specified number of solutions."; } else if (this == SynthesisFlag.TIMEOUT) { return "Synthesis was interrupted because it reached the maximum run duration."; } else { return "Synthesis was interrupted for an unknown reason."; } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy