1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.wa.starter.mapping;
20
21 import java.util.Optional;
22 import org.apache.syncope.common.lib.policy.AccessPolicyConf;
23 import org.apache.syncope.common.lib.policy.AccessPolicyTO;
24 import org.apache.syncope.common.lib.policy.HttpRequestAccessPolicyConf;
25 import org.apereo.cas.services.HttpRequestRegisteredServiceAccessStrategy;
26 import org.apereo.cas.services.RegisteredServiceAccessStrategy;
27
28 public class HttpRequestAccessMapper implements AccessMapper {
29
30 @Override
31 public boolean supports(final AccessPolicyConf conf) {
32 return HttpRequestAccessPolicyConf.class.equals(conf.getClass());
33 }
34
35 @Override
36 public RegisteredServiceAccessStrategy build(final AccessPolicyTO policy) {
37 HttpRequestAccessPolicyConf conf = (HttpRequestAccessPolicyConf) policy.getConf();
38
39 HttpRequestRegisteredServiceAccessStrategy accessStrategy = new HttpRequestRegisteredServiceAccessStrategy();
40
41 Optional.ofNullable(conf.getIpAddress()).ifPresent(accessStrategy::setIpAddress);
42 Optional.ofNullable(conf.getUserAgent()).ifPresent(accessStrategy::setUserAgent);
43
44 return accessStrategy;
45 }
46 }