Interface BackupRestoreService

  • All Known Implementing Classes:
    DefaultBackupRestoreService

    @ExperimentalApi
    public interface BackupRestoreService
    Service responsible for accepting backup/restore operations.
    Since:
    8.2.0
    • Method Detail

      • createSpaceBackupJob

        SpaceBackupJobDetails createSpaceBackupJob​(SpaceBackupSettings settings)
        Creates 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.
        Parameters:
        settings - space backup settings
        Returns:
        space backup job details
        Throws:
        PermissionException - if user doesn't have permission to create space backups
        ConflictException - if backup with the same spaces selected is already in PROGRESS or QUEUED
        BadRequestException - if no spaceId provided
      • createSiteBackupJob

        SiteBackupJobDetails createSiteBackupJob​(SiteBackupSettings settings)
        Starts 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.
        Parameters:
        settings - site backup settings
        Returns:
        site backup job details
        Throws:
        PermissionException - if user doesn't have permission to create site backups
        ConflictException - if another site operation (BACKUP or RESTORE) is in progress
        BadRequestException - if invalid settings provided
      • createSpaceRestoreJob

        SpaceRestoreJobDetails createSpaceRestoreJob​(SpaceRestoreSettings settings)
        Creates 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.
        Parameters:
        settings - space restore settings
        Returns:
        space restore job details
        Throws:
        PermissionException - if user doesn't have permission to restore space
        BadRequestException - if invalid filename provided
      • createSiteRestoreJob

        SiteRestoreJobDetails createSiteRestoreJob​(SiteRestoreSettings settings)
        Starts 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.
        Parameters:
        settings - site restore settings
        Returns:
        site restore job details
        Throws:
        PermissionException - if user doesn't have permission to restore site
        ConflictException - if another site operation (BACKUP or RESTORE) is in progress
        BadRequestException - if invalid filename provided
      • getJob

        JobDetails getJob​(long jobId)
        Get job by id. The user should be a sysadmin or an owner of the job
        Parameters:
        jobId - id of the backup/restore job
        Returns:
        job details
        Throws:
        NotFoundException - if job not found or user doesn't have permission to see it
      • findJobs

        List<JobDetails> findJobs​(JobFilter filter,
                                  int limit)
        Gets backup/restore jobs based on the filter provided.
        Parameters:
        filter - job filter
        limit - amount of jobs that should be returned
        Returns:
        List of backup/restore jobs visible to user based on the filter provided.
      • cancelJob

        JobDetails cancelJob​(long jobId)
        Cancels 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.
        Parameters:
        jobId - id of the backup/restore job
        Returns:
        details of cancelled job
        Throws:
        NotFoundException - if job not found or user doesn't have permission to cancel it
      • cancelAllQueuedJobs

        int cancelAllQueuedJobs()
        Cancels all queued jobs. Does not affect jobs that are being processed at the moment.
        Returns:
        number of cancelled jobs
        Throws:
        PermissionException - if user doesn't have permission to cancel jobs