1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.sra.security;
20
21 import java.util.concurrent.ConcurrentHashMap;
22 import org.apache.syncope.common.lib.types.SRARouteType;
23 import org.springframework.cloud.gateway.route.Route;
24
25 public class PublicRouteMatcher extends AbstractRouteMatcher {
26
27 private static final String CACHE_NAME = PublicRouteMatcher.class.getName();
28
29 static {
30 CACHE.put(CACHE_NAME, new ConcurrentHashMap<>());
31 }
32
33 @Override
34 protected String getCacheName() {
35 return CACHE_NAME;
36 }
37
38 @Override
39 protected boolean routeBehavior(final Route route) {
40 return routeProvider.getRouteTOs().stream().
41 filter(r -> route.getId().equals(r.getKey())).findFirst().
42 map(r -> r.getType() == SRARouteType.PUBLIC).orElse(true);
43 }
44 }