Interface MorpheusStorageVolumeService

All Superinterfaces:
MorpheusDataQueryService<StorageVolume>, MorpheusDataService<StorageVolume,StorageVolumeIdentityProjection>, MorpheusIdentityService<StorageVolumeIdentityProjection>

Context methods for syncing StorageVolumes in Morpheus
Since:
0.13.0
  • Method Details

    • getStorageVolumeType

      MorpheusStorageVolumeTypeService getStorageVolumeType()
      Returns the StorageVolumeType Service
      Returns:
      An instance of the StorageVolumeType Service
    • listIdentityProjections

      io.reactivex.rxjava3.core.Observable<StorageVolumeIdentityProjection> listIdentityProjections(Long cloudId, String regionCode)
      Get a list of StorageVolume projections based on Cloud id
      Parameters:
      cloudId - Cloud id
      regionCode - the CloudRegion to optionally filter by
      Returns:
      Observable stream of sync projection
    • create

      io.reactivex.rxjava3.core.Single<Boolean> create(List<StorageVolume> storageVolumes, VirtualImageIdentityProjection virtualImage)
      Create persisted StorageVolumes in Morpheus and add them to the VirtualImage. Typically called during sync operations for the cloud
      Parameters:
      storageVolumes - volumes to add
      virtualImage - VirtualImageIdentityProjection to add the volumes to
      Returns:
      success
    • create

      io.reactivex.rxjava3.core.Single<Boolean> create(List<StorageVolume> storageVolumes, VirtualImageLocationIdentityProjection virtualImageLocation)
      Create persisted StorageVolumes in Morpheus and add them to the VirtualImageLocation. Typically called during sync operations for the cloud
      Parameters:
      storageVolumes - volumes to add
      virtualImageLocation - VirtualImageLocationIdentityProjection to add the volumes to
      Returns:
      success
    • create

      io.reactivex.rxjava3.core.Single<Boolean> create(List<StorageVolume> storageVolumes, ComputeServerIdentityProjection computeServer)
      Create persisted StorageVolumes in Morpheus and add them to the ComputeServer. Typically called during sync operations for the cloud.
      Parameters:
      storageVolumes - volumes to add
      computeServer - ComputeServerIdentityProjection to add the volumes to
      Returns:
      success
    • remove

      io.reactivex.rxjava3.core.Single<Boolean> remove(List<StorageVolumeIdentityProjection> storageVolumes, VirtualImageLocationIdentityProjection virtualImageLocation)
      Remove persisted StorageVolumes from Morpheus and remove them from the VirtualImageLocation. Typically called during sync operations for the cloud to inform Morpheus that the StorageVolume no longer exists in the cloud
      Parameters:
      storageVolumes - volumes to remove
      virtualImageLocation - VirtualImageLocationIdentityProjection to remove the volumes from
      Returns:
      success
    • remove

      io.reactivex.rxjava3.core.Single<Boolean> remove(List<StorageVolumeIdentityProjection> storageVolumes, ComputeServerIdentityProjection computeServer, Boolean force)
      Remove persisted StorageVolumes from Morpheus and remove them from the ComputeServer. Typically called during sync operations for the cloud to inform Morpheus that the StorageVolume no longer exists in the cloud
      Parameters:
      storageVolumes - volumes to remove
      computeServer - ComputeServerIdentityProjection to remove the volumes from
      force - Remove the StorageVolumes from the ComputeServer even if the status of the ComputeServer is 'resizing' (optional) defaults to false
      Returns:
      success
    • remove

      io.reactivex.rxjava3.core.Single<Boolean> remove(List<StorageVolumeIdentityProjection> storageVolumes, VirtualImageIdentityProjection virtualImage)
      Remove persisted StorageVolumes from Morpheus and remove them from the VirtualImage. Typically called during sync operations for the cloud to inform Morpheus that the StorageVolume no longer exists in the cloud
      Parameters:
      storageVolumes - volumes to remove
      virtualImage - VirtualImageIdentityProjection to remove the volumes from
      Returns:
      success