Interface ProjectApi


@Consumes("application/json") @Path("/projects") public interface ProjectApi
Provides access to the Keystone Projects API.
  • Method Details

    • list

      @Named("projects:list") @GET List<Project> list()
    • get

      @Named("projects:get") @GET @Path("/{id}") Project get(@PathParam("id") String id)
    • create

      @Named("projects:create") @POST Project create(String name, @Nullable String description, boolean enabled, boolean isDomain, @Nullable String domainId, @Nullable String parentId)
    • update

      @Named("projects:update") @Path("/{id}") Project update(@PathParam("id") String id, Project project)
    • delete

      @Named("projects:delete") @DELETE @Path("/{id}") boolean delete(@PathParam("id") String id)
    • listTags

      @Named("projects:listTags") @GET @Path("/{projectId}/tags") Set<String> listTags(@PathParam("projectId") String projectId)
    • hasTag

      @Named("projects:hasTag") @HEAD @Path("/{projectId}/tags/{tag}") boolean hasTag(@PathParam("projectId") String projectId, @PathParam("tag") String tag)
    • addTag

      @Named("projects:addTag") @PUT @Path("/{projectId}/tags/{tag}") void addTag(@PathParam("projectId") String projectId, @PathParam("tag") String tag)
    • removeTag

      @Named("projects:removeTag") @DELETE @Path("/{projectId}/tags/{tag}") void removeTag(@PathParam("projectId") String projectId, @PathParam("tag") String tag)
    • setTags

      @Named("projects:setTags") @PUT @Path("/{projectId}/tags") void setTags(@PathParam("projectId") String projectId, Set<String> tags)
    • removeAllTags

      @Named("projects:removeTags") @DELETE @Path("/{projectId}/tags") void removeAllTags(@PathParam("projectId") String projectId)