Class DefaultBackupRestoreService
- java.lang.Object
-
- com.atlassian.confluence.impl.backuprestore.DefaultBackupRestoreService
-
- All Implemented Interfaces:
BackupRestoreService
public class DefaultBackupRestoreService extends Object implements BackupRestoreService
Service responsible for accepting backup/restore operations.- Since:
- 8.2.0
-
-
Constructor Summary
Constructors Constructor Description DefaultBackupRestoreService(BackupRestoreManager manager, BackupRestoreJobConverter jobConverter, BackupRestoreFilesystemManager backupRestoreFilesystemManager, com.atlassian.event.api.EventPublisher eventPublisher)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intcancelAllQueuedJobs()Cancels all queued jobs.JobDetailscancelJob(long jobId)Cancels the job.SiteBackupJobDetailscreateSiteBackupJob(SiteBackupSettings settings)Starts the new site backup job if possible.SiteRestoreJobDetailscreateSiteRestoreJob(SiteRestoreSettings settings)Starts the new site restore job if possible.SiteRestoreJobDetailscreateSiteRestoreJob(SiteRestoreSettings settings, InputStream inputStream)Starts the new site restore (from uploaded file) job if possible.SpaceBackupJobDetailscreateSpaceBackupJob(SpaceBackupSettings settings)Creates new space backup job and adds it to the queue.SpaceRestoreJobDetailscreateSpaceRestoreJob(SpaceRestoreSettings settings)Creates new space restore job and adds it to the queue.SpaceRestoreJobDetailscreateSpaceRestoreJob(SpaceRestoreSettings settings, InputStream inputStream)Creates new space restore (from uploaded file) job and adds it to the queue.List<JobDetails>findJobs(JobFilter filter)Gets backup/restore jobs based on the filter provided.FilegetBackupFile(Long jobId)Download backup file.List<FileInfo>getFiles(JobScope jobScope)Gets information of files stored in /restore/(jobScope)JobDetailsgetJob(long jobId)Get job by id.
-
-
-
Constructor Detail
-
DefaultBackupRestoreService
public DefaultBackupRestoreService(BackupRestoreManager manager, BackupRestoreJobConverter jobConverter, BackupRestoreFilesystemManager backupRestoreFilesystemManager, com.atlassian.event.api.EventPublisher eventPublisher)
-
-
Method Detail
-
createSpaceBackupJob
public SpaceBackupJobDetails createSpaceBackupJob(SpaceBackupSettings settings)
Description copied from interface:BackupRestoreServiceCreates new space backup job and adds it to the queue. Supports either single-space backup or multi-space backups (depends on how many space ids are provided). Throws an exception if the operation is not permitted. The user should have Space Export permissions to all the spaces passed for backup (or be a sysadmin) to be able to perform this operation.- Specified by:
createSpaceBackupJobin interfaceBackupRestoreService- Parameters:
settings- space backup settings- Returns:
- space backup job details
-
createSiteBackupJob
public SiteBackupJobDetails createSiteBackupJob(SiteBackupSettings settings)
Description copied from interface:BackupRestoreServiceStarts the new site backup job if possible. If another site backup/restore job is in progress, the operation will be rejected because the existing site backup must be either cancelled or finished first. Throws an exception if the operation is not permitted. The user should be a sysadmin to be able to perform this operation.- Specified by:
createSiteBackupJobin interfaceBackupRestoreService- Parameters:
settings- site backup settings- Returns:
- site backup job details
-
createSpaceRestoreJob
public SpaceRestoreJobDetails createSpaceRestoreJob(SpaceRestoreSettings settings)
Description copied from interface:BackupRestoreServiceCreates new space restore job and adds it to the queue. Throws an exception if the operation is not permitted. The user should be a sysadmin to be able to perform this operation.- Specified by:
createSpaceRestoreJobin interfaceBackupRestoreService- Parameters:
settings- space restore settings- Returns:
- space restore job details
-
createSiteRestoreJob
public SiteRestoreJobDetails createSiteRestoreJob(SiteRestoreSettings settings)
Description copied from interface:BackupRestoreServiceStarts the new site restore job if possible. If another site backup/restore job is in progress, the operation will be rejected because the existing site backup must be either cancelled or finished first. Throws an exception if the operation is not permitted. The user should be a sysadmin to be able to perform this operation.- Specified by:
createSiteRestoreJobin interfaceBackupRestoreService- Parameters:
settings- site restore settings- Returns:
- site restore job details
-
createSpaceRestoreJob
public SpaceRestoreJobDetails createSpaceRestoreJob(SpaceRestoreSettings settings, InputStream inputStream)
Description copied from interface:BackupRestoreServiceCreates new space restore (from uploaded file) job and adds it to the queue. Throws an exception if the operation is not permitted. The user should be a sysadmin to be able to perform this operation.- Specified by:
createSpaceRestoreJobin interfaceBackupRestoreService- Parameters:
settings- space restore settingsinputStream- Input Stream ( File contents)- Returns:
- space restore job details
-
createSiteRestoreJob
public SiteRestoreJobDetails createSiteRestoreJob(SiteRestoreSettings settings, InputStream inputStream)
Description copied from interface:BackupRestoreServiceStarts the new site restore (from uploaded file) job if possible. If another site backup/restore job is in progress, the operation will be rejected because the existing site backup must be either cancelled or finished first. Throws an exception if the operation is not permitted. The user should be a sysadmin to be able to perform this operation.- Specified by:
createSiteRestoreJobin interfaceBackupRestoreService- Parameters:
settings- site restore settingsinputStream- Input Stream ( File contents)- Returns:
- site restore job details
-
getJob
public JobDetails getJob(long jobId)
Description copied from interface:BackupRestoreServiceGet job by id. The user should be a sysadmin or an owner of the job- Specified by:
getJobin interfaceBackupRestoreService- Parameters:
jobId- id of the backup/restore job- Returns:
- job details
-
findJobs
public List<JobDetails> findJobs(JobFilter filter)
Description copied from interface:BackupRestoreServiceGets backup/restore jobs based on the filter provided.- Specified by:
findJobsin interfaceBackupRestoreService- Parameters:
filter- job filter- Returns:
- List of backup/restore jobs visible to user based on the filter provided.
-
cancelJob
public JobDetails cancelJob(long jobId)
Description copied from interface:BackupRestoreServiceCancels the job. If the job is already cancelled or failed, the method will do nothing. Throws an exception if the operation is not permitted. The user should be a sysadmin or an owner of this job to be able to perform this operation.- Specified by:
cancelJobin interfaceBackupRestoreService- Parameters:
jobId- id of the backup/restore job- Returns:
- details of cancelled job
-
getFiles
public List<FileInfo> getFiles(JobScope jobScope)
Description copied from interface:BackupRestoreServiceGets information of files stored in /restore/(jobScope)- Specified by:
getFilesin interfaceBackupRestoreService- Parameters:
jobScope- SITE or SPACE, the scope to get files from- Returns:
- List of file information of files in the directory storing the jobScope's restore files.
-
cancelAllQueuedJobs
public int cancelAllQueuedJobs()
Description copied from interface:BackupRestoreServiceCancels all queued jobs. Does not affect jobs that are being processed at the moment.- Specified by:
cancelAllQueuedJobsin interfaceBackupRestoreService- Returns:
- number of cancelled jobs
-
getBackupFile
public File getBackupFile(Long jobId) throws NotFoundException
Description copied from interface:BackupRestoreServiceDownload backup file. Throws an exception if the operation is not permitted or the file is missing in the confluence-home/temp directory. The user should be a sysadmin or have permissions to back up all spaces for this job.- Specified by:
getBackupFilein interfaceBackupRestoreService- Parameters:
jobId- id of the backup job- Returns:
- backup file
- Throws:
NotFoundException- if job cannot be found, lack permissions or the backup file does not exist in confluence-home/temp directory
-
-