/** * */ package org.ovirt.engine.api.resource; import javax.ws.rs.Consumes; import javax.ws.rs.DELETE; import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.Response; import org.jboss.resteasy.annotations.providers.jaxb.Formatted; import org.ovirt.engine.api.model.GlusterVolume; import org.ovirt.engine.api.model.GlusterVolumes; /** * */ @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.APPLICATION_X_YAML }) public interface GlusterVolumesResource { @GET @Formatted public GlusterVolumes list(); /** * Creates a new GlusterVolume and adds it to the database. The GlusterVolume is created based on the properties of * * @volume. <p> * The GlusterVolume#name, GlusterVolume#templateId and GlusterVolume#clusterId properties are required. * @param volume * the GlusterVolume definition from which to create the new GlusterVolume * @return the new newly created GlusterVolume */ @POST @Formatted @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.APPLICATION_X_YAML }) public Response add(GlusterVolume volume); @DELETE @Path("{id}") public Response remove(@PathParam("id") String id); /** * Sub-resource locator method, returns individual GlusterVolumeResource on which the remainder of the URI is * dispatched. * * @param name * the GlusterVolume name * @return matching subresource if found */ @Path("{id}") public GlusterVolumeResource getGlusterVolumeSubResource(@PathParam("id") String id); }