Package com.morpheusdata.core
Interface MorpheusVirtualImageService
- All Superinterfaces:
MorpheusDataQueryService<VirtualImage>
,MorpheusDataService<VirtualImage,
,VirtualImageIdentityProjection> MorpheusIdentityService<VirtualImageIdentityProjection>
public interface MorpheusVirtualImageService
extends MorpheusDataService<VirtualImage,VirtualImageIdentityProjection>, MorpheusIdentityService<VirtualImageIdentityProjection>
Context methods for syncing VirtualImages in Morpheus
- Since:
- 0.8.0
-
Method Summary
Modifier and TypeMethodDescriptionio.reactivex.rxjava3.core.Single<VirtualImage>
create
(VirtualImage virtualImage, Cloud cloud) Create new VirtualImage in Morpheus NOTE: Any additions of VirtualImageLocations related to the VirtualImage should be performed via the VirtualImageLocationServiceio.reactivex.rxjava3.core.Single<Boolean>
create
(List<VirtualImage> virtualImages, Cloud cloud) Create new VirtualImages in Morpheus NOTE: Any additions of VirtualImageLocations related to the VirtualImage should be performed via the VirtualImageLocationServiceio.reactivex.rxjava3.core.Single<String>
getCloudFileStreamUrl
(VirtualImage virtualImage, com.bertramlabs.plugins.karman.CloudFile cloudFile, User createdBy, Cloud cloud) Get a one-off url for an image to upload to it to a cloudThe context for dealing with VirtualImageLocationsgetType()
The context for VirtualIMageTypeio.reactivex.rxjava3.core.Single<Collection<com.bertramlabs.plugins.karman.CloudFile>>
getVirtualImageFiles
(VirtualImage virtualImage) io.reactivex.rxjava3.core.Observable<VirtualImage>
listById
(Collection<Long> ids) Deprecated.io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection>
listIdentityProjections
(Long cloudId) Get a list of VirtualImage projections based on Cloud idio.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection>
listIdentityProjections
(Long accountId, ImageType[] imageTypes) Get a list of VirtualImage projections that matches one of the provided ImageTypes and either the account owns or the account can access due to the visibility setting on the VirtualImageio.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection>
listIdentityProjections
(String provisionTypeCode) Get a list of VirtualImage projections based on Provision Type Codeio.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection>
listIdentityProjectionsByCategory
(Long accountId, String[] categories) Deprecated.io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection>
listIdentityProjectionsByCloudAndCategory
(Long accountId, Long cloudId, String[] categories) Deprecated.io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection>
listSyncProjections
(Long cloudId) Deprecated.io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection>
listSyncProjections
(Long accountId, ImageType[] imageTypes) Deprecated.replaced by {listIdentityProjections(Long, ImageType[])
}io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection>
listSyncProjections
(String provisionTypeCode) Deprecated.replaced by {listIdentityProjections(String)
}io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection>
listSyncProjectionsByCategory
(Long accountId, String[] categories) Deprecated.replaced by {listIdentityProjectionsByCategory(Long, String[])
}io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection>
listSyncProjectionsByCloudAndCategory
(Long accountId, Long cloudId, String[] categories) Deprecated.io.reactivex.rxjava3.core.Single<Boolean>
remove
(List<VirtualImageIdentityProjection> virtualImages, Cloud cloud) Deprecated.io.reactivex.rxjava3.core.Single<Boolean>
save
(List<VirtualImage> virtualImages, Cloud cloud) Save updates to existing VirtualImages NOTE: Any additions or removals of VirtualImageLocations related to the VirtualImage should be performed via the VirtualImageLocationServiceMethods inherited from interface com.morpheusdata.core.MorpheusDataQueryService
count, find, get, list, list, listById, listOptions, listOptions, search
Methods inherited from interface com.morpheusdata.core.MorpheusDataService
bulkCreate, bulkRemove, bulkSave, create, create, remove, remove, save, save
Methods inherited from interface com.morpheusdata.core.MorpheusIdentityService
getIdentityProperties, listIdentityProjections
-
Method Details
-
getLocation
MorpheusVirtualImageLocationService getLocation()The context for dealing with VirtualImageLocations- Returns:
- MorpheusVirtualImageLocationService
-
getType
MorpheusVirtualImageTypeService getType()The context for VirtualIMageType -
listIdentityProjections
io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection> listIdentityProjections(Long cloudId) Get a list of VirtualImage projections based on Cloud id- Parameters:
cloudId
- Cloud id- Returns:
- Observable stream of sync projections
-
listIdentityProjections
io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection> listIdentityProjections(String provisionTypeCode) Get a list of VirtualImage projections based on Provision Type Code- Parameters:
provisionTypeCode
- Provision Type Code- Returns:
- Observable stream of sync projections
- Since:
- 0.11.0
-
listIdentityProjections
io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection> listIdentityProjections(Long accountId, ImageType[] imageTypes) Get a list of VirtualImage projections that matches one of the provided ImageTypes and either the account owns or the account can access due to the visibility setting on the VirtualImage- Parameters:
accountId
- Account IdimageTypes
- Array of ImageTypes- Returns:
- Observable stream of sync projections
-
listIdentityProjectionsByCategory
@Deprecated(since="0.15.4") io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection> listIdentityProjectionsByCategory(Long accountId, String[] categories) Deprecated.Get a list of VirtualImage projections that matches one of the provided categories and either the account owns or the account can access due to the visibility setting on the VirtualImage- Parameters:
accountId
- Account IDcategories
- Array of categories- Returns:
- Observable stream of sync projections
-
listIdentityProjectionsByCloudAndCategory
@Deprecated(since="0.15.4") io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection> listIdentityProjectionsByCloudAndCategory(Long accountId, Long cloudId, String[] categories) Deprecated.Get a list of VirtualImage projections that matches one of the provided categories and either the account owns or the account can access due to the visibility setting on the VirtualImage- Parameters:
accountId
- Account IDcloudId
- â Cloud IDcategories
- Array of categories- Returns:
- Observable stream of sync projections
-
listSyncProjections
@Deprecated io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection> listSyncProjections(Long cloudId) Deprecated.replaced by {listIdentityProjections(Long)
}Get a list of VirtualImage projections based on Cloud id- Parameters:
cloudId
- Cloud id- Returns:
- Observable stream of sync projections
-
listSyncProjections
@Deprecated io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection> listSyncProjections(String provisionTypeCode) Deprecated.replaced by {listIdentityProjections(String)
}Get a list of VirtualImage projections based on Provision Type Code- Parameters:
provisionTypeCode
- Provision Type Code- Returns:
- Observable stream of sync projections
- Since:
- 0.11.0
-
listSyncProjections
@Deprecated io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection> listSyncProjections(Long accountId, ImageType[] imageTypes) Deprecated.replaced by {listIdentityProjections(Long, ImageType[])
}Get a list of VirtualImage projections that matches one of the provided ImageTypes and either the account owns or the account can access due to the visibility setting on the VirtualImage- Parameters:
accountId
- Account IdimageTypes
- Array of ImageTypes- Returns:
- Observable stream of sync projections
-
listSyncProjectionsByCategory
@Deprecated io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection> listSyncProjectionsByCategory(Long accountId, String[] categories) Deprecated.replaced by {listIdentityProjectionsByCategory(Long, String[])
}Get a list of VirtualImage projections that matches one of the provided categories and either the account owns or the account can access due to the visibility setting on the VirtualImage- Parameters:
accountId
- Account IDcategories
- Array of categories- Returns:
- Observable stream of sync projections
-
listSyncProjectionsByCloudAndCategory
@Deprecated io.reactivex.rxjava3.core.Observable<VirtualImageIdentityProjection> listSyncProjectionsByCloudAndCategory(Long accountId, Long cloudId, String[] categories) Deprecated.Get a list of VirtualImage projections that matches one of the provided categories and either the account owns or the account can access due to the visibility setting on the VirtualImage- Parameters:
accountId
- Account IDcloudId
- â Cloud IDcategories
- Array of categories- Returns:
- Observable stream of sync projections
-
listById
@Deprecated(since="0.15.4") io.reactivex.rxjava3.core.Observable<VirtualImage> listById(Collection<Long> ids) Deprecated.Get a list of VirtualImage objects from a list of projection ids- Parameters:
ids
- VirtualImage ids- Returns:
- Observable stream of VirtualImages
-
save
Save updates to existing VirtualImages NOTE: Any additions or removals of VirtualImageLocations related to the VirtualImage should be performed via the VirtualImageLocationService- Parameters:
virtualImages
- updated VirtualImagescloud
- the Cloud instance- Returns:
- success
-
create
Create new VirtualImages in Morpheus NOTE: Any additions of VirtualImageLocations related to the VirtualImage should be performed via the VirtualImageLocationService- Parameters:
virtualImages
- new VirtualImages to persistcloud
- the Cloud instance- Returns:
- success
-
create
Create new VirtualImage in Morpheus NOTE: Any additions of VirtualImageLocations related to the VirtualImage should be performed via the VirtualImageLocationService- Parameters:
virtualImage
- new VirtualImage to persistcloud
- the Cloud instance- Returns:
- the VirtualImage
-
remove
@Deprecated(since="0.15.4") io.reactivex.rxjava3.core.Single<Boolean> remove(List<VirtualImageIdentityProjection> virtualImages, Cloud cloud) Deprecated.Remove persisted VirtualImages from Morpheus. Typically called during sync operations for the cloud to inform Morpheus that the VirtualImage no longer exists in the cloud- Parameters:
virtualImages
- Images to remove- Returns:
- success
-
getVirtualImageFiles
io.reactivex.rxjava3.core.Single<Collection<com.bertramlabs.plugins.karman.CloudFile>> getVirtualImageFiles(VirtualImage virtualImage) -
getCloudFileStreamUrl
io.reactivex.rxjava3.core.Single<String> getCloudFileStreamUrl(VirtualImage virtualImage, com.bertramlabs.plugins.karman.CloudFile cloudFile, User createdBy, Cloud cloud) Get a one-off url for an image to upload to it to a cloud- Parameters:
virtualImage
- the imagecloudFile
- the specific filecreatedBy
- the user associated with the workload or servercloud
- the Cloud instance- Returns:
- the url of the image file
- Since:
- 0.15.13
-
listIdentityProjections(Long)
}