Package org.jclouds.ultradns.ws.features
Interface DirectionalPoolApi
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description StringaddFirstRecordInNonConfiguredGroup(String poolId, DirectionalPoolRecord toCreate)creates a resource record in the pool, creating and assigning it to the special "non configured group".StringaddRecordIntoExistingGroup(String poolId, DirectionalPoolRecord toCreate, String groupId)creates a resource record in the pool.StringaddRecordIntoNewGroup(String poolId, DirectionalPoolRecord toCreate, DirectionalGroup group)creates a resource record in the pool.StringcreateForDNameAndType(String name, String dname, int rrType)creates a directional pool forAandCNAME(ipv4) recordsvoiddelete(String id)removes a pool and all its recordsvoiddeleteRecord(String id)deletes a specific directional pool recordcom.google.common.collect.FluentIterable<DirectionalPool>list()Returns all directional pools in the zone.com.google.common.collect.FluentIterable<DirectionalPoolRecordDetail>listRecordsByDNameAndType(String dname, int rrType)Returns all the directional pool records in the zone with the fully qualifiedhostNameandrrTypevoidupdateRecord(String recordId, DirectionalPoolRecord update)updates such as ttl or rdata for an existing directional record.voidupdateRecordAndGroup(String recordId, DirectionalPoolRecord update, DirectionalGroup group)updates the geo groups of an existing directional record.
-
-
-
Method Detail
-
list
@Named("getDirectionalPoolsOfZone") @POST com.google.common.collect.FluentIterable<DirectionalPool> list() throws ResourceNotFoundExceptionReturns all directional pools in the zone.- Throws:
ResourceNotFoundException- if the zone doesn't exist
-
listRecordsByDNameAndType
@Named("getDirectionalDNSRecordsForHost") @POST com.google.common.collect.FluentIterable<DirectionalPoolRecordDetail> listRecordsByDNameAndType(String dname, int rrType) throws ResourceNotFoundExceptionReturns all the directional pool records in the zone with the fully qualifiedhostNameandrrType- Parameters:
dname- fully qualified hostname including the trailing dot.rrType-typevalue of the existing records.- Returns:
- empty if there are not pools for the specified host or no records exist for the type.
- Throws:
ResourceNotFoundException- if the zone doesn't exist- See Also:
RecordType#getCode()
-
createForDNameAndType
@Named("addDirectionalPool") @POST String createForDNameAndType(String name, String dname, int rrType) throws UltraDNSWSExceptions.ResourceAlreadyExistsExceptioncreates a directional pool forAandCNAME(ipv4) records- Parameters:
name-descriptionof the Geo pooldname-dnameof the Geo pool {ex. www.jclouds.org.}rrType-typevalue for the records added to this pool..- Returns:
- the
idof the new pool - Throws:
UltraDNSWSExceptions.ResourceAlreadyExistsException- if a pool already exists with the same attrs
-
addRecordIntoNewGroup
@Named("addDirectionalPoolRecord") @POST String addRecordIntoNewGroup(String poolId, DirectionalPoolRecord toCreate, DirectionalGroup group) throws UltraDNSWSExceptions.ResourceAlreadyExistsExceptioncreates a resource record in the pool.- Parameters:
poolId- pool to create the record in.toCreate- the new record to create.group- geo groups associated. Use theUltraDNSWSApi#getRegionsByIdAndName()to obtain the regionName and territoryNames. To specify all of a region’s territories, useDirectionalGroup.Builder.mapRegion(String)- Returns:
- the
idof the new record - Throws:
UltraDNSWSExceptions.ResourceAlreadyExistsException- if a record already exists with the same attrs
-
addRecordIntoExistingGroup
@Named("addDirectionalPoolRecord") @POST String addRecordIntoExistingGroup(String poolId, DirectionalPoolRecord toCreate, String groupId) throws UltraDNSWSExceptions.ResourceAlreadyExistsExceptioncreates a resource record in the pool.- Parameters:
poolId- pool to create the record in.toCreate- the new record to create.groupId- existing group from another record of the same dname and type. For exampleDirectionalPoolRecordDetail.getGeolocationGroup()orDirectionalPoolRecordDetail.getGroup().- Returns:
- the
idof the new record - Throws:
UltraDNSWSExceptions.ResourceAlreadyExistsException- if a record already exists with the same attrs
-
addFirstRecordInNonConfiguredGroup
@Named("addDirectionalPoolRecord") @POST String addFirstRecordInNonConfiguredGroup(String poolId, DirectionalPoolRecord toCreate) throws UltraDNSWSExceptions.ResourceAlreadyExistsExceptioncreates a resource record in the pool, creating and assigning it to the special "non configured group".- Parameters:
poolId- pool to create the record in.toCreate- the new record to create.- Returns:
- the
idof the new record - Throws:
UltraDNSWSExceptions.ResourceAlreadyExistsException- if a record already exists with the same attrs
-
updateRecord
@Named("updateDirectionalPoolRecord") @POST void updateRecord(String recordId, DirectionalPoolRecord update) throws ResourceNotFoundExceptionupdates such as ttl or rdata for an existing directional record.- Parameters:
recordId- id of the record to updateupdate- the updated record.- Throws:
ResourceNotFoundException- if the record doesn't exist
-
updateRecordAndGroup
@Named("updateDirectionalPoolRecord") @POST void updateRecordAndGroup(String recordId, DirectionalPoolRecord update, DirectionalGroup group) throws ResourceNotFoundException, UltraDNSWSExceptions.DirectionalGroupOverlapExceptionupdates the geo groups of an existing directional record.- Parameters:
recordId- id of the record to updateupdate- the updated record.group- geo groups associated.- Throws:
ResourceNotFoundException- if the record doesn't existUltraDNSWSExceptions.DirectionalGroupOverlapException- if there's an overlap with another record in the pool. (ex. have the same territories)
-
deleteRecord
@Named("deleteResourceRecord") @POST void deleteRecord(String id)deletes a specific directional pool record- Parameters:
id- theidof the record.
-
-