tikhomirov@360: /* tikhomirov@423: * Copyright (c) 2011-2012 TMate Software Ltd tikhomirov@360: * tikhomirov@360: * This program is free software; you can redistribute it and/or modify tikhomirov@360: * it under the terms of the GNU General Public License as published by tikhomirov@360: * the Free Software Foundation; version 2 of the License. tikhomirov@360: * tikhomirov@360: * This program is distributed in the hope that it will be useful, tikhomirov@360: * but WITHOUT ANY WARRANTY; without even the implied warranty of tikhomirov@360: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the tikhomirov@360: * GNU General Public License for more details. tikhomirov@360: * tikhomirov@360: * For information on how to redistribute this software under tikhomirov@360: * the terms of a license other than GNU General Public License tikhomirov@360: * contact TMate Software at support@hg4j.com tikhomirov@360: */ tikhomirov@360: package org.tmatesoft.hg.core; tikhomirov@360: tikhomirov@423: import org.tmatesoft.hg.internal.Callback; tikhomirov@360: import org.tmatesoft.hg.util.Path; tikhomirov@360: import org.tmatesoft.hg.util.Status; tikhomirov@360: tikhomirov@360: /** tikhomirov@360: * Callback to process {@link HgStatus} objects. tikhomirov@360: * @author Artem Tikhomirov tikhomirov@360: * @author TMate Software Ltd. tikhomirov@360: */ tikhomirov@423: @Callback tikhomirov@360: public interface HgStatusHandler { tikhomirov@360: tikhomirov@427: /** tikhomirov@427: * Report status of the next file tikhomirov@427: * tikhomirov@427: * @param s file status descriptor tikhomirov@423: * @throws HgCallbackTargetException wrapper for any exception user code may produce tikhomirov@360: */ tikhomirov@427: void status(HgStatus s) throws HgCallbackTargetException; tikhomirov@360: tikhomirov@360: /** tikhomirov@360: * Report non-critical error processing single file during status operation tikhomirov@427: * tikhomirov@360: * @param file name of the file that caused the trouble tikhomirov@360: * @param s error description object tikhomirov@423: * @throws HgCallbackTargetException wrapper for any exception user code may produce tikhomirov@360: */ tikhomirov@427: void error(Path file, Status s) throws HgCallbackTargetException; tikhomirov@360: }