org.jclouds.ultradns.ws.features
Interface TrafficControllerPoolApi


public interface TrafficControllerPoolApi

See Also:
,

Method Summary
 String addRecordToPoolWithTTL(String rdata, String lbPoolID, int ttl)
          adds a new record to the pool with default weight.
 String addRecordToPoolWithTTLAndWeight(String rdata, String lbPoolID, int ttl, int weight)
          adds a new record to the pool with a specified weight.
 String createForDNameAndType(String name, String dname, int rrType)
          creates a traffic controller pool.
 void delete(String id)
          removes a pool and all its records and probes
 void deleteRecord(String poolRecordID)
          deletes a specific pooled resource record
 String getNameByDName(String dname)
          Retrieves the name of the specified pool by dname.
 PoolRecordSpec getRecordSpec(String poolRecordID)
           
 com.google.common.collect.FluentIterable<TrafficControllerPool> list()
          Returns all traffic controller pools in the zone.
 com.google.common.collect.FluentIterable<TrafficControllerPoolRecordDetail> listRecords(String poolId)
          Returns all records in the traffic controller pool.
 void updateRecord(String poolRecordID, UpdatePoolRecord update)
          This request updates an existing pool record.
 

Method Detail

createForDNameAndType

@Named(value="addTCLBPool")
String createForDNameAndType(String name,
                                   String dname,
                                   int rrType)
                             throws UltraDNSWSExceptions.ResourceAlreadyExistsException
creates a traffic controller pool.

Parameters:
name - name of the TC pool
dname - dname of the TC pool {ex. www.jclouds.org.}
rrType - the record type supported.
Returns:
the guid of the new record
Throws:
UltraDNSWSExceptions.ResourceAlreadyExistsException - if a pool already exists with the same attrs

list

@Named(value="getLoadBalancingPoolsByZone")
com.google.common.collect.FluentIterable<TrafficControllerPool> list()
                                                                     throws org.jclouds.rest.ResourceNotFoundException
Returns all traffic controller pools in the zone.

Throws:
org.jclouds.rest.ResourceNotFoundException - if the zone doesn't exist

listRecords

@Named(value="getPoolRecords")
com.google.common.collect.FluentIterable<TrafficControllerPoolRecordDetail> listRecords(String poolId)
                                                                                        throws org.jclouds.rest.ResourceNotFoundException
Returns all records in the traffic controller pool.

Throws:
org.jclouds.rest.ResourceNotFoundException - if the pool doesn't exist

getNameByDName

@Nullable
@Named(value="getPoolForPoolHostName>")
String getNameByDName(String dname)
Retrieves the name of the specified pool by dname.

Parameters:
dname - TrafficControllerPool.getDName() ex. jclouds.org.
Returns:
null if not found

delete

@Named(value="deleteLBPool")
void delete(String id)
removes a pool and all its records and probes

Parameters:
id - the id

addRecordToPoolWithTTL

@Named(value="addPoolRecord")
String addRecordToPoolWithTTL(String rdata,
                                    String lbPoolID,
                                    int ttl)
                              throws UltraDNSWSExceptions.ResourceAlreadyExistsException
adds a new record to the pool with default weight.

Parameters:
rdata - the ipv4 address or hostname
lbPoolID - the pool to add the record to.
ttl - the ttl of the record
Returns:
the id of the new record
Throws:
UltraDNSWSExceptions.ResourceAlreadyExistsException - if a record already exists with the same attrs

addRecordToPoolWithTTLAndWeight

@Named(value="addPoolRecord")
String addRecordToPoolWithTTLAndWeight(String rdata,
                                             String lbPoolID,
                                             int ttl,
                                             int weight)
                                       throws UltraDNSWSExceptions.ResourceAlreadyExistsException
adds a new record to the pool with a specified weight.

Parameters:
rdata - the ipv4 address or hostname
lbPoolID - the pool to add the record to.
ttl - the ttl of the record
weight - the weight of the record
Returns:
the id of the new record
Throws:
UltraDNSWSExceptions.ResourceAlreadyExistsException - if a record already exists with the same attrs

getRecordSpec

@Named(value="getPoolRecordSpec>")
@Nullable
PoolRecordSpec getRecordSpec(String poolRecordID)
Parameters:
poolRecordID - TrafficControllerPoolRecordDetail.getId()
Returns:
null if not found

updateRecord

@Named(value="updatePoolRecord>")
void updateRecord(String poolRecordID,
                        UpdatePoolRecord update)
                  throws org.jclouds.rest.ResourceNotFoundException
This request updates an existing pool record.

Parameters:
poolRecordID - TrafficControllerPoolRecordDetail.getId()
update - what to update, usually primed via UpdatePoolRecord.pointingTo(PoolRecordSpec, String) or UpdatePoolRecord.Builder.from(PoolRecordSpec)
Throws:
org.jclouds.rest.ResourceNotFoundException - if the record doesn't exist

deleteRecord

@Named(value="deletePoolRecord")
void deleteRecord(String poolRecordID)
deletes a specific pooled resource record

Parameters:
poolRecordID - TrafficControllerPoolRecord#getId()


Copyright © 2009-2014 The Apache Software Foundation. All Rights Reserved.