/* * Copyright © 2010 by Ondrej Skalicka. All Rights Reserved */ package cz.cvut.felk.cig.jcop.solver.condition; import cz.cvut.felk.cig.jcop.solver.message.Message; import cz.cvut.felk.cig.jcop.solver.message.MessageSolutionFound; import cz.cvut.felk.cig.jcop.solver.message.MessageSolverStart; /** * Evaluates to true when a solution is found (usually good for destination problems). * * @author Ondrej Skalicka */ public class FoundSolutionCondition extends BaseCondition { /** * If solution was yet found. */ protected boolean solutionFound = false; public boolean isConditionMet() { return solutionFound; } @Override public void onMessage(Message message) { if (message instanceof MessageSolutionFound) this.solutionFound = true; else if (message instanceof MessageSolverStart) this.solutionFound = false; } }