/* * Copyright (C) 2009 eXo Platform SAS. * * This is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation; either version 2.1 of * the License, or (at your option) any later version. * * This software 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this software; if not, write to the Free * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ package org.exoplatform.services.jcr.ext.backup.server.bean.response; import org.exoplatform.services.jcr.ext.backup.BackupChain; import org.exoplatform.services.jcr.ext.backup.BackupChainLog; import org.exoplatform.services.jcr.ext.backup.RepositoryBackupChain; import org.exoplatform.services.jcr.ext.backup.RepositoryBackupChainLog; import org.exoplatform.services.jcr.ext.backup.server.HTTPBackupAgent; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Calendar; /** * Created by The eXo Platform SAS. * * <br> * Date: 13.04.2009 * * @author <a href="mailto:alex.reshetnyak@exoplatform.com.ua">Alex Reshetnyak</a> * @version $Id: ShortInfo.java 111 2008-11-11 11:11:11Z rainf0x $ */ public class ShortInfo { /** * The type for current backup. */ public static final int CURRENT = -1; /** * The type for completed backup. */ public static final int COMPLETED = 0; /** * The type for current restore. */ public static final int RESTORE = 1; /** * The type of ShortInfo (current, completed, restore). */ private Integer type; /** * The backup identifier. */ private String backupId; /** * The backup type (full or full+incremental). */ private Integer backupType; /** * The repository name. */ private String repositoryName; /** * The workspace name. */ private String workspaceName; /** * The state of backup or restore. */ private Integer state; /** * The started time of backup or restore. The date in format RFC 1123. */ private String startedTime; /** * The finished time of backup or restore. The date in format RFC 1123. */ private String finishedTime; /** * ShortInfo. * * Empty constructor. * */ public ShortInfo() { } /** * ShortInfo constructor. * * @param type * int, the tupe of short info * @param chain * BackupChain, the backup chain for current backup. */ public ShortInfo(int type, BackupChain chain) { this.type = type; this.backupType = chain.getBackupConfig().getBackupType(); this.backupId = chain.getBackupId(); this.repositoryName = chain.getBackupConfig().getRepository(); this.workspaceName = chain.getBackupConfig().getWorkspace(); this.state = chain.getFullBackupState(); DateFormat df = new SimpleDateFormat(HTTPBackupAgent.Constants.DATE_FORMAT_RFC_1123); this.startedTime = df.format(chain.getStartedTime().getTime()); // no applicable this.finishedTime = ""; } /** * ShortInfo constructor. * * @param type * int, the tupe of short info * @param chain * RepositoryBackupChain, the backup chain for current backup. */ public ShortInfo(int type, RepositoryBackupChain chain) { this.type = type; this.backupType = chain.getBackupConfig().getBackupType(); this.backupId = chain.getBackupId(); this.repositoryName = chain.getBackupConfig().getRepository(); this.state = chain.getState(); DateFormat df = new SimpleDateFormat(HTTPBackupAgent.Constants.DATE_FORMAT_RFC_1123); this.startedTime = df.format(chain.getStartedTime().getTime()); // no applicable this.finishedTime = ""; this.workspaceName = ""; } /** * ShortInfo constructor. * * @param type * int, the tupe of short info * @param chainLog * BackupChainLog, the backup chain log for completed backup. */ public ShortInfo(int type, BackupChainLog chainLog) { this.type = type; this.backupType = chainLog.getBackupConfig().getBackupType(); this.backupId = chainLog.getBackupId(); this.repositoryName = chainLog.getBackupConfig().getRepository(); this.workspaceName = chainLog.getBackupConfig().getWorkspace(); // do not use this.state = 0; DateFormat df = new SimpleDateFormat(HTTPBackupAgent.Constants.DATE_FORMAT_RFC_1123); this.startedTime = df.format(chainLog.getStartedTime().getTime()); this.finishedTime = df.format(chainLog.getFinishedTime().getTime());; } /** * ShortInfo constructor. * * @param type * int, the tupe of short info * @param chainLog * BackupChainLog, the backup chain log for completed backup. */ public ShortInfo(int type, RepositoryBackupChainLog chainLog) { this.type = type; this.backupType = chainLog.getBackupConfig().getBackupType(); this.backupId = chainLog.getBackupId(); this.repositoryName = chainLog.getBackupConfig().getRepository(); this.workspaceName = ""; // do not use this.state = 0; DateFormat df = new SimpleDateFormat(HTTPBackupAgent.Constants.DATE_FORMAT_RFC_1123); this.startedTime = df.format(chainLog.getStartedTime().getTime()); this.finishedTime = df.format(chainLog.getFinishedTime().getTime());; } /** * ShortInfo constructor. * * For restore. * * @param type * int, the tupe of short info * @param chainLog * BackupChainLog, the backup chain log for completed backup. * @param startedTime * Calendar, the stated time * @param finishedTime * Calendar, the finished time * @param state * int, the state of restore */ public ShortInfo(int type, BackupChainLog chainLog, Calendar startedTime, Calendar finishedTime, int state) { this.type = type; this.backupType = chainLog.getBackupConfig().getBackupType(); this.backupId = chainLog.getBackupId(); this.repositoryName = chainLog.getBackupConfig().getRepository(); this.workspaceName = chainLog.getBackupConfig().getWorkspace(); this.state = state; DateFormat df = new SimpleDateFormat(HTTPBackupAgent.Constants.DATE_FORMAT_RFC_1123); this.startedTime = df.format(startedTime.getTime()); if (finishedTime != null) this.finishedTime = df.format(finishedTime.getTime()); else this.finishedTime = ""; } /** * ShortInfo constructor. * * For restore. * * @param type * int, the type of short info * @param chainLog * RepositoryBackupChainLog, the backup chain log for completed backup. * @param startedTime * Calendar, the stated time * @param finishedTime * Calendar, the finished time * @param state * int, the state of restore */ public ShortInfo(int type, RepositoryBackupChainLog chainLog, Calendar startedTime, Calendar finishedTime, int state) { this.type = type; this.backupType = chainLog.getBackupConfig().getBackupType(); this.backupId = chainLog.getBackupId(); this.repositoryName = chainLog.getBackupConfig().getRepository(); this.state = state; DateFormat df = new SimpleDateFormat(HTTPBackupAgent.Constants.DATE_FORMAT_RFC_1123); this.startedTime = df.format(startedTime.getTime()); if (finishedTime != null) this.finishedTime = df.format(finishedTime.getTime()); else this.finishedTime = ""; } /** * ShortInfo constructor. * * For restore. * * @param type * int, the tupe of short info * @param chainLog * BackupChainLog, the backup chain log for completed backup. * @param startedTime * Calendar, the stated time * @param finishedTime * Calendar, the finished time * @param state * int, the state of restore * @param repositroryName * String, the repository name * @param workspaceName * String, the workspace name */ public ShortInfo(int type, BackupChainLog chainLog, Calendar startedTime, Calendar finishedTime, int state, String repositroryName, String workspaceName) { this(type, chainLog, startedTime, finishedTime, state); this.repositoryName = repositroryName; this.workspaceName = workspaceName; } /** * ShortInfo constructor. * * For restore. * * @param type * int, the tupe of short info * @param chainLog * BackupChainLog, the backup chain log for completed backup. * @param startedTime * Calendar, the stated time * @param finishedTime * Calendar, the finished time * @param state * int, the state of restore * @param repositroryName * String, the repository name */ public ShortInfo(int type, RepositoryBackupChainLog chainLog, Calendar startedTime, Calendar finishedTime, int state, String repositroryName) { this(type, chainLog, startedTime, finishedTime, state); this.repositoryName = repositroryName; // no applicable this.workspaceName = ""; } /** * getState. * * @return Integer the state of backup or restore */ public Integer getState() { return state; } /** * setState. * * @param state * Integer, the state of backup or restore */ public void setState(Integer state) { this.state = state; } /** * getBackupId. * * @return String return the backup identifier */ public String getBackupId() { return backupId; } /** * setBackupId. * * @param backupId * the backup identifier */ public void setBackupId(String backupId) { this.backupId = backupId; } /** * getRepositoryName. * * @return String return the repository name */ public String getRepositoryName() { return repositoryName; } /** * setRepositoryName. * * @param repositoryName * String, repository name */ public void setRepositoryName(String repositoryName) { this.repositoryName = repositoryName; } /** * getWorkspaceName. * * @return String return the workspace name */ public String getWorkspaceName() { return workspaceName; } /** * setWorkspaceName. * * @param workspaceName * String, the workspace name */ public void setWorkspaceName(String workspaceName) { this.workspaceName = workspaceName; } /** * getStartedTime. * * @return String return the started time of backup or restore */ public String getStartedTime() { return startedTime; } /** * setStartedTime. * * @param startedTime * String, the started time of backup or restore */ public void setStartedTime(String startedTime) { this.startedTime = startedTime; } /** * getFinishedTime. * * @return String return the finished time of backup or restore */ public String getFinishedTime() { return finishedTime; } /** * setFinishedTime. * * @param finishedTime * String, the finished time of backup or restore */ public void setFinishedTime(String finishedTime) { this.finishedTime = finishedTime; } /** * getType. * * @return Integer return the type of ShortInfo */ public Integer getType() { return type; } /** * setType. * * @param type * Integer, the type of ShortInfo */ public void setType(Integer type) { this.type = type; } /** * getBackupType. * * @return Integer return the backup type */ public Integer getBackupType() { return backupType; } /** * setBackupType. * * @param backupType * Integer, the backup type */ public void setBackupType(Integer backupType) { this.backupType = backupType; } }