Package io.jans.scim.ws.rs.scim2
Class GroupWebService
- java.lang.Object
-
- io.jans.scim.ws.rs.scim2.BaseScimWebService
-
- io.jans.scim.ws.rs.scim2.GroupWebService
-
- All Implemented Interfaces:
IGroupWebService
@Named("scim2GroupEndpoint") @Path("/v2/Groups") public class GroupWebService extends BaseScimWebService implements IGroupWebService
Implementation of /Groups endpoint. Methods here are intercepted. Filter io.jans.scim.service.filter.AuthorizationProcessingFilter secures invocations
-
-
Field Summary
-
Fields inherited from class io.jans.scim.ws.rs.scim2.BaseScimWebService
SEARCH_SUFFIX
-
-
Constructor Summary
Constructors Constructor Description GroupWebService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description jakarta.ws.rs.core.Response
createGroup(GroupResource group, String attrsList, String excludedAttrsList)
jakarta.ws.rs.core.Response
deleteGroup(String id)
jakarta.ws.rs.core.Response
getGroupById(String id, String attrsList, String excludedAttrsList)
jakarta.ws.rs.core.Response
patchGroup(PatchRequest request, String id, String attrsList, String excludedAttrsList)
jakarta.ws.rs.core.Response
searchGroups(String filter, Integer startIndex, Integer count, String sortBy, String sortOrder, String attrsList, String excludedAttrsList)
jakarta.ws.rs.core.Response
searchGroupsPost(SearchRequest searchRequest)
void
setup()
jakarta.ws.rs.core.Response
updateGroup(GroupResource group, String id, String attrsList, String excludedAttrsList)
This implementation differs from spec in the following aspects: - Passing a null value for an attribute, does not modify the attribute in the destination, however passing an empty array for a multivalued attribute does clear the attribute.-
Methods inherited from class io.jans.scim.ws.rs.scim2.BaseScimWebService
assignMetaInformation, executeValidation, executeValidation, getEndpointUrl, getErrorResponse, getErrorResponse, getErrorResponse, init, inspectPatchRequest, notFoundResponse, prepareSearchRequest, validateExistenceOfUser
-
-
-
-
Method Detail
-
createGroup
@POST @Consumes({"application/scim+json","application/json"}) @Produces({"application/scim+json; charset=utf-8","application/json; charset=utf-8"}) @HeaderParam("Accept") @DefaultValue("application/scim+json") public jakarta.ws.rs.core.Response createGroup(GroupResource group, @QueryParam("attributes") String attrsList, @QueryParam("excludedAttributes") String excludedAttrsList)
- Specified by:
createGroup
in interfaceIGroupWebService
-
getGroupById
@Path("{id}") @GET @Produces({"application/scim+json; charset=utf-8","application/json; charset=utf-8"}) @HeaderParam("Accept") @DefaultValue("application/scim+json") public jakarta.ws.rs.core.Response getGroupById(@PathParam("id") String id, @QueryParam("attributes") String attrsList, @QueryParam("excludedAttributes") String excludedAttrsList)
- Specified by:
getGroupById
in interfaceIGroupWebService
-
updateGroup
@Path("{id}") @PUT @Consumes({"application/scim+json","application/json"}) @Produces({"application/scim+json; charset=utf-8","application/json; charset=utf-8"}) @HeaderParam("Accept") @DefaultValue("application/scim+json") public jakarta.ws.rs.core.Response updateGroup(GroupResource group, @PathParam("id") String id, @QueryParam("attributes") String attrsList, @QueryParam("excludedAttributes") String excludedAttrsList)
This implementation differs from spec in the following aspects: - Passing a null value for an attribute, does not modify the attribute in the destination, however passing an empty array for a multivalued attribute does clear the attribute. Thus, to clear single-valued attribute, PATCH operation should be used- Specified by:
updateGroup
in interfaceIGroupWebService
-
deleteGroup
@Path("{id}") @DELETE @Produces({"application/scim+json; charset=utf-8","application/json; charset=utf-8"}) @HeaderParam("Accept") @DefaultValue("application/scim+json") public jakarta.ws.rs.core.Response deleteGroup(@PathParam("id") String id)
- Specified by:
deleteGroup
in interfaceIGroupWebService
-
searchGroups
@GET @Produces({"application/scim+json; charset=utf-8","application/json; charset=utf-8"}) @HeaderParam("Accept") @DefaultValue("application/scim+json") public jakarta.ws.rs.core.Response searchGroups(@QueryParam("filter") String filter, @QueryParam("startIndex") Integer startIndex, @QueryParam("count") Integer count, @QueryParam("sortBy") String sortBy, @QueryParam("sortOrder") String sortOrder, @QueryParam("attributes") String attrsList, @QueryParam("excludedAttributes") String excludedAttrsList)
- Specified by:
searchGroups
in interfaceIGroupWebService
-
searchGroupsPost
@Path(".search") @POST @Consumes({"application/scim+json","application/json"}) @Produces({"application/scim+json; charset=utf-8","application/json; charset=utf-8"}) @HeaderParam("Accept") @DefaultValue("application/scim+json") public jakarta.ws.rs.core.Response searchGroupsPost(SearchRequest searchRequest)
- Specified by:
searchGroupsPost
in interfaceIGroupWebService
-
patchGroup
@Path("{id}") @Consumes({"application/scim+json","application/json"}) @Produces({"application/scim+json; charset=utf-8","application/json; charset=utf-8"}) @HeaderParam("Accept") @DefaultValue("application/scim+json") public jakarta.ws.rs.core.Response patchGroup(PatchRequest request, @PathParam("id") String id, @QueryParam("attributes") String attrsList, @QueryParam("excludedAttributes") String excludedAttrsList)
- Specified by:
patchGroup
in interfaceIGroupWebService
-
setup
@PostConstruct public void setup()
-
-