Package com.morpheusdata.core
Interface MorpheusSecurityGroupLocationService
- All Superinterfaces:
MorpheusDataQueryService<SecurityGroupLocation>
,MorpheusDataService<SecurityGroupLocation,
,SecurityGroupLocationIdentityProjection> MorpheusIdentityService<SecurityGroupLocationIdentityProjection>
public interface MorpheusSecurityGroupLocationService
extends MorpheusDataService<SecurityGroupLocation,SecurityGroupLocationIdentityProjection>, MorpheusIdentityService<SecurityGroupLocationIdentityProjection>
Context methods for syncing SecurityGroupLocations in Morpheus
-
Method Summary
Modifier and TypeMethodDescriptionio.reactivex.rxjava3.core.Single<Boolean>
create
(List<SecurityGroupLocation> securityGroupLocations) Deprecated.io.reactivex.rxjava3.core.Observable<SecurityGroupLocation>
Fetch the SecurityGroups given a list of idsio.reactivex.rxjava3.core.Observable<SecurityGroupLocationIdentityProjection>
listIdentityProjections
(Long cloudId, Long cloudPoolId, String category) Get a list of SecurityGroupLocation projections based on the Cloud associated with the SecurityGroupLocationio.reactivex.rxjava3.core.Observable<SecurityGroupLocationIdentityProjection>
listIdentityProjections
(String refType, Long refId) Get a list of SecurityGroupLocation projections based on the refId and refType associated with the SecurityGroupLocationio.reactivex.rxjava3.core.Observable<SecurityGroupLocationIdentityProjection>
listSyncProjections
(Long cloudId, Long cloudPoolId, String category) Deprecated.replaced by {listIdentityProjections(Long, Long, String)
}io.reactivex.rxjava3.core.Observable<SecurityGroupLocationIdentityProjection>
listSyncProjections
(String refType, Long refId) Deprecated.replaced by {listIdentityProjections(String, Long)
}io.reactivex.rxjava3.core.Single<Boolean>
removeSecurityGroupLocations
(List<SecurityGroupLocationIdentityProjection> securityGroupLocations) Deprecated.io.reactivex.rxjava3.core.Single<Boolean>
save
(List<SecurityGroupLocation> securityGroupLocations) Deprecated.useMorpheusDataService.bulkSave(java.util.List<M>)
insteadio.reactivex.rxjava3.core.Single<Boolean>
syncAssociations
(ComputeServerIdentityProjection server, List<SecurityGroupLocationIdentityProjection> securityGroupLocations) Adds, removes, and updates associations between SecurityGroups and SecurityGroupLocationsio.reactivex.rxjava3.core.Single<Boolean>
syncRules
(SecurityGroupLocation securityGroupLocation, List<SecurityGroupRuleLocation> rules) Adds, removes, and updates SecurityGroupRules and SecurityGroupRuleLocations for the SecurityGroup associated with the SecurityGroupLocationMethods 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, remove, remove, save
Methods inherited from interface com.morpheusdata.core.MorpheusIdentityService
getIdentityProperties, listIdentityProjections
-
Method Details
-
listIdentityProjections
io.reactivex.rxjava3.core.Observable<SecurityGroupLocationIdentityProjection> listIdentityProjections(Long cloudId, Long cloudPoolId, String category) Get a list of SecurityGroupLocation projections based on the Cloud associated with the SecurityGroupLocation- Parameters:
cloudId
- the id of the CloudcloudPoolId
- (optional) id of theCloudPool
that the associated SecurityGroupLocation must be associated with via matching the 'category' with the ComputeZonePool's externalIdcategory
- (optional) category name that the SecurityGroupLocation must have- Returns:
- Observable stream of sync projection
-
listIdentityProjections
io.reactivex.rxjava3.core.Observable<SecurityGroupLocationIdentityProjection> listIdentityProjections(String refType, Long refId) Get a list of SecurityGroupLocation projections based on the refId and refType associated with the SecurityGroupLocation- Parameters:
refType
- the refType to match on. Typically 'ComputeZone' for Cloud related tagsrefId
- the refId to match on. Typically the id of the Cloud for Cloud related tags- Returns:
- Observable stream of sync projection
-
listSyncProjections
@Deprecated io.reactivex.rxjava3.core.Observable<SecurityGroupLocationIdentityProjection> listSyncProjections(Long cloudId, Long cloudPoolId, String category) Deprecated.replaced by {listIdentityProjections(Long, Long, String)
}Get a list of SecurityGroupLocation projections based on the Cloud associated with the SecurityGroupLocation- Parameters:
cloudId
- the id of the CloudcloudPoolId
- (optional) id of theCloudPool
that the associated SecurityGroupLocation must be associated with via matching the 'category' with the ComputeZonePool's externalIdcategory
- (optional) category name that the SecurityGroupLocation must have- Returns:
- Observable stream of sync projection
-
listSyncProjections
@Deprecated io.reactivex.rxjava3.core.Observable<SecurityGroupLocationIdentityProjection> listSyncProjections(String refType, Long refId) Deprecated.replaced by {listIdentityProjections(String, Long)
}Get a list of SecurityGroupLocation projections based on the refId and refType associated with the SecurityGroupLocation- Parameters:
refType
- the refType to match on. Typically 'ComputeZone' for Cloud related tagsrefId
- the refId to match on. Typically the id of the Cloud for Cloud related tags- Returns:
- Observable stream of sync projection
-
listByIds
Fetch the SecurityGroups given a list of ids- Parameters:
ids
- list of ids- Returns:
- Observable list of SecurityGroups
-
save
@Deprecated(since="0.15.4") io.reactivex.rxjava3.core.Single<Boolean> save(List<SecurityGroupLocation> securityGroupLocations) Deprecated.useMorpheusDataService.bulkSave(java.util.List<M>)
insteadSave updates to existing SecurityGroupLocations- Specified by:
save
in interfaceMorpheusDataService<SecurityGroupLocation,
SecurityGroupLocationIdentityProjection> - Parameters:
securityGroupLocations
- SecurityGroupLocations to update- Returns:
- whether the save was successful
- See Also:
-
create
@Deprecated(since="0.15.4") io.reactivex.rxjava3.core.Single<Boolean> create(List<SecurityGroupLocation> securityGroupLocations) Deprecated.Create new SecurityGroupLocations in Morpheus. If securityGroup is not specified, then the hash is used to locate an existing SecurityGroup in Morpheus and it will then be associated with this SecurityGroupLocation. If the parent SecurityGroup is still not found, a new one will be created- Specified by:
create
in interfaceMorpheusDataService<SecurityGroupLocation,
SecurityGroupLocationIdentityProjection> - Parameters:
securityGroupLocations
- new SecurityGroupLocations to persist- Returns:
- success
- See Also:
-
syncRules
io.reactivex.rxjava3.core.Single<Boolean> syncRules(SecurityGroupLocation securityGroupLocation, List<SecurityGroupRuleLocation> rules) Adds, removes, and updates SecurityGroupRules and SecurityGroupRuleLocations for the SecurityGroup associated with the SecurityGroupLocation- Parameters:
securityGroupLocation
- the SecurityGroupLocation for which to sync the rulesrules
- the list of SecurityGroupRuleLocations which represent the desired state- Returns:
- whether the sync was successful
-
syncAssociations
io.reactivex.rxjava3.core.Single<Boolean> syncAssociations(ComputeServerIdentityProjection server, List<SecurityGroupLocationIdentityProjection> securityGroupLocations) Adds, removes, and updates associations between SecurityGroups and SecurityGroupLocations- Parameters:
securityGroupLocations
- the list of SecurityGroupLocations for which to sync the SecurityGroup associationsserver
- the ComputeServer for which to sync the securityGroupLocations- Returns:
- whether the sync was successful
-
removeSecurityGroupLocations
@Deprecated(since="0.15.4") io.reactivex.rxjava3.core.Single<Boolean> removeSecurityGroupLocations(List<SecurityGroupLocationIdentityProjection> securityGroupLocations) Deprecated.Remove SecurityGroupLocations from Morpheus- Parameters:
securityGroupLocations
- SecurityGroupLocations to remove- Returns:
- whether the removal was successful
-
MorpheusDataService.bulkCreate(java.util.List<M>)
instead