22
33import com .google .common .base .Optional ;
44import restx .RestxRequest ;
5+ import restx .RestxRequestMatch ;
56
67import java .util .Arrays ;
78
1213public class Permissions {
1314 private static final Permission OPEN = new Permission () {
1415 @ Override
15- public Optional <? extends Permission > has (RestxPrincipal principal , RestxRequest request ) {
16+ public Optional <? extends Permission > has (RestxPrincipal principal , RestxRequest request , RestxRequestMatch match ) {
1617 return Optional .of (this );
1718 }
1819
@@ -23,7 +24,7 @@ public String toString() {
2324 };
2425 private static final Permission IS_AUTHENTICATED = new Permission () {
2526 @ Override
26- public Optional <? extends Permission > has (RestxPrincipal principal , RestxRequest request ) {
27+ public Optional <? extends Permission > has (RestxPrincipal principal , RestxRequest request , RestxRequestMatch match ) {
2728 return Optional .of (this );
2829 }
2930
@@ -57,7 +58,7 @@ public static Permission hasRole(final String role) {
5758 public final String TO_STRING = "HAS_ROLE[" + role + "]" ;
5859
5960 @ Override
60- public Optional <? extends Permission > has (RestxPrincipal principal , RestxRequest request ) {
61+ public Optional <? extends Permission > has (RestxPrincipal principal , RestxRequest request , RestxRequestMatch match ) {
6162 return principal .getPrincipalRoles ().contains (role ) || principal .getPrincipalRoles ().contains ("*" )
6263 ? Optional .of (this ) : Optional .<Permission >absent ();
6364 }
@@ -75,9 +76,9 @@ public String toString() {
7576 public static Permission anyOf (final Permission ... permissions ) {
7677 return new Permission () {
7778 @ Override
78- public Optional <? extends Permission > has (RestxPrincipal principal , RestxRequest request ) {
79+ public Optional <? extends Permission > has (RestxPrincipal principal , RestxRequest request , RestxRequestMatch match ) {
7980 for (Permission permission : permissions ) {
80- Optional <? extends Permission > p = permission .has (principal , request );
81+ Optional <? extends Permission > p = permission .has (principal , request , match );
8182 if (p .isPresent ()) {
8283 return p ;
8384 }
@@ -99,9 +100,9 @@ public String toString() {
99100 public static Permission allOf (final Permission ... permissions ) {
100101 return new Permission () {
101102 @ Override
102- public Optional <? extends Permission > has (RestxPrincipal principal , RestxRequest request ) {
103+ public Optional <? extends Permission > has (RestxPrincipal principal , RestxRequest request , RestxRequestMatch match ) {
103104 for (Permission permission : permissions ) {
104- Optional <? extends Permission > p = permission .has (principal , request );
105+ Optional <? extends Permission > p = permission .has (principal , request , match );
105106 if (!p .isPresent ()) {
106107 return Optional .absent ();
107108 }
0 commit comments