/* * Copyright (C) 2003-2010 eXo Platform SAS. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Affero General Public License * as published by the Free Software Foundation; either version 3 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see<http://www.gnu.org/licenses/>. */ package org.exoplatform.services.jcr.ext.backup; import java.util.Calendar; /** * Created by The eXo Platform SAS. * * <br>Date: 2010 * * @author <a href="mailto:alex.reshetnyak@exoplatform.com.ua">Alex Reshetnyak</a> * @version $Id$ */ public interface RepositoryBackupChain { /** * State of backup : full backup was finished and incremental backup is working. */ public static final int FULL_BACKUP_FINISHED_INCREMENTAL_BACKUP_WORKING = 16; /** * State of backup WORKING. */ public static final int WORKING = 8; /** * State of backup FINISHED. */ public static final int FINISHED = 4; /** * Sate of backup INITIALIZED. */ public static final int INITIALIZED = 0; /** * Call start backup. * */ void startBackup(); /** * Call stop backup. * */ void stopBackup(); /** * Getting state of backup. * * @return int * return state of backup */ int getState(); /** * isFinished. * * @return boolean * return 'true' if backup was finished. */ boolean isFinished(); /** * Getting path to backup log. * * @return String * return path to backup log */ String getLogFilePath(); /** * Getting identifier of backup. * * @return String * return identifier of backup */ String getBackupId(); /** * Getting started time of backup. * * @return Calendar * return started time of backup */ Calendar getStartedTime(); /** * Getting repository backup config. * * @return RepositoryBackupConfig * return the repository backup config */ RepositoryBackupConfig getBackupConfig(); }