Interface UserService
- All Superinterfaces:
AnyService<UserTO>
,JAXRSService
- All Known Implementing Classes:
UserServiceImpl
REST operations for users.
-
Field Summary
Fields inherited from interface org.apache.syncope.common.rest.api.service.JAXRSService
CRLF, DOUBLE_DASH, PARAM_ANYTYPE_KIND, PARAM_ANYTYPEKEY, PARAM_CONNID_PAGED_RESULTS_COOKIE, PARAM_DETAILS, PARAM_ENTITY_KEY, PARAM_FIQL, PARAM_KEYWORD, PARAM_MAX, PARAM_NOTIFICATION, PARAM_ORDERBY, PARAM_PAGE, PARAM_REALM, PARAM_RECURSIVE, PARAM_RESOURCE, PARAM_SIZE, PARAM_USER
-
Method Summary
Modifier and TypeMethodDescriptionCreates a new user.Reads the any object matching the provided key.Returns a paged list of any objects matching the given query.Performs a status update on given user.Updates user matching the provided key.void
verifySecurityAnswer
(@NotNull String username, String securityAnswer) Provides answer for the security question configured for user matching the given username, if any.Methods inherited from interface org.apache.syncope.common.rest.api.service.AnyService
associate, deassociate, delete, delete, read, read, update
-
Method Details
-
read
Description copied from interface:AnyService
Reads the any object matching the provided key.- Specified by:
read
in interfaceAnyService<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
Description copied from interface:AnyService
Returns a paged list of any objects matching the given query.- Specified by:
search
in interfaceAnyService<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
-
verifySecurityAnswer
@POST @Path("verifySecurityAnswer") @Produces({"application/json","application/yaml","application/xml"}) void verifySecurityAnswer(@NotNull @QueryParam("username") @NotNull String username, String securityAnswer) Provides answer for the security question configured for user matching the given username, if any. If provided answer matches the one stored for that user, check completes successfully, otherwise an error is returned.- Parameters:
username
- username for which the security answer is providedsecurityAnswer
- actual answer text
-