You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by an...@apache.org on 2019/08/19 13:29:01 UTC
svn commit: r1865457 - in /jackrabbit/oak/trunk:
oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/
oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/extern...
Author: angela
Date: Mon Aug 19 13:29:01 2019
New Revision: 1865457
URL: http://svn.apache.org/viewvc?rev=1865457&view=rev
Log:
OAK-8547 : Nullable/Notnull Annotations for Principal Management API -> adjusting implementations
Modified:
jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProvider.java
jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProviderTest.java
jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugExcludeDefaultTest.java
jackrabbit/oak/trunk/oak-authorization-principalbased/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/FilterImplTest.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/AbstractGroupPrincipal.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/TreeBasedPrincipal.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserPrincipalProvider.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserProvider.java
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/ImpersonationImplEmptyTest.java
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserPrincipalProviderWithCacheTest.java
jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/PrincipalManagerDelegator.java
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/EveryonePrincipal.java
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/GroupPrincipalWrapper.java
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalIteratorAdapter.java
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalManagerImpl.java
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalQueryManager.java
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/package-info.java
jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/principal/EveryonePrincipalTest.java
jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/principal/TestPrincipalProvider.java
Modified: jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProvider.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProvider.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProvider.java Mon Aug 19 13:29:01 2019
@@ -324,7 +324,7 @@ class ExternalGroupPrincipalProvider imp
}
@Override
- public boolean isMember(Principal member) {
+ public boolean isMember(@NotNull Principal member) {
if (GroupPrincipals.isGroup(member)) {
return false;
}
@@ -355,6 +355,7 @@ class ExternalGroupPrincipalProvider imp
return false;
}
+ @NotNull
@Override
public Enumeration<? extends Principal> members() {
Result result = findPrincipals(getName(), true);
Modified: jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProviderTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProviderTest.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProviderTest.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProviderTest.java Mon Aug 19 13:29:01 2019
@@ -427,6 +427,7 @@ public class ExternalGroupPrincipalProvi
ExternalGroupPrincipalProvider p = new ExternalGroupPrincipalProvider(root,
getSecurityProvider().getConfiguration(UserConfiguration.class), NamePathMapper.DEFAULT,
ImmutableMap.of(idp.getName(), new String[0])) {
+ @NotNull
@Override
public Iterator<? extends Principal> findPrincipals(@Nullable String nameHint, int searchType) {
return in.iterator();
Modified: jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugExcludeDefaultTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugExcludeDefaultTest.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugExcludeDefaultTest.java (original)
+++ jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugExcludeDefaultTest.java Mon Aug 19 13:29:01 2019
@@ -27,6 +27,7 @@ import org.apache.jackrabbit.oak.spi.sec
import org.apache.jackrabbit.oak.spi.security.principal.PrincipalImpl;
import org.apache.jackrabbit.oak.spi.security.principal.SystemPrincipal;
import org.apache.jackrabbit.oak.spi.security.principal.SystemUserPrincipal;
+import org.jetbrains.annotations.NotNull;
import org.junit.Before;
import org.junit.Test;
@@ -84,6 +85,7 @@ public class CugExcludeDefaultTest {
Set<Principal> principals = new HashSet<>();
principals.add(new PrincipalImpl("test"));
principals.add(new ItemBasedPrincipal() {
+ @NotNull
@Override
public String getPath() {
return "/path";
Modified: jackrabbit/oak/trunk/oak-authorization-principalbased/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/FilterImplTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-authorization-principalbased/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/FilterImplTest.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-authorization-principalbased/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/FilterImplTest.java (original)
+++ jackrabbit/oak/trunk/oak-authorization-principalbased/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/FilterImplTest.java Mon Aug 19 13:29:01 2019
@@ -105,6 +105,7 @@ public class FilterImplTest extends Abst
Principal principal = getTestSystemUser().getPrincipal();
assertFalse(filter.canHandle(Collections.singleton((AdminPrincipal) () -> principal.getName())));
assertFalse(filter.canHandle(Collections.singleton((new ItemBasedPrincipal() {
+ @NotNull
@Override
public String getPath() throws RepositoryException {
return ((ItemBasedPrincipal) principal).getPath();
@@ -151,7 +152,7 @@ public class FilterImplTest extends Abst
/**
* Test that the filter can deal with principals that have been accessed with a different {@code NamePathMapper}.
* This might actually occure with {@code AbstractAccessControlManager#hasPrivilege} and {@code AbstractAccessControlManager#getPrivileges},
- * when a {@link PermissionProvider} is built from the principal set passed to the Jackrabbit API methods (and not from
+ * when a {@code PermissionProvider} is built from the principal set passed to the Jackrabbit API methods (and not from
* principals obtained on the system level when populating the {@code Subject}.
*/
@Test
@@ -301,6 +302,7 @@ public class FilterImplTest extends Abst
this.name = name;
}
+ @NotNull
@Override
public String getPath() throws RepositoryException {
if (jcrPath != null) {
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/AbstractGroupPrincipal.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/AbstractGroupPrincipal.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/AbstractGroupPrincipal.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/AbstractGroupPrincipal.java Mon Aug 19 13:29:01 2019
@@ -61,7 +61,7 @@ abstract class AbstractGroupPrincipal ex
//--------------------------------------------------------------< Group >---
@Override
- public boolean isMember(Principal principal) {
+ public boolean isMember(@NotNull Principal principal) {
boolean isMember = false;
try {
// shortcut for everyone group -> avoid collecting all members
@@ -82,6 +82,7 @@ abstract class AbstractGroupPrincipal ex
return isMember;
}
+ @NotNull
@Override
public Enumeration<? extends Principal> members() {
final Iterator<Authorizable> members;
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/TreeBasedPrincipal.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/TreeBasedPrincipal.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/TreeBasedPrincipal.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/TreeBasedPrincipal.java Mon Aug 19 13:29:01 2019
@@ -22,6 +22,8 @@ import org.apache.jackrabbit.oak.namepat
import org.apache.jackrabbit.oak.spi.security.principal.PrincipalImpl;
import org.jetbrains.annotations.NotNull;
+import javax.jcr.RepositoryException;
+
/**
* TreeBasedPrincipal...
*/
@@ -40,17 +42,20 @@ class TreeBasedPrincipal extends Princip
this.path = oakPath;
}
- String getOakPath() {
+ @NotNull
+ String getOakPath() throws RepositoryException {
return path;
}
+ @NotNull
NamePathMapper getNamePathMapper() {
return pathMapper;
}
//-------------------------------------------------< ItemBasedPrincipal >---
+ @NotNull
@Override
- public String getPath() {
+ public String getPath() throws RepositoryException {
return pathMapper.getJcrPath(path);
}
}
\ No newline at end of file
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserPrincipalProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserPrincipalProvider.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserPrincipalProvider.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserPrincipalProvider.java Mon Aug 19 13:29:01 2019
@@ -508,23 +508,24 @@ class UserPrincipalProvider implements P
super(principalName, "", namePathMapper, root, config);
}
- @Nullable
+ @NotNull
@Override
- String getOakPath() {
- String groupPath = getPath();
- return (groupPath == null) ? null : getNamePathMapper().getOakPath(getPath());
+ String getOakPath() throws RepositoryException {
+ String oakPath = getNamePathMapper().getOakPath(getPath());
+ if (oakPath == null) {
+ throw new RepositoryException("Failed to retrieve path of group principal " + getName());
+ }
+ return oakPath;
}
- @Nullable
+ @NotNull
@Override
- public String getPath() {
- try {
- org.apache.jackrabbit.api.security.user.Group gr = getGroup();
- return (gr == null) ? null : gr.getPath();
- } catch (RepositoryException e) {
- log.error("Failed to retrieve path from group principal: {}", e.getMessage());
- return null;
+ public String getPath() throws RepositoryException {
+ org.apache.jackrabbit.api.security.user.Group gr = getGroup();
+ if (gr == null) {
+ throw new RepositoryException("Failed to retrieve path of group principal " + getName());
}
+ return gr.getPath();
}
@Override
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserProvider.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserProvider.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserProvider.java Mon Aug 19 13:29:01 2019
@@ -216,7 +216,12 @@ class UserProvider extends AuthorizableB
@Nullable
Tree getAuthorizableByPrincipal(@NotNull Principal principal) {
if (principal instanceof TreeBasedPrincipal) {
- return root.getTree(((TreeBasedPrincipal) principal).getOakPath());
+ try {
+ return root.getTree(((TreeBasedPrincipal) principal).getOakPath());
+ } catch (RepositoryException e) {
+ // getting oakpath fails -> try searching below
+ log.debug(e.getMessage());
+ }
}
// NOTE: in contrast to JR2 the extra shortcut for ID==principalName
Modified: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/ImpersonationImplEmptyTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/ImpersonationImplEmptyTest.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/ImpersonationImplEmptyTest.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/ImpersonationImplEmptyTest.java Mon Aug 19 13:29:01 2019
@@ -43,10 +43,11 @@ public class ImpersonationImplEmptyTest
final GroupPrincipal groupPrincipal = new GroupPrincipal() {
@Override
- public boolean isMember(Principal member) {
+ public boolean isMember(@NotNull Principal member) {
throw new UnsupportedOperationException();
}
+ @NotNull
@Override
public Enumeration<? extends Principal> members() {
throw new UnsupportedOperationException();
Modified: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserPrincipalProviderWithCacheTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserPrincipalProviderWithCacheTest.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserPrincipalProviderWithCacheTest.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserPrincipalProviderWithCacheTest.java Mon Aug 19 13:29:01 2019
@@ -46,6 +46,7 @@ import org.jetbrains.annotations.Nullabl
import org.junit.Test;
import javax.jcr.NoSuchWorkspaceException;
+import javax.jcr.RepositoryException;
import javax.jcr.SimpleCredentials;
import javax.security.auth.Subject;
import javax.security.auth.login.LoginException;
@@ -327,7 +328,12 @@ public class UserPrincipalProviderWithCa
assertEquals("org.apache.jackrabbit.oak.security.user.UserPrincipalProvider$CachedGroupPrincipal", className);
assertTrue(p instanceof TreeBasedPrincipal);
- assertNull(((TreeBasedPrincipal) p).getPath());
+ try {
+ ((TreeBasedPrincipal) p).getPath();
+ fail("RepositoryException expected");
+ } catch (RepositoryException e) {
+ // success
+ }
GroupPrincipal principalGroup = (GroupPrincipal) p;
assertFalse(principalGroup.isMember(getTestUser().getPrincipal()));
Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/PrincipalManagerDelegator.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/PrincipalManagerDelegator.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/PrincipalManagerDelegator.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/PrincipalManagerDelegator.java Mon Aug 19 13:29:01 2019
@@ -28,6 +28,7 @@ import org.apache.jackrabbit.api.securit
import org.apache.jackrabbit.oak.jcr.session.operation.SessionOperation;
import org.apache.jackrabbit.oak.spi.security.principal.PrincipalQueryManager;
import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
/**
* This implementation of {@code PrincipalManager} delegates back to a
@@ -46,7 +47,7 @@ public class PrincipalManagerDelegator i
}
@Override
- public boolean hasPrincipal(final String principalName) {
+ public boolean hasPrincipal(@NotNull final String principalName) {
return delegate.safePerform(new SessionOperation<Boolean>("hasPrincipal") {
@NotNull
@Override
@@ -56,8 +57,9 @@ public class PrincipalManagerDelegator i
});
}
+ @Nullable
@Override
- public Principal getPrincipal(final String principalName) {
+ public Principal getPrincipal(@NotNull final String principalName) {
try {
return delegate.performNullable(new SessionOperation<Principal>("getPrincipal") {
@Override
@@ -70,8 +72,9 @@ public class PrincipalManagerDelegator i
}
}
+ @NotNull
@Override
- public PrincipalIterator findPrincipals(final String simpleFilter) {
+ public PrincipalIterator findPrincipals(@Nullable final String simpleFilter) {
return delegate.safePerform(new SessionOperation<PrincipalIterator>("findPrincipals") {
@NotNull
@Override
@@ -81,8 +84,9 @@ public class PrincipalManagerDelegator i
});
}
+ @NotNull
@Override
- public PrincipalIterator findPrincipals(final String simpleFilter, final int searchType) {
+ public PrincipalIterator findPrincipals(@Nullable final String simpleFilter, final int searchType) {
return delegate.safePerform(new SessionOperation<PrincipalIterator>("findPrincipals") {
@NotNull
@Override
@@ -92,6 +96,7 @@ public class PrincipalManagerDelegator i
});
}
+ @NotNull
@Override
public PrincipalIterator getPrincipals(final int searchType) {
return delegate.safePerform(new SessionOperation<PrincipalIterator>("getPrincipals") {
@@ -103,8 +108,9 @@ public class PrincipalManagerDelegator i
});
}
+ @NotNull
@Override
- public PrincipalIterator getGroupMembership(final Principal principal) {
+ public PrincipalIterator getGroupMembership(@NotNull final Principal principal) {
return delegate.safePerform(new SessionOperation<PrincipalIterator>("getGroupMembership") {
@NotNull
@Override
@@ -114,6 +120,7 @@ public class PrincipalManagerDelegator i
});
}
+ @NotNull
@Override
public Principal getEveryone() {
return delegate.safePerform(new SessionOperation<Principal>("getEveryone") {
@@ -125,8 +132,9 @@ public class PrincipalManagerDelegator i
});
}
+ @NotNull
@Override
- public PrincipalIterator findPrincipals(String simpleFilter, boolean fullText, int searchType, long offset, long limit) {
+ public PrincipalIterator findPrincipals(@Nullable String simpleFilter, boolean fullText, int searchType, long offset, long limit) {
return delegate.safePerform(new SessionOperation<PrincipalIterator>("findPrincipals") {
@NotNull
@Override
Modified: jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/EveryonePrincipal.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/EveryonePrincipal.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/EveryonePrincipal.java (original)
+++ jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/EveryonePrincipal.java Mon Aug 19 13:29:01 2019
@@ -22,6 +22,7 @@ import java.util.Enumeration;
import org.apache.jackrabbit.api.security.principal.GroupPrincipal;
import org.apache.jackrabbit.api.security.principal.JackrabbitPrincipal;
+import org.jetbrains.annotations.NotNull;
/**
* Built-in principal group that has every other principal as member.
@@ -57,10 +58,11 @@ public final class EveryonePrincipal imp
//------------------------------------------------------< GroupPrincipal >---
@Override
- public boolean isMember(Principal member) {
+ public boolean isMember(@NotNull Principal member) {
return !member.equals(this);
}
+ @NotNull
@Override
public Enumeration<? extends Principal> members() {
throw new UnsupportedOperationException("Not implemented.");
Modified: jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/GroupPrincipalWrapper.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/GroupPrincipalWrapper.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/GroupPrincipalWrapper.java (original)
+++ jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/GroupPrincipalWrapper.java Mon Aug 19 13:29:01 2019
@@ -34,10 +34,11 @@ class GroupPrincipalWrapper extends Prin
}
@Override
- public boolean isMember(Principal member) {
+ public boolean isMember(@NotNull Principal member) {
return group.isMember(member);
}
+ @NotNull
@Override
public Enumeration<? extends Principal> members() {
return GroupPrincipals.transform(group.members());
Modified: jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalIteratorAdapter.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalIteratorAdapter.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalIteratorAdapter.java (original)
+++ jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalIteratorAdapter.java Mon Aug 19 13:29:01 2019
@@ -23,6 +23,7 @@ import java.util.Iterator;
import org.apache.jackrabbit.api.security.principal.PrincipalIterator;
import org.apache.jackrabbit.commons.iterator.RangeIteratorAdapter;
import org.apache.jackrabbit.commons.iterator.RangeIteratorDecorator;
+import org.jetbrains.annotations.NotNull;
/**
* Principal specific {@code RangeIteratorAdapter} implementing the
@@ -61,6 +62,7 @@ public class PrincipalIteratorAdapter ex
*
* @return next policy.
*/
+ @NotNull
@Override
public Principal nextPrincipal() {
return (Principal) next();
Modified: jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalManagerImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalManagerImpl.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalManagerImpl.java (original)
+++ jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalManagerImpl.java Mon Aug 19 13:29:01 2019
@@ -79,8 +79,9 @@ public class PrincipalManagerImpl implem
return everyone;
}
+ @NotNull
@Override
- public PrincipalIterator findPrincipals(String simpleFilter, boolean fullText, int searchType, long offset, long limit) {
+ public PrincipalIterator findPrincipals(@Nullable String simpleFilter, boolean fullText, int searchType, long offset, long limit) {
return new PrincipalIteratorAdapter(principalProvider.findPrincipals(simpleFilter, fullText, searchType, offset, limit));
}
}
Modified: jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalQueryManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalQueryManager.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalQueryManager.java (original)
+++ jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/PrincipalQueryManager.java Mon Aug 19 13:29:01 2019
@@ -20,6 +20,8 @@ import java.security.Principal;
import org.apache.jackrabbit.api.security.principal.PrincipalIterator;
import org.apache.jackrabbit.api.security.principal.PrincipalManager;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
import org.osgi.annotation.versioning.ProviderType;
/**
@@ -49,5 +51,6 @@ public interface PrincipalQueryManager {
* @return a <code>PrincipalIterator</code> over the <code>Principal</code>s
* matching the given filter and search type.
*/
- PrincipalIterator findPrincipals(String simpleFilter, boolean fullText, int searchType, long offset, long limit);
+ @NotNull
+ PrincipalIterator findPrincipals(@Nullable String simpleFilter, boolean fullText, int searchType, long offset, long limit);
}
Modified: jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/package-info.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/package-info.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/package-info.java (original)
+++ jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/package-info.java Mon Aug 19 13:29:01 2019
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-@Version("1.7.0")
+@Version("1.7.1")
package org.apache.jackrabbit.oak.spi.security.principal;
import org.osgi.annotation.versioning.Version;
Modified: jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/principal/EveryonePrincipalTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/principal/EveryonePrincipalTest.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/principal/EveryonePrincipalTest.java (original)
+++ jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/principal/EveryonePrincipalTest.java Mon Aug 19 13:29:01 2019
@@ -21,6 +21,7 @@ import java.util.Enumeration;
import org.apache.jackrabbit.api.security.principal.GroupPrincipal;
import org.apache.jackrabbit.api.security.principal.JackrabbitPrincipal;
+import org.jetbrains.annotations.NotNull;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
@@ -130,10 +131,11 @@ public class EveryonePrincipalTest {
private class OtherEveryoneGroup extends OtherEveryone implements GroupPrincipal {
@Override
- public boolean isMember(Principal principal) {
+ public boolean isMember(@NotNull Principal principal) {
return true;
}
+ @NotNull
@Override
public Enumeration<? extends Principal> members() {
throw new UnsupportedOperationException();
Modified: jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/principal/TestPrincipalProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/principal/TestPrincipalProvider.java?rev=1865457&r1=1865456&r2=1865457&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/principal/TestPrincipalProvider.java (original)
+++ jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/principal/TestPrincipalProvider.java Mon Aug 19 13:29:01 2019
@@ -54,6 +54,7 @@ public final class TestPrincipalProvider
public TestPrincipalProvider(String... principalNames) {
this.exposesEveryone = true;
this.principals = Maps.toMap(ImmutableSet.copyOf(principalNames), input -> new ItemBasedPrincipal() {
+ @NotNull
@Override
public String getPath() {
return "/path/to/principal/" + input;
@@ -175,10 +176,11 @@ public final class TestPrincipalProvider
}
@Override
- public boolean isMember(Principal member) {
+ public boolean isMember(@NotNull Principal member) {
throw new UnsupportedOperationException();
}
+ @NotNull
@Override
public Enumeration<? extends Principal> members() {
return members;