Index: oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/package-info.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/package-info.java (revision 1865090) +++ oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/package-info.java (date 1565943528000) @@ -18,5 +18,5 @@ /** * Jackrabbit extensions for authorization. */ -@org.osgi.annotation.versioning.Version("2.4.1") +@org.osgi.annotation.versioning.Version("2.4.2") package org.apache.jackrabbit.api.security.authorization; Index: oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/PrivilegeManager.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/PrivilegeManager.java (revision 1865090) +++ oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/authorization/PrivilegeManager.java (date 1565943458000) @@ -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 @@ * @return all registered privileges. * @throws RepositoryException If an error occurs. */ + @NotNull Privilege[] getRegisteredPrivileges() throws RepositoryException; /** @@ -48,7 +52,8 @@ * @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 @@ * 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; } Index: oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlEntry.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlEntry.java (revision 1865090) +++ oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlEntry.java (date 1565943458000) @@ -21,6 +21,8 @@ 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 @@ * @return the names of the restrictions * @throws RepositoryException if an error occurs. */ + @NotNull String[] getRestrictionNames() throws RepositoryException; /** @@ -60,7 +63,8 @@ * @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 @@ * @throws RepositoryException if an error occurs. * @see #getRestriction(String) */ - Value[] getRestrictions(String restrictionName) throws RepositoryException; + @Nullable + Value[] getRestrictions(@NotNull String restrictionName) throws RepositoryException; } Index: oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlList.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlList.java (revision 1865090) +++ oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlList.java (date 1565943458000) @@ -27,6 +27,8 @@ 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 @@ * @see #addEntry(Principal, Privilege[], boolean, Map) * @throws RepositoryException If an error occurs. */ + @NotNull String[] getRestrictionNames() throws RepositoryException; /** @@ -57,7 +60,7 @@ * @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 true if the restriction is multivalued; false @@ -72,7 +75,7 @@ * @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 true if this policy does not yet define any @@ -103,7 +106,7 @@ * @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 @@ * @throws RepositoryException If another error occurs. * @see AccessControlList#addAccessControlEntry(Principal, Privilege[]) */ - boolean addEntry(Principal principal, Privilege[] privileges, - boolean isAllow, Map restrictions) + boolean addEntry(@NotNull Principal principal, @NotNull Privilege[] privileges, + boolean isAllow, @Nullable Map restrictions) throws AccessControlException, RepositoryException; /** @@ -164,9 +167,9 @@ * @see AccessControlList#addAccessControlEntry(Principal, Privilege[]) * @since 2.8 */ - boolean addEntry(Principal principal, Privilege[] privileges, - boolean isAllow, Map restrictions, - Map mvRestrictions) + boolean addEntry(@NotNull Principal principal, @NotNull Privilege[] privileges, + boolean isAllow, @Nullable Map restrictions, + @Nullable Map mvRestrictions) throws AccessControlException, RepositoryException; /** @@ -187,6 +190,6 @@ * @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; } Index: oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlManager.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlManager.java (revision 1865090) +++ oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlManager.java (date 1565943458000) @@ -28,6 +28,8 @@ 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 @@ * @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 AccessControlPolicy objects that have been set @@ -72,7 +75,8 @@ * 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 AccessControlPolicy objects that are in effect @@ -89,7 +93,8 @@ * policies by principal is not supported. * @throws RepositoryException If another error occurs. */ - AccessControlPolicy[] getEffectivePolicies(Set principals) throws AccessDeniedException, AccessControlException, UnsupportedRepositoryOperationException, RepositoryException; + @NotNull + AccessControlPolicy[] getEffectivePolicies(@NotNull Set principals) throws AccessDeniedException, AccessControlException, UnsupportedRepositoryOperationException, RepositoryException; /** * Returns whether the given set of Principals has the specified @@ -125,7 +130,7 @@ * READ_ACCESS_CONTROL privilege for the absPath node. * @throws RepositoryException if another error occurs. */ - public boolean hasPrivileges(String absPath, Set principals, Privilege[] privileges) + public boolean hasPrivileges(@Nullable String absPath, @NotNull Set principals, @NotNull Privilege[] privileges) throws PathNotFoundException, AccessDeniedException, RepositoryException; /** @@ -163,6 +168,7 @@ * privilege for the absPath node. * @throws RepositoryException if another error occurs. */ - public Privilege[] getPrivileges(String absPath, Set principals) + @NotNull + public Privilege[] getPrivileges(@Nullable String absPath, @NotNull Set principals) throws PathNotFoundException, AccessDeniedException, RepositoryException; } \ No newline at end of file Index: oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlPolicy.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlPolicy.java (revision 1865090) +++ oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlPolicy.java (date 1565943458000) @@ -18,6 +18,7 @@ import javax.jcr.security.AccessControlPolicy; +import org.jetbrains.annotations.Nullable; import org.osgi.annotation.versioning.ProviderType; /** @@ -33,5 +34,6 @@ * * @return the path of the node this policy has been created for. */ + @Nullable String getPath(); } \ No newline at end of file Index: oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/package-info.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/package-info.java (revision 1865090) +++ oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/package-info.java (date 1565943534000) @@ -18,5 +18,5 @@ /** * Jackrabbit extensions for access control. */ -@org.osgi.annotation.versioning.Version("2.4.0") +@org.osgi.annotation.versioning.Version("2.4.1") package org.apache.jackrabbit.api.security;