1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.client.enduser.rest;
20
21 import javax.ws.rs.core.GenericType;
22 import org.apache.syncope.common.lib.request.PasswordPatch;
23 import org.apache.syncope.common.lib.request.UserCR;
24 import org.apache.syncope.common.lib.request.UserUR;
25 import org.apache.syncope.common.lib.to.ProvisioningResult;
26 import org.apache.syncope.common.lib.to.UserTO;
27 import org.apache.syncope.common.rest.api.service.UserSelfService;
28
29 public class UserSelfRestClient extends BaseRestClient {
30
31 private static final long serialVersionUID = -1575748964398293968L;
32
33 public void mustChangePassword(final String password) {
34 getService(UserSelfService.class).mustChangePassword(new PasswordPatch.Builder().value(password).build());
35 }
36
37 public void requestPasswordReset(final String username, final String securityAnswer) {
38 getService(UserSelfService.class).requestPasswordReset(username, securityAnswer);
39 }
40
41 public ProvisioningResult<UserTO> create(final UserCR createReq) {
42 return getService(UserSelfService.class).create(createReq).readEntity(new GenericType<>() {
43 });
44 }
45
46 public ProvisioningResult<UserTO> update(final String etag, final UserUR updateReq) {
47 ProvisioningResult<UserTO> result;
48 synchronized (this) {
49 result = getService(etag, UserSelfService.class).update(updateReq).readEntity(new GenericType<>() {
50 });
51 resetClient(UserSelfService.class);
52 }
53 return result;
54 }
55 }