Package org.jclouds.dynect.v3.features
Interface ZoneApi
public interface ZoneApi
-
Method Summary
Modifier and TypeMethodDescriptionDeletes the zone.deleteChanges
(String fqdn) Deletes changes to the specified zone that have been created during the current session but not yet published to the zone.freezes the specified zone.Retrieves information about the specified zone.com.google.common.collect.FluentIterable
<String> list()
Lists all zone ids.Publishes the current zonescheduleCreate
(CreatePrimaryZone createZone) Schedules addition of a new primary zone into the current session.scheduleCreateWithContact
(String fqdn, String contact) Schedules addition of a new primary zone with one hour default TTL andinvalid reference
SerialStyle#INCREMENT
thaws the specified zone.
-
Method Details
-
list
@Named("ListZones") @GET @Path("/Zone") com.google.common.collect.FluentIterable<String> list() throws DynECTExceptions.JobStillRunningExceptionLists all zone ids.- Throws:
DynECTExceptions.JobStillRunningException
- if a different job in the session is still running
-
scheduleCreate
@Named("CreatePrimaryZone") @POST @Path("/Zone/{fqdn}") @Consumes("application/json") Job scheduleCreate(@PathParam("fqdn") CreatePrimaryZone createZone) throws DynECTExceptions.JobStillRunningException, DynECTExceptions.TargetExistsException Schedules addition of a new primary zone into the current session. Callingpublish(String)
will publish the zone, creating the zone.- Parameters:
zone
- required parameters to create the zone.- Returns:
- job relating to the scheduled creation.
- Throws:
DynECTExceptions.JobStillRunningException
- if a different job in the session is still runningDynECTExceptions.TargetExistsException
- if the same fqdn exists
-
scheduleCreateWithContact
@Named("CreatePrimaryZone") @POST @Produces("application/json") @Path("/Zone/{fqdn}") @Consumes("application/json") Job scheduleCreateWithContact(@PathParam("fqdn") String fqdn, String contact) throws DynECTExceptions.JobStillRunningException, DynECTExceptions.TargetExistsException Schedules addition of a new primary zone with one hour default TTL andinvalid reference
SerialStyle#INCREMENT
publish(String)
will publish the zone, creating the zone.- Parameters:
fqdn
- fqdn of the zone to createcontact
- email address of the contact- Returns:
- job relating to the scheduled creation.
- Throws:
DynECTExceptions.JobStillRunningException
- if a different job in the session is still runningDynECTExceptions.TargetExistsException
- if the same fqdn exists
-
get
@Named("GetZone") @GET @Path("/Zone/{fqdn}") @Nullable Zone get(@PathParam("fqdn") String fqdn) throws DynECTExceptions.JobStillRunningException Retrieves information about the specified zone.- Parameters:
fqdn
- fqdn of the zone to get information about. exjclouds.org
- Returns:
- null if not found
- Throws:
DynECTExceptions.JobStillRunningException
- if a different job in the session is still running
-
delete
@Named("DeleteZone") @DELETE @Path("/Zone/{fqdn}") @Consumes("application/json") @Nullable Job delete(@PathParam("fqdn") String fqdn) throws DynECTExceptions.JobStillRunningException Deletes the zone. No need to call @link ZoneApi#publish(String)}.- Parameters:
fqdn
- zone to delete- Returns:
- job relating to the scheduled deletion or null, if the zone never existed.
- Throws:
DynECTExceptions.JobStillRunningException
- if a different job in the session is still running
-
deleteChanges
@Named("DeleteZoneChanges") @DELETE @Path("/ZoneChanges/{fqdn}") @Consumes("application/json") Job deleteChanges(@PathParam("fqdn") String fqdn) throws DynECTExceptions.JobStillRunningException Deletes changes to the specified zone that have been created during the current session but not yet published to the zone.- Parameters:
fqdn
- fqdn of the zone to delete changes from exjclouds.org
- Throws:
DynECTExceptions.JobStillRunningException
- if a different job in the session is still running
-
publish
@Named("PublishZone") @PUT @Path("/Zone/{fqdn}") @Produces("application/json") Zone publish(@PathParam("fqdn") String fqdn) throws DynECTExceptions.JobStillRunningException, ResourceNotFoundException Publishes the current zone- Parameters:
fqdn
- fqdn of the zone to publish. exjclouds.org
- Throws:
DynECTExceptions.JobStillRunningException
- if a different job in the session is still runningResourceNotFoundException
- if the zone doesn't exist
-
freeze
@Named("FreezeZone") @PUT @Path("/Zone/{fqdn}") @Produces("application/json") @Consumes("application/json") Job freeze(@PathParam("fqdn") String fqdn) throws DynECTExceptions.JobStillRunningException freezes the specified zone.- Parameters:
fqdn
- fqdn of the zone to freeze exjclouds.org
- Throws:
DynECTExceptions.JobStillRunningException
- if a different job in the session is still running
-
thaw
@Named("ThawZone") @PUT @Path("/Zone/{fqdn}") @Produces("application/json") @Consumes("application/json") Job thaw(@PathParam("fqdn") String fqdn) throws DynECTExceptions.JobStillRunningException thaws the specified zone.- Parameters:
fqdn
- fqdn of the zone to thaw exjclouds.org
- Throws:
DynECTExceptions.JobStillRunningException
- if a different job in the session is still running
-