Author: angela
Date: Mon Aug 19 08:03:52 2019
New Revision: 1865416
URL: http://svn.apache.org/viewvc?rev=1865416&view=rev
Log:
OAK-8545 : Nullable/Notnull Annotations for Authorization API
Modified:
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlEntry.java
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlList.java
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlManager.java
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlPolicy.java
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/PrivilegeManager.java
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/package-info.java
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/package-info.java
Modified:
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlEntry.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlEntry.java?rev=1865416&r1=1865415&r2=1865416&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlEntry.java
(original)
+++
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlEntry.java
Mon Aug 19 08:03:52 2019
@@ -21,6 +21,8 @@ import javax.jcr.Value;
import javax.jcr.ValueFormatException;
import javax.jcr.security.AccessControlEntry;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
import org.osgi.annotation.versioning.ProviderType;
/**
@@ -43,6 +45,7 @@ public interface JackrabbitAccessControl
* @return the names of the restrictions
* @throws RepositoryException if an error occurs.
*/
+ @NotNull
String[] getRestrictionNames() throws RepositoryException;
/**
@@ -60,7 +63,8 @@ public interface JackrabbitAccessControl
* @throws RepositoryException if an error occurs.
* @see #getRestrictions(String)
*/
- Value getRestriction(String restrictionName) throws ValueFormatException,
RepositoryException;
+ @Nullable
+ Value getRestriction(@NotNull String restrictionName) throws
ValueFormatException, RepositoryException;
/**
* Return the values of the restriction with the specified name or
@@ -77,5 +81,6 @@ public interface JackrabbitAccessControl
* @throws RepositoryException if an error occurs.
* @see #getRestriction(String)
*/
- Value[] getRestrictions(String restrictionName) throws RepositoryException;
+ @Nullable
+ Value[] getRestrictions(@NotNull String restrictionName) throws
RepositoryException;
}
Modified:
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlList.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlList.java?rev=1865416&r1=1865415&r2=1865416&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlList.java
(original)
+++
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlList.java
Mon Aug 19 08:03:52 2019
@@ -27,6 +27,8 @@ import javax.jcr.security.AccessControlL
import javax.jcr.security.AccessControlPolicy;
import javax.jcr.security.Privilege;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
import org.osgi.annotation.versioning.ProviderType;
/**
@@ -46,6 +48,7 @@ public interface JackrabbitAccessControl
* @see #addEntry(Principal, Privilege[], boolean, Map)
* @throws RepositoryException If an error occurs.
*/
+ @NotNull
String[] getRestrictionNames() throws RepositoryException;
/**
@@ -57,7 +60,7 @@ public interface JackrabbitAccessControl
* @return expected {@link javax.jcr.PropertyType property type}.
* @throws RepositoryException If an error occurs.
*/
- int getRestrictionType(String restrictionName) throws RepositoryException;
+ int getRestrictionType(@NotNull String restrictionName) throws
RepositoryException;
/**
* Returns <code>true</code> if the restriction is multivalued;
<code>false</code>
@@ -72,7 +75,7 @@ public interface JackrabbitAccessControl
* @throws RepositoryException If an error occurs.
* @see #addEntry(Principal, Privilege[], boolean, Map, Map)
*/
- boolean isMultiValueRestriction(String restrictionName) throws
RepositoryException;
+ boolean isMultiValueRestriction(@NotNull String restrictionName) throws
RepositoryException;
/**
* Returns <code>true</code> if this policy does not yet define any
@@ -103,7 +106,7 @@ public interface JackrabbitAccessControl
* @throws RepositoryException If another error occurs.
* @see AccessControlList#addAccessControlEntry(Principal, Privilege[])
*/
- boolean addEntry(Principal principal, Privilege[] privileges, boolean
isAllow)
+ boolean addEntry(@NotNull Principal principal, @NotNull Privilege[]
privileges, boolean isAllow)
throws AccessControlException, RepositoryException;
/**
@@ -131,8 +134,8 @@ public interface JackrabbitAccessControl
* @throws RepositoryException If another error occurs.
* @see AccessControlList#addAccessControlEntry(Principal, Privilege[])
*/
- boolean addEntry(Principal principal, Privilege[] privileges,
- boolean isAllow, Map<String, Value> restrictions)
+ boolean addEntry(@NotNull Principal principal, @NotNull Privilege[]
privileges,
+ boolean isAllow, @Nullable Map<String, Value>
restrictions)
throws AccessControlException, RepositoryException;
/**
@@ -164,9 +167,9 @@ public interface JackrabbitAccessControl
* @see AccessControlList#addAccessControlEntry(Principal, Privilege[])
* @since 2.8
*/
- boolean addEntry(Principal principal, Privilege[] privileges,
- boolean isAllow, Map<String, Value> restrictions,
- Map<String, Value[]> mvRestrictions)
+ boolean addEntry(@NotNull Principal principal, @NotNull Privilege[]
privileges,
+ boolean isAllow, @Nullable Map<String, Value>
restrictions,
+ @Nullable Map<String, Value[]> mvRestrictions)
throws AccessControlException, RepositoryException;
/**
@@ -187,6 +190,6 @@ public interface JackrabbitAccessControl
* @throws UnsupportedRepositoryOperationException If ordering is not
supported.
* @throws RepositoryException If another error occurs.
*/
- void orderBefore(AccessControlEntry srcEntry, AccessControlEntry destEntry)
+ void orderBefore(@NotNull AccessControlEntry srcEntry, @Nullable
AccessControlEntry destEntry)
throws AccessControlException,
UnsupportedRepositoryOperationException, RepositoryException;
}
Modified:
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlManager.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlManager.java?rev=1865416&r1=1865415&r2=1865416&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlManager.java
(original)
+++
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlManager.java
Mon Aug 19 08:03:52 2019
@@ -28,6 +28,8 @@ import javax.jcr.security.Privilege;
import java.security.Principal;
import java.util.Set;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
import org.osgi.annotation.versioning.ProviderType;
/**
@@ -54,7 +56,8 @@ public interface JackrabbitAccessControl
* @throws RepositoryException if another error occurs.
* @see JackrabbitAccessControlPolicy#getPath()
*/
- JackrabbitAccessControlPolicy[] getApplicablePolicies(Principal principal)
throws AccessDeniedException, AccessControlException,
UnsupportedRepositoryOperationException, RepositoryException;
+ @NotNull
+ JackrabbitAccessControlPolicy[] getApplicablePolicies(@NotNull Principal
principal) throws AccessDeniedException, AccessControlException,
UnsupportedRepositoryOperationException, RepositoryException;
/**
* Returns the <code>AccessControlPolicy</code> objects that have been set
@@ -72,7 +75,8 @@ public interface JackrabbitAccessControl
* policies by principal is not supported.
* @throws RepositoryException If another error occurs.
*/
- JackrabbitAccessControlPolicy[] getPolicies(Principal principal) throws
AccessDeniedException, AccessControlException,
UnsupportedRepositoryOperationException, RepositoryException;
+ @NotNull
+ JackrabbitAccessControlPolicy[] getPolicies(@NotNull Principal principal)
throws AccessDeniedException, AccessControlException,
UnsupportedRepositoryOperationException, RepositoryException;
/**
* Returns the <code>AccessControlPolicy</code> objects that are in effect
@@ -89,7 +93,8 @@ public interface JackrabbitAccessControl
* policies by principal is not supported.
* @throws RepositoryException If another error occurs.
*/
- AccessControlPolicy[] getEffectivePolicies(Set<Principal> principals)
throws AccessDeniedException, AccessControlException,
UnsupportedRepositoryOperationException, RepositoryException;
+ @NotNull
+ AccessControlPolicy[] getEffectivePolicies(@NotNull Set<Principal>
principals) throws AccessDeniedException, AccessControlException,
UnsupportedRepositoryOperationException, RepositoryException;
/**
* Returns whether the given set of <code>Principal</code>s has the
specified
@@ -125,7 +130,7 @@ public interface JackrabbitAccessControl
* <code>READ_ACCESS_CONTROL</code> privilege for the <code>absPath</code>
node.
* @throws RepositoryException if another error occurs.
*/
- public boolean hasPrivileges(String absPath, Set<Principal> principals,
Privilege[] privileges)
+ public boolean hasPrivileges(@Nullable String absPath, @NotNull
Set<Principal> principals, @NotNull Privilege[] privileges)
throws PathNotFoundException, AccessDeniedException,
RepositoryException;
/**
@@ -163,6 +168,7 @@ public interface JackrabbitAccessControl
* privilege for the <code>absPath</code> node.
* @throws RepositoryException if another error occurs.
*/
- public Privilege[] getPrivileges(String absPath, Set<Principal> principals)
+ @NotNull
+ public Privilege[] getPrivileges(@Nullable String absPath, @NotNull
Set<Principal> principals)
throws PathNotFoundException, AccessDeniedException,
RepositoryException;
}
\ No newline at end of file
Modified:
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlPolicy.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlPolicy.java?rev=1865416&r1=1865415&r2=1865416&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlPolicy.java
(original)
+++
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlPolicy.java
Mon Aug 19 08:03:52 2019
@@ -18,6 +18,7 @@ package org.apache.jackrabbit.api.securi
import javax.jcr.security.AccessControlPolicy;
+import org.jetbrains.annotations.Nullable;
import org.osgi.annotation.versioning.ProviderType;
/**
@@ -33,5 +34,6 @@ public interface JackrabbitAccessControl
*
* @return the path of the node this policy has been created for.
*/
+ @Nullable
String getPath();
}
\ No newline at end of file
Modified:
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/PrivilegeManager.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/PrivilegeManager.java?rev=1865416&r1=1865415&r2=1865416&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/PrivilegeManager.java
(original)
+++
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/PrivilegeManager.java
Mon Aug 19 08:03:52 2019
@@ -16,6 +16,9 @@
*/
package org.apache.jackrabbit.api.security.authorization;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
import javax.jcr.AccessDeniedException;
import javax.jcr.NamespaceException;
import javax.jcr.RepositoryException;
@@ -38,6 +41,7 @@ public interface PrivilegeManager {
* @return all registered privileges.
* @throws RepositoryException If an error occurs.
*/
+ @NotNull
Privilege[] getRegisteredPrivileges() throws RepositoryException;
/**
@@ -48,7 +52,8 @@ public interface PrivilegeManager {
* @throws javax.jcr.security.AccessControlException If no privilege with
the given name exists.
* @throws javax.jcr.RepositoryException If another error occurs.
*/
- Privilege getPrivilege(String privilegeName) throws
AccessControlException, RepositoryException;
+ @NotNull
+ Privilege getPrivilege(@NotNull String privilegeName) throws
AccessControlException, RepositoryException;
/**
* Creates and registers a new custom privilege with the specified
@@ -70,7 +75,8 @@ public interface PrivilegeManager {
* to any implementation specific constraint violations or if persisting
the
* custom privilege fails.
*/
- Privilege registerPrivilege(String privilegeName, boolean isAbstract,
- String[] declaredAggregateNames)
+ @NotNull
+ Privilege registerPrivilege(@NotNull String privilegeName, boolean
isAbstract,
+ @Nullable String[] declaredAggregateNames)
throws AccessDeniedException, NamespaceException,
RepositoryException;
}
Modified:
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/package-info.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/package-info.java?rev=1865416&r1=1865415&r2=1865416&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/package-info.java
(original)
+++
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/package-info.java
Mon Aug 19 08:03:52 2019
@@ -18,5 +18,5 @@
/**
* Jackrabbit extensions for authorization.
*/
[email protected]("2.4.1")
[email protected]("2.4.2")
package org.apache.jackrabbit.api.security.authorization;
Modified:
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/package-info.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/package-info.java?rev=1865416&r1=1865415&r2=1865416&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/package-info.java
(original)
+++
jackrabbit/oak/trunk/oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/package-info.java
Mon Aug 19 08:03:52 2019
@@ -18,5 +18,5 @@
/**
* Jackrabbit extensions for access control.
*/
[email protected]("2.4.0")
[email protected]("2.4.1")
package org.apache.jackrabbit.api.security;