Class MorpheusBackupProvider

All Implemented Interfaces:
BackupProviderInterface, PluginProvider

public class MorpheusBackupProvider extends AbstractBackupProvider
  • Constructor Details

    • MorpheusBackupProvider

      public MorpheusBackupProvider(Plugin plugin, MorpheusContext morpheusContext)
  • Method Details

    • getCode

      public String getCode()
      Description copied from interface: PluginProvider
      A unique shortcode used for referencing the provided provider. Make sure this is going to be unique as any data that is seeded or generated related to this provider will reference it by this code.
      Returns:
      short code string that should be unique across all other plugin implementations.
    • getName

      public String getName()
      Description copied from interface: PluginProvider
      Provides the provider name for reference when adding to the Morpheus Orchestrator NOTE: This may be useful to set as an i18n key for UI reference and localization support.
      Returns:
      either an English name of a Provider or an i18n based key that can be scanned for in a properties file.
    • getBackupJobProvider

      public BackupJobProvider getBackupJobProvider()
      Description copied from class: AbstractBackupProvider
      Get the BackupJobProvider responsible for all backup job operations in this backup provider The DefaultBackupJobProvider can be used if the provider would like morpheus to handle all job operations.
      Specified by:
      getBackupJobProvider in class AbstractBackupProvider
      Returns:
      the BackupJobProvider for this backup provider
    • getIcon

      public Icon getIcon()
      Description copied from interface: BackupProviderInterface
      Returns the integration logo for display when a user needs to view or add this integration
      Returns:
      Icon representation of assets stored in the src/assets of the project.
    • getOptionTypes

      public Collection<OptionType> getOptionTypes()
      Description copied from interface: BackupProviderInterface
      Get the list of option types for the backup provider. The option types are used for creating and updating an instance of the backup provider.
    • getBackupJobOptionTypes

      public Collection<OptionType> getBackupJobOptionTypes()
      Description copied from interface: BackupProviderInterface
      Get the list of backup job option types for the backup provider. The option types are used for creating and updating backup jobs.
    • getBackupOptionTypes

      public Collection<OptionType> getBackupOptionTypes()
      Description copied from interface: BackupProviderInterface
      Get the list of backup option types for the backup provider. The option types are used for creating and updating backups.
    • getReplicationGroupOptionTypes

      public Collection<OptionType> getReplicationGroupOptionTypes()
      Description copied from interface: BackupProviderInterface
      Get the list of replication group option types for the backup provider. The option types are used for creating and updating replication groups.
    • getReplicationOptionTypes

      public Collection<OptionType> getReplicationOptionTypes()
      Description copied from interface: BackupProviderInterface
      Get the list of replication option types for the backup provider. The option types are used for creating and updating replications.
    • getInstanceReplicationGroupOptionTypes

      public Collection<OptionType> getInstanceReplicationGroupOptionTypes()
      Description copied from interface: BackupProviderInterface
      Get the list of replication group option types for the backup provider. The option types are used for creating replications on an instance during provisioning.
    • deleteBackupProvider

      public ServiceResponse deleteBackupProvider(BackupProvider backupProviderModel, Map opts)
      Description copied from interface: BackupProviderInterface
      Delete the backup provider. Typically used to clean up any provider specific data that will not be cleaned up by the default remove in the core system.
      Parameters:
      backupProviderModel - the backup provider being removed
      opts - additional options
      Returns:
      a ServiceResponse object. A ServiceResponse with a false success will indicate a failed delete and will halt the process.
    • refresh

      public ServiceResponse refresh(BackupProvider backupProvider)
      Description copied from interface: BackupProviderInterface
      The main refresh method called periodically by Morpheus to sync any necessary objects from the integration. This can call sub services for better organization. It is recommended that SyncTask is used.

      When an unsuccessful services response is returned an alarm will be created with the value of either the ServiceResponse.error() or ServiceResponse.getMsg() value. When a successful response is returned any alarms on the provider will be cleared.

      Parameters:
      backupProvider - the current instance of the backupProvider being refreshed
      Returns:
      the success state of the refresh