Interface GroupService

    • Method Detail

      • read

        GroupTO read​(String key)
        Description copied from interface: AnyService
        Reads the any object matching the provided key.
        Specified by:
        read in interface AnyService<GroupTO>
        Parameters:
        key - if value looks like a UUID then it is interpreted as key, otherwise as a (user)name
        Returns:
        any object with matching key
      • search

        PagedResult<GroupTO> search​(AnyQuery anyQuery)
        Description copied from interface: AnyService
        Returns a paged list of any objects matching the given query.
        Specified by:
        search in interface AnyService<GroupTO>
        Parameters:
        anyQuery - query conditions
        Returns:
        paged list of any objects matching the given query
      • create

        @POST
        @Produces({"application/json","application/yaml","application/xml"})
        @Consumes({"application/json","application/yaml","application/xml"})
        javax.ws.rs.core.Response create​(@NotNull
                                         @NotNull GroupCR createReq)
        Creates a new group.
        Parameters:
        createReq - group create request
        Returns:
        Response object featuring Location header of created group as well as the any object itself enriched with propagation status information
      • update

        @PATCH
        @Path("{key}")
        @Produces({"application/json","application/yaml","application/xml"})
        @Consumes({"application/json","application/yaml","application/xml"})
        javax.ws.rs.core.Response update​(@NotNull
                                         @NotNull GroupUR updateReq)
        Updates group matching the provided key.
        Parameters:
        updateReq - modification to be applied to group matching the provided key
        Returns:
        Response object featuring the updated group enriched with propagation status information
      • own

        @GET
        @Path("own")
        @Produces({"application/json","application/yaml","application/xml"})
        List<GroupTO> own()
        This method allows a user to read his own groups.
        Returns:
        own groups
      • provisionMembers

        @POST
        @Path("{key}/members/{action}")
        @Produces({"application/json","application/yaml","application/xml"})
        ExecTO provisionMembers​(@NotNull @PathParam("key")
                                @NotNull String key,
                                @NotNull @PathParam("action")
                                @NotNull ProvisionAction action)
        (De)provision all members of the given group from / onto all the resources associated to it.
        Parameters:
        key - group key
        action - action type to perform on all group members
        Returns:
        execution report for the task generated on purpose