1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.core.rest.cxf.service;
20
21 import java.net.URI;
22 import java.util.List;
23 import javax.ws.rs.core.Response;
24 import org.apache.commons.lang3.tuple.Pair;
25 import org.apache.syncope.common.lib.to.AuthProfileTO;
26 import org.apache.syncope.common.lib.to.PagedResult;
27 import org.apache.syncope.common.rest.api.RESTHeaders;
28 import org.apache.syncope.common.rest.api.service.AuthProfileService;
29 import org.apache.syncope.core.logic.AuthProfileLogic;
30 import org.springframework.stereotype.Service;
31
32 @Service
33 public class AuthProfileServiceImpl extends AbstractService implements AuthProfileService {
34
35 protected final AuthProfileLogic logic;
36
37 public AuthProfileServiceImpl(final AuthProfileLogic logic) {
38 this.logic = logic;
39 }
40
41 @Override
42 public void delete(final String key) {
43 logic.delete(key);
44 }
45
46 @Override
47 public AuthProfileTO read(final String key) {
48 return logic.read(key);
49 }
50
51 @Override
52 public Response create(final AuthProfileTO authProfileTO) {
53 AuthProfileTO created = logic.create(authProfileTO);
54 URI location = uriInfo.getAbsolutePathBuilder().path(created.getKey()).build();
55 return Response.created(location).
56 header(RESTHeaders.RESOURCE_KEY, created.getKey()).
57 build();
58 }
59
60 @Override
61 public void update(final AuthProfileTO authProfileTO) {
62 logic.update(authProfileTO);
63 }
64
65 @Override
66 public PagedResult<AuthProfileTO> list(final int page, final int size) {
67 Pair<Integer, List<AuthProfileTO>> result = logic.list(page, size);
68 return buildPagedResult(result.getRight(), page, size, result.getLeft());
69 }
70 }