Interface UserService

All Superinterfaces:
AnyService<UserTO>, JAXRSService
All Known Implementing Classes:
UserServiceImpl

@Path("users") public interface UserService extends AnyService<UserTO>
REST operations for users.
  • Method Details

    • read

      UserTO read(String key)
      Description copied from interface: AnyService
      Reads the any object matching the provided key.
      Specified by:
      read in interface AnyService<UserTO>
      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<UserTO> 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<UserTO>
      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"}) Response create(@NotNull @NotNull UserCR createReq)
      Creates a new user.
      Parameters:
      createReq - user create request
      Returns:
      Response object featuring Location header of created user as well as the user itself enriched with propagation status information
    • update

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

      @POST @Path("{key}/status") @Produces({"application/json","application/yaml","application/xml"}) @Consumes({"application/json","application/yaml","application/xml"}) Response status(@NotNull @NotNull StatusR updateReq)
      Performs a status update on given user.
      Parameters:
      updateReq - status update details
      Returns:
      Response object featuring the updated user enriched with propagation status information