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 2015/03/31 14:41:34 UTC

svn commit: r1670318 [1/3] - in /jackrabbit/oak/trunk: oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/ oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ ...

Author: angela
Date: Tue Mar 31 12:41:32 2015
New Revision: 1670318

URL: http://svn.apache.org/r1670318
Log:
OAK-2674 :  Fix FindBug Issues (add missing annotations)

Modified:
    jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/DefaultSyncHandler.java
    jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/ExternalLoginModule.java
    jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/SyncResultImpl.java
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/TestIdentityProvider.java
    jackrabbit/oak/trunk/oak-auth-ldap/src/main/java/org/apache/jackrabbit/oak/security/authentication/ldap/impl/LdapIdentityProvider.java
    jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugAccessControlManager.java
    jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugConfiguration.java
    jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugImporter.java
    jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPermissionProvider.java
    jackrabbit/oak/trunk/oak-blob/src/main/java/org/apache/jackrabbit/oak/spi/blob/AbstractBlobStore.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/Oak.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/api/AuthInfo.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/api/Type.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/ImmutableRoot.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableRoot.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SecureNodeBuilder.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SecureNodeState.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SystemRoot.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/NodeStoreKernel.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/GlobalNameMapper.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/LocalNameMapper.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/NamePathMapper.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/NamePathMapperImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/DataStoreBlobStore.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentNodeBuilder.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeBuilder.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeState.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/CompositeIndexEditorProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexEditorProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexEditorProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/reference/ReferenceEditorProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/AbstractBlob.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/EmptyNodeState.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeBuilder.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeState.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MutableNodeState.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/ReadOnlyNodeTypeManager.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/PropertyTemplate.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeBuilder.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeState.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/tree/TreeLocation.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTree.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authentication/token/TokenAuthentication.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authentication/token/TokenConfigurationImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authentication/token/TokenLoginModule.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authentication/token/TokenProviderImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authentication/user/LoginModuleImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/AuthorizationConfigurationImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/AuthorizationContext.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlImporter.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlManagerImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAccessControlManager.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositePermissionProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/AllPermissions.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/CompiledPermissionImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MoveAwarePermissionValidator.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/NoPermissions.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntry.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionProviderImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/restriction/GlobPattern.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/restriction/PrincipalRestrictionProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/restriction/RestrictionProviderImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/principal/PrincipalProviderImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeConfigurationImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeContext.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeInitializer.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/AuthorizableProperties.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/AuthorizablePropertiesImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserAuthentication.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserConfigurationImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserContext.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserImporter.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/CompositeHook.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/EmptyHook.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/query/PropertyStateValue.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/CompositeConfiguration.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/ConfigurationParameters.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/OpenSecurityProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/SecurityConfiguration.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/AuthInfoImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/Authentication.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/OpenAuthorizationConfiguration.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/accesscontrol/ImmutableACL.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/permission/EmptyPermissionProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/permission/OpenPermissionProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/permission/TreePermission.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/restriction/AbstractRestrictionProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/restriction/RestrictionDefinition.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/restriction/RestrictionDefinitionImpl.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/principal/CompositePrincipalProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/user/action/AccessControlAction.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/user/action/AuthorizableActionProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/user/action/ClearMembershipAction.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/user/action/CompositeActionProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/user/action/DefaultAuthorizableActionProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/user/action/PasswordChangeAction.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/user/action/PasswordValidationAction.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/state/AbstractNodeState.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/state/ReadOnlyBuilder.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/whiteboard/WhiteboardAuthorizableActionProvider.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/whiteboard/WhiteboardIndexEditorProvider.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/NodeStoreDiffTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/AsyncIndexUpdateTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdateTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/MultiPropertyOrTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/MultipleIndicesTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/Oak2077QueriesTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/RelativePathTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeBuilderTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/segment/ExternalBlobTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/ACLTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAccessControlManagerTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/evaluation/JcrUUIDTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryProviderImplTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserAuthenticationTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/restriction/RestrictionDefinitionImplTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/restriction/RestrictionImplTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/user/action/PasswordValidationActionTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/state/NodeStoreTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/whiteboard/WhiteboardUserAuthenticationFactoryTest.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/PropertyDelegate.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/SessionDelegate.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/ItemImpl.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionContext.java
    jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/user/UserImportWithActionsTest.java
    jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorProvider.java
    jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/LuceneInitializerHelper.java
    jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/LuceneOakRepositoryStub.java
    jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexAggregationTest2.java
    jackrabbit/oak/trunk/oak-pojosr/pom.xml
    jackrabbit/oak/trunk/oak-pojosr/src/test/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactoryTest.java
    jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/JackrabbitNodeState.java

Modified: jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/DefaultSyncHandler.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/DefaultSyncHandler.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/DefaultSyncHandler.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/DefaultSyncHandler.java Tue Mar 31 12:41:32 2015
@@ -112,6 +112,7 @@ public class DefaultSyncHandler implemen
         this.config = config;
     }
 
+    @SuppressWarnings("UnusedDeclaration")
     @Activate
     private void activate(Map<String, Object> properties) {
         ConfigurationParameters cfg = ConfigurationParameters.of(properties);
@@ -149,6 +150,7 @@ public class DefaultSyncHandler implemen
     /**
      * {@inheritDoc}
      */
+    @Nonnull
     @Override
     public Iterator<SyncedIdentity> listIdentities(@Nonnull UserManager userManager) throws RepositoryException {
         final Iterator<Authorizable> iter = userManager.findAuthorizables("jcr:primaryType", null);
@@ -244,6 +246,7 @@ public class DefaultSyncHandler implemen
         /**
          * {@inheritDoc}
          */
+        @Nonnull
         @Override
         public SyncContext setKeepMissing(boolean keepMissing) {
             this.keepMissing = keepMissing;
@@ -261,6 +264,7 @@ public class DefaultSyncHandler implemen
         /**
          * {@inheritDoc}
          */
+        @Nonnull
         @Override
         public SyncContext setForceUserSync(boolean forceUserSync) {
             this.forceUserSync = forceUserSync;
@@ -275,6 +279,7 @@ public class DefaultSyncHandler implemen
             return forceGroupSync;
         }
 
+        @Nonnull
         public SyncContext setForceGroupSync(boolean forceGroupSync) {
             this.forceGroupSync = forceGroupSync;
             return this;

Modified: jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/ExternalLoginModule.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/ExternalLoginModule.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/ExternalLoginModule.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/ExternalLoginModule.java Tue Mar 31 12:41:32 2015
@@ -394,6 +394,7 @@ public class ExternalLoginModule extends
     /**
      * @return An immutable set containing only the {@link SimpleCredentials} class.
      */
+    @Nonnull
     @Override
     protected Set<Class> getSupportedCredentials() {
         // TODO: maybe delegate getSupportedCredentials to IDP

Modified: jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/SyncResultImpl.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/SyncResultImpl.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/SyncResultImpl.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/SyncResultImpl.java Tue Mar 31 12:41:32 2015
@@ -16,6 +16,9 @@
  */
 package org.apache.jackrabbit.oak.spi.security.authentication.external.impl;
 
+import javax.annotation.CheckForNull;
+import javax.annotation.Nonnull;
+
 import org.apache.jackrabbit.oak.spi.security.authentication.external.SyncResult;
 
 /**
@@ -32,10 +35,12 @@ public class SyncResultImpl implements S
         this.status = status;
     }
 
+    @CheckForNull
     public SyncedIdentityImpl getIdentity() {
         return id;
     }
 
+    @Nonnull
     public Status getStatus() {
         return status;
     }

Modified: jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/TestIdentityProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/TestIdentityProvider.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/TestIdentityProvider.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/TestIdentityProvider.java Tue Mar 31 12:41:32 2015
@@ -97,11 +97,13 @@ public class TestIdentityProvider implem
         return externalGroups.get(name.toLowerCase());
     }
 
+    @Nonnull
     @Override
     public Iterator<ExternalUser> listUsers() throws ExternalIdentityException {
         return externalUsers.values().iterator();
     }
 
+    @Nonnull
     @Override
     public Iterator<ExternalGroup> listGroups() throws ExternalIdentityException {
         return externalGroups.values().iterator();
@@ -120,11 +122,13 @@ public class TestIdentityProvider implem
             id = new ExternalIdentityRef(userId, "test");
         }
 
+        @Nonnull
         @Override
         public String getId() {
             return userId;
         }
 
+        @Nonnull
         @Override
         public String getPrincipalName() {
             return userId;
@@ -141,11 +145,13 @@ public class TestIdentityProvider implem
             return null;
         }
 
+        @Nonnull
         @Override
         public Iterable<ExternalIdentityRef> getDeclaredGroups() {
             return groups;
         }
 
+        @Nonnull
         @Override
         public Map<String, ?> getProperties() {
             return props;

Modified: jackrabbit/oak/trunk/oak-auth-ldap/src/main/java/org/apache/jackrabbit/oak/security/authentication/ldap/impl/LdapIdentityProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-ldap/src/main/java/org/apache/jackrabbit/oak/security/authentication/ldap/impl/LdapIdentityProvider.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-ldap/src/main/java/org/apache/jackrabbit/oak/security/authentication/ldap/impl/LdapIdentityProvider.java (original)
+++ jackrabbit/oak/trunk/oak-auth-ldap/src/main/java/org/apache/jackrabbit/oak/security/authentication/ldap/impl/LdapIdentityProvider.java Tue Mar 31 12:41:32 2015
@@ -310,6 +310,7 @@ public class LdapIdentityProvider implem
         }
     }
 
+    @Nonnull
     @Override
     public Iterator<ExternalUser> listUsers() throws ExternalIdentityException {
         DebugTimer timer = new DebugTimer();
@@ -348,6 +349,7 @@ public class LdapIdentityProvider implem
         }
     }
 
+    @Nonnull
     @Override
     public Iterator<ExternalGroup> listGroups() throws ExternalIdentityException {
         DebugTimer timer = new DebugTimer();

Modified: jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugAccessControlManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugAccessControlManager.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugAccessControlManager.java (original)
+++ jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugAccessControlManager.java Tue Mar 31 12:41:32 2015
@@ -91,7 +91,7 @@ class CugAccessControlManager extends Ab
 
     public AccessControlPolicy[] getPolicies(String absPath) throws RepositoryException {
         String oakPath = getOakPath(absPath);
-        if (isSupportedPath(oakPath)) {
+        if (oakPath != null && isSupportedPath(oakPath)) {
             CugPolicy cug = getCugPolicy(oakPath);
             if (cug != null) {
                 return new AccessControlPolicy[]{cug};
@@ -107,7 +107,7 @@ class CugAccessControlManager extends Ab
         Root r = getRoot().getContentSession().getLatestRoot();
         List<AccessControlPolicy> effective = new ArrayList<AccessControlPolicy>();
         while (!Strings.isNullOrEmpty(oakPath)) {
-            if (isSupportedPath(oakPath)) {
+            if (oakPath != null && isSupportedPath(oakPath)) {
                 CugPolicy cug = getCugPolicy(oakPath, r.getTree(oakPath));
                 if (cug != null) {
                     effective.add(cug);
@@ -120,7 +120,7 @@ class CugAccessControlManager extends Ab
 
     public AccessControlPolicyIterator getApplicablePolicies(String absPath) throws RepositoryException {
         String oakPath = getOakPath(absPath);
-        if (!isSupportedPath(oakPath)) {
+        if (oakPath == null || !isSupportedPath(oakPath)) {
             return AccessControlPolicyIteratorAdapter.EMPTY;
         } else {
             CugPolicy cug = getCugPolicy(oakPath);

Modified: jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugConfiguration.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugConfiguration.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugConfiguration.java (original)
+++ jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugConfiguration.java Tue Mar 31 12:41:32 2015
@@ -108,18 +108,21 @@ public class CugConfiguration extends Co
         super(securityProvider, securityProvider.getParameters(NAME));
     }
 
+    @Nonnull
     @Override
-    public AccessControlManager getAccessControlManager(Root root, NamePathMapper namePathMapper) {
+    public AccessControlManager getAccessControlManager(@Nonnull Root root, @Nonnull NamePathMapper namePathMapper) {
         return new CugAccessControlManager(root, namePathMapper, getSecurityProvider());
     }
 
+    @Nonnull
     @Override
     public RestrictionProvider getRestrictionProvider() {
         return RestrictionProvider.EMPTY;
     }
 
+    @Nonnull
     @Override
-    public PermissionProvider getPermissionProvider(Root root, String workspaceName, Set<Principal> principals) {
+    public PermissionProvider getPermissionProvider(@Nonnull Root root, @Nonnull String workspaceName, @Nonnull Set<Principal> principals) {
         ConfigurationParameters params = getParameters();
         boolean enabled = params.getConfigValue(CugConstants.PARAM_CUG_ENABLED, false);
 
@@ -131,6 +134,7 @@ public class CugConfiguration extends Co
         }
     }
 
+    @Nonnull
     @Override
     public String getName() {
         return AuthorizationConfiguration.NAME;
@@ -141,7 +145,7 @@ public class CugConfiguration extends Co
     public RepositoryInitializer getRepositoryInitializer() {
         return new RepositoryInitializer() {
             @Override
-            public void initialize(NodeBuilder builder) {
+            public void initialize(@Nonnull NodeBuilder builder) {
                 NodeState base = builder.getNodeState();
                 NodeStore store = new MemoryNodeStore(base);
 
@@ -158,15 +162,17 @@ public class CugConfiguration extends Co
 
     @Nonnull
     @Override
-    public List<? extends ValidatorProvider> getValidators(String workspaceName, Set<Principal> principals, MoveTracker moveTracker) {
+    public List<? extends ValidatorProvider> getValidators(@Nonnull String workspaceName, @Nonnull Set<Principal> principals, @Nonnull MoveTracker moveTracker) {
         return ImmutableList.of(new CugValidatorProvider());
     }
 
+    @Nonnull
     @Override
     public List<ProtectedItemImporter> getProtectedItemImporters() {
         return Collections.<ProtectedItemImporter>singletonList(new CugImporter());
     }
 
+    @Nonnull
     @Override
     public Context getContext() {
         return CugContext.INSTANCE;

Modified: jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugImporter.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugImporter.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugImporter.java (original)
+++ jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugImporter.java Tue Mar 31 12:41:32 2015
@@ -60,7 +60,7 @@ class CugImporter implements ProtectedPr
 
     //----------------------------------------------< ProtectedItemImporter >---
     @Override
-    public boolean init(@Nonnull Session session, @Nonnull Root root, @Nonnull NamePathMapper namePathMapper, boolean isWorkspaceImport, int uuidBehavior, @Nonnull ReferenceChangeTracker referenceTracker, SecurityProvider securityProvider) {
+    public boolean init(@Nonnull Session session, @Nonnull Root root, @Nonnull NamePathMapper namePathMapper, boolean isWorkspaceImport, int uuidBehavior, @Nonnull ReferenceChangeTracker referenceTracker, @Nonnull SecurityProvider securityProvider) {
         if (initialized) {
             throw new IllegalStateException("Already initialized");
         }

Modified: jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPermissionProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPermissionProvider.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPermissionProvider.java (original)
+++ jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPermissionProvider.java Tue Mar 31 12:41:32 2015
@@ -97,17 +97,17 @@ class CugPermissionProvider implements P
 
     //---------------------------------------< AggregatedPermissionProvider >---
     @Override
-    public boolean handles(String path, String jcrAction) {
+    public boolean handles(@Nonnull String path, @Nonnull String jcrAction) {
         return isReadAction(jcrAction) && includesCug(immutableRoot.getTree(path), path);
     }
 
     @Override
-    public boolean handles(@Nonnull Tree tree, PrivilegeBits privilegeBits) {
+    public boolean handles(@Nonnull Tree tree, @Nonnull PrivilegeBits privilegeBits) {
         return READ_PRIVILEGE_BITS.contains(privilegeBits) && includesCug(tree, tree.getPath());
     }
 
     @Override
-    public boolean handles(Tree tree, long permission) {
+    public boolean handles(@Nonnull Tree tree, long permission) {
         return isRead(permission) && includesCug(tree, tree.getPath());
     }
 
@@ -131,9 +131,10 @@ class CugPermissionProvider implements P
         immutableRoot = RootFactory.createReadOnlyRoot(root);
     }
 
+    @Nonnull
     @Override
-    public Set<String> getPrivileges(Tree tree) {
-        if (canRead(tree)) {
+    public Set<String> getPrivileges(@Nullable Tree tree) {
+        if (tree != null && canRead(tree)) {
             return READ_PRIVILEGE_NAMES;
         } else {
             return Collections.emptySet();
@@ -141,7 +142,10 @@ class CugPermissionProvider implements P
     }
 
     @Override
-    public boolean hasPrivileges(Tree tree, String... privilegeNames) {
+    public boolean hasPrivileges(@Nullable Tree tree, @Nonnull String... privilegeNames) {
+        if (tree == null) {
+            return false;
+        }
         for (String privilegeName : privilegeNames) {
             if (!READ_PRIVILEGE_NAMES.contains(privilegeName)) {
                 return false;
@@ -150,13 +154,15 @@ class CugPermissionProvider implements P
         return canRead(tree);
     }
 
+    @Nonnull
     @Override
     public RepositoryPermission getRepositoryPermission() {
         throw new UnsupportedOperationException("Not supported");
     }
 
+    @Nonnull
     @Override
-    public TreePermission getTreePermission(Tree tree, TreePermission parentPermission) {
+    public TreePermission getTreePermission(@Nonnull Tree tree, @Nonnull TreePermission parentPermission) {
         Tree immutableTree = getImmutableTree(tree);
         if (parentPermission == TreePermission.EMPTY && !immutableTree.isRoot() || isAcContent(immutableTree, true)) {
             return TreePermission.EMPTY;
@@ -183,7 +189,7 @@ class CugPermissionProvider implements P
     }
 
     @Override
-    public boolean isGranted(Tree tree, PropertyState property, long permissions) {
+    public boolean isGranted(@Nonnull Tree tree, PropertyState property, long permissions) {
         if (isRead(permissions)) {
             return canRead(tree);
         } else {
@@ -192,7 +198,7 @@ class CugPermissionProvider implements P
     }
 
     @Override
-    public boolean isGranted(String oakPath, String jcrActions) {
+    public boolean isGranted(@Nonnull String oakPath, @Nonnull String jcrActions) {
         TreeLocation location = TreeLocation.create(immutableRoot, oakPath);
         boolean isAcContent = isAcContent(location);
         long permissions = Permissions.getPermissions(jcrActions, location, isAcContent);
@@ -322,8 +328,9 @@ class CugPermissionProvider implements P
             this.tree = tree;
         }
 
+        @Nonnull
         @Override
-        public TreePermission getChildPermission(String childName, NodeState childState) {
+        public TreePermission getChildPermission(@Nonnull String childName, @Nonnull NodeState childState) {
             return getTreePermission(tree.getChild(childName), this);
         }
 
@@ -371,8 +378,9 @@ class CugPermissionProvider implements P
             this.allow = allow;
         }
 
+        @Nonnull
         @Override
-        public TreePermission getChildPermission(String childName, NodeState childState) {
+        public TreePermission getChildPermission(@Nonnull String childName, @Nonnull NodeState childState) {
             return getTreePermission(tree.getChild(childName), this);
         }
 

Modified: jackrabbit/oak/trunk/oak-blob/src/main/java/org/apache/jackrabbit/oak/spi/blob/AbstractBlobStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-blob/src/main/java/org/apache/jackrabbit/oak/spi/blob/AbstractBlobStore.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-blob/src/main/java/org/apache/jackrabbit/oak/spi/blob/AbstractBlobStore.java (original)
+++ jackrabbit/oak/trunk/oak-blob/src/main/java/org/apache/jackrabbit/oak/spi/blob/AbstractBlobStore.java Tue Mar 31 12:41:32 2015
@@ -38,6 +38,7 @@ import java.util.NoSuchElementException;
 import java.util.WeakHashMap;
 import java.util.concurrent.atomic.AtomicReference;
 
+import javax.annotation.Nonnull;
 import javax.crypto.Mac;
 import javax.crypto.spec.SecretKeySpec;
 
@@ -202,7 +203,7 @@ public abstract class AbstractBlobStore
     //--------------------------------------------< Blob Reference >
 
     @Override
-    public String getReference(String blobId) {
+    public String getReference(@Nonnull String blobId) {
         checkNotNull(blobId, "BlobId must be specified");
         try {
             Mac mac = Mac.getInstance(ALGORITHM);
@@ -219,7 +220,7 @@ public abstract class AbstractBlobStore
     }
 
     @Override
-    public String getBlobId(String reference) {
+    public String getBlobId(@Nonnull String reference) {
         checkNotNull(reference, "BlobId must be specified");
         int colon = reference.indexOf(':');
         if (colon != -1) {

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/Oak.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/Oak.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/Oak.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/Oak.java Tue Mar 31 12:41:32 2015
@@ -149,7 +149,7 @@ public class Oak {
             private final AtomicInteger counter = new AtomicInteger();
 
             @Override
-            public Thread newThread(Runnable r) {
+            public Thread newThread(@Nonnull Runnable r) {
                 Thread thread = new Thread(r, createName());
                 thread.setDaemon(true);
                 return thread;
@@ -176,7 +176,7 @@ public class Oak {
             private final AtomicInteger counter = new AtomicInteger();
 
             @Override
-            public Thread newThread(Runnable r) {
+            public Thread newThread(@Nonnull Runnable r) {
                 Thread thread = new Thread(r, createName());
                 thread.setDaemon(true);
                 thread.setPriority(Thread.MIN_PRIORITY);

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/api/AuthInfo.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/api/AuthInfo.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/api/AuthInfo.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/api/AuthInfo.java Tue Mar 31 12:41:32 2015
@@ -46,6 +46,7 @@ public interface AuthInfo {
             return null;
         }
 
+        @Nonnull
         @Override
         public Set<Principal> getPrincipals() {
             return Collections.emptySet();

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/api/Type.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/api/Type.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/api/Type.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/api/Type.java Tue Mar 31 12:41:32 2015
@@ -21,6 +21,7 @@ package org.apache.jackrabbit.oak.api;
 import java.math.BigDecimal;
 import java.util.Map;
 
+import javax.annotation.Nonnull;
 import javax.jcr.PropertyType;
 
 import com.google.common.base.Objects;
@@ -240,7 +241,7 @@ public final class Type<T> implements Co
     //--------------------------------------------------------< Comparable >--
 
     @Override
-    public int compareTo(Type<?> that) {
+    public int compareTo(@Nonnull Type<?> that) {
         return ComparisonChain.start()
                 .compare(tag, that.tag)
                 .compareFalseFirst(array, that.array)

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/ImmutableRoot.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/ImmutableRoot.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/ImmutableRoot.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/ImmutableRoot.java Tue Mar 31 12:41:32 2015
@@ -104,7 +104,7 @@ public final class ImmutableRoot impleme
     }
 
     @Override
-    public void commit(Map<String, Object> info) {
+    public void commit(@Nonnull Map<String, Object> info) {
         throw new UnsupportedOperationException();
     }
 

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableRoot.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableRoot.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableRoot.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableRoot.java Tue Mar 31 12:41:32 2015
@@ -174,6 +174,7 @@ class MutableRoot implements Root {
 
     //---------------------------------------------------------------< Root >---
 
+    @Nonnull
     @Override
     public ContentSession getContentSession() {
         return session;
@@ -209,6 +210,7 @@ class MutableRoot implements Root {
         return success;
     }
 
+    @Nonnull
     @Override
     public MutableTree getTree(@Nonnull String path) {
         checkLive();
@@ -237,7 +239,7 @@ class MutableRoot implements Root {
     }
 
     @Override
-    public void commit(Map<String, Object> info) throws CommitFailedException {
+    public void commit(@Nonnull Map<String, Object> info) throws CommitFailedException {
         checkLive();
         ContentSession session = getContentSession();
         CommitInfo commitInfo = new CommitInfo(
@@ -294,6 +296,7 @@ class MutableRoot implements Root {
         return modCount > 0;
     }
 
+    @Nonnull
     @Override
     public QueryEngine getQueryEngine() {
         checkLive();

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java Tue Mar 31 12:41:32 2015
@@ -88,7 +88,7 @@ final class MutableTree extends Abstract
 
     @Override
     @Nonnull
-    protected MutableTree createChild(String name) throws IllegalArgumentException {
+    protected MutableTree createChild(@Nonnull String name) throws IllegalArgumentException {
         return new MutableTree(root, pendingMoves, this,
                 nodeBuilder.getChildNode(checkNotNull(name)), name);
     }

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SecureNodeBuilder.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SecureNodeBuilder.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SecureNodeBuilder.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SecureNodeBuilder.java Tue Mar 31 12:41:32 2015
@@ -173,7 +173,7 @@ class SecureNodeBuilder implements NodeB
 
 
     @Override
-    public boolean moveTo(NodeBuilder newParent, String newName) {
+    public boolean moveTo(@Nonnull NodeBuilder newParent, @Nonnull String newName) {
         return exists() && builder.moveTo(newParent, newName);
     }
 
@@ -216,7 +216,7 @@ class SecureNodeBuilder implements NodeB
     }
 
     @Override
-    public boolean getBoolean(String name) {
+    public boolean getBoolean(@Nonnull String name) {
         PropertyState property = getProperty(name);
         return property != null
                 && property.getType() == BOOLEAN
@@ -317,11 +317,12 @@ class SecureNodeBuilder implements NodeB
     }
 
     @Override @Nonnull
-    public NodeBuilder setChildNode(String name, @Nonnull NodeState nodeState) {
+    public NodeBuilder setChildNode(@Nonnull String name, @Nonnull NodeState nodeState) {
         builder.setChildNode(name, nodeState);
         return new SecureNodeBuilder(this, name);
     }
 
+    @Nonnull
     @Override
     public NodeBuilder getChildNode(@Nonnull String name) {
         return new SecureNodeBuilder(this, name);

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SecureNodeState.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SecureNodeState.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SecureNodeState.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SecureNodeState.java Tue Mar 31 12:41:32 2015
@@ -62,7 +62,7 @@ class SecureNodeState extends AbstractNo
     }
 
     @Override @CheckForNull
-    public PropertyState getProperty(String name) {
+    public PropertyState getProperty(@Nonnull String name) {
         PropertyState property = state.getProperty(name);
         if (property != null && treePermission.canRead(property)) {
             return property;
@@ -108,6 +108,7 @@ class SecureNodeState extends AbstractNo
         }
     }
 
+    @Nonnull
     @Override
     public NodeState getChildNode(@Nonnull String name) {
         NodeState child = state.getChildNode(name);

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SystemRoot.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SystemRoot.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SystemRoot.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/SystemRoot.java Tue Mar 31 12:41:32 2015
@@ -64,6 +64,7 @@ public class SystemRoot extends MutableR
                 new ContentSessionImpl(
                         LOGIN_CONTEXT, securityProvider, workspaceName,
                         store, hook, queryEngineSettings, indexProvider) {
+                    @Nonnull
                     @Override
                     public Root getLatestRoot() {
                         return new SystemRoot(

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/NodeStoreKernel.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/NodeStoreKernel.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/NodeStoreKernel.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/NodeStoreKernel.java Tue Mar 31 12:41:32 2015
@@ -674,6 +674,7 @@ public class NodeStoreKernel implements
                     public long length() {
                         return b.length();
                     }
+                    @Nonnull
                     @Override
                     public InputStream getNewStream() {
                         return b.getNewStream();

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/GlobalNameMapper.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/GlobalNameMapper.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/GlobalNameMapper.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/GlobalNameMapper.java Tue Mar 31 12:41:32 2015
@@ -130,6 +130,7 @@ public class GlobalNameMapper implements
         return oakName;
     }
 
+    @Nonnull
     @Override
     public Map<String, String> getSessionLocalMappings() {
         return Collections.emptyMap();

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/LocalNameMapper.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/LocalNameMapper.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/LocalNameMapper.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/LocalNameMapper.java Tue Mar 31 12:41:32 2015
@@ -52,7 +52,7 @@ public class LocalNameMapper extends Glo
     }
 
     @Override @Nonnull
-    public synchronized String getJcrName(String oakName) {
+    public synchronized String getJcrName(@Nonnull String oakName) {
         checkNotNull(oakName);
         checkArgument(!oakName.startsWith(":"), oakName); // hidden name
         checkArgument(!isExpandedName(oakName), oakName); // expanded name
@@ -96,7 +96,7 @@ public class LocalNameMapper extends Glo
     }
 
     @Override @CheckForNull
-    public synchronized String getOakNameOrNull(String jcrName) {
+    public synchronized String getOakNameOrNull(@Nonnull String jcrName) {
         checkNotNull(jcrName);
 
         if (jcrName.startsWith("{")) {

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/NamePathMapper.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/NamePathMapper.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/NamePathMapper.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/NamePathMapper.java Tue Mar 31 12:41:32 2015
@@ -37,7 +37,7 @@ public interface NamePathMapper extends
     class Default implements NamePathMapper {
 
         @Override
-        public String getOakNameOrNull(String jcrName) {
+        public String getOakNameOrNull(@Nonnull String jcrName) {
             return jcrName;
         }
 
@@ -47,13 +47,15 @@ public interface NamePathMapper extends
             return jcrName;
         }
 
+        @Nonnull
         @Override
         public Map<String, String> getSessionLocalMappings() {
             return Collections.emptyMap();
         }
 
+        @Nonnull
         @Override
-        public String getJcrName(String oakName) {
+        public String getJcrName(@Nonnull String oakName) {
             return oakName;
         }
 

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/NamePathMapperImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/NamePathMapperImpl.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/NamePathMapperImpl.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/NamePathMapperImpl.java Tue Mar 31 12:41:32 2015
@@ -54,7 +54,7 @@ public class NamePathMapperImpl implemen
 
     //---------------------------------------------------------< NameMapper >---
     @Override
-    public String getOakNameOrNull(String jcrName) {
+    public String getOakNameOrNull(@Nonnull String jcrName) {
         return nameMapper.getOakNameOrNull(jcrName);
     }
 
@@ -64,8 +64,9 @@ public class NamePathMapperImpl implemen
         return nameMapper.getOakName(jcrName);
     }
 
+    @Nonnull
     @Override
-    public String getJcrName(String oakName) {
+    public String getJcrName(@Nonnull String oakName) {
         return nameMapper.getJcrName(oakName);
     }
 

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/DataStoreBlobStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/DataStoreBlobStore.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/DataStoreBlobStore.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/DataStoreBlobStore.java Tue Mar 31 12:41:32 2015
@@ -30,6 +30,7 @@ import java.util.List;
 import java.util.concurrent.Callable;
 import java.util.concurrent.ExecutionException;
 
+import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 import javax.jcr.RepositoryException;
 
@@ -230,7 +231,7 @@ public class DataStoreBlobStore implemen
     }
 
     @Override
-    public String getBlobId(String reference) {
+    public String getBlobId(@Nonnull String reference) {
         checkNotNull(reference);
         DataRecord record;
         try {
@@ -245,7 +246,7 @@ public class DataStoreBlobStore implemen
     }
 
     @Override
-    public String getReference(String encodedBlobId) {
+    public String getReference(@Nonnull String encodedBlobId) {
         checkNotNull(encodedBlobId);
         String blobId = extractBlobId(encodedBlobId);
         //Reference are not created for in memory record

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentNodeBuilder.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentNodeBuilder.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentNodeBuilder.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentNodeBuilder.java Tue Mar 31 12:41:32 2015
@@ -53,7 +53,7 @@ abstract class AbstractDocumentNodeBuild
      */
     @Override
     @Nonnull
-    public NodeBuilder setChildNode(String name, NodeState state) {
+    public NodeBuilder setChildNode(@Nonnull String name, @Nonnull NodeState state) {
         NodeBuilder builder = super.setChildNode(name, EMPTY_NODE);
         for (PropertyState property : state.getProperties()) {
             builder.setProperty(property);
@@ -69,7 +69,7 @@ abstract class AbstractDocumentNodeBuild
 
     @Override
     @Nonnull
-    public DocumentNodeBuilder getChildNode(String name) {
+    public DocumentNodeBuilder getChildNode(@Nonnull String name) {
         checkValidName(name);
         return createChildBuilder(name);
     }

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeBuilder.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeBuilder.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeBuilder.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeBuilder.java Tue Mar 31 12:41:32 2015
@@ -64,7 +64,7 @@ class DocumentNodeBuilder extends Abstra
     }
 
     @Override
-    public boolean moveTo(NodeBuilder newParent, String newName) {
+    public boolean moveTo(@Nonnull NodeBuilder newParent, @Nonnull String newName) {
         checkNotNull(newParent);
         checkValidName(newName);
         if (isRoot() || !exists() || newParent.hasChildNode(newName)) {

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeState.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeState.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeState.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeState.java Tue Mar 31 12:41:32 2015
@@ -140,12 +140,12 @@ public class DocumentNodeState extends A
     }
 
     @Override
-    public PropertyState getProperty(String name) {
+    public PropertyState getProperty(@Nonnull String name) {
         return properties.get(name);
     }
 
     @Override
-    public boolean hasProperty(String name) {
+    public boolean hasProperty(@Nonnull String name) {
         return properties.containsKey(name);
     }
 
@@ -156,7 +156,7 @@ public class DocumentNodeState extends A
     }
 
     @Override
-    public boolean hasChildNode(String name) {
+    public boolean hasChildNode(@Nonnull String name) {
         if (!hasChildren || !isValidName(name)) {
             return false;
         } else {

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/CompositeIndexEditorProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/CompositeIndexEditorProvider.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/CompositeIndexEditorProvider.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/CompositeIndexEditorProvider.java Tue Mar 31 12:41:32 2015
@@ -43,7 +43,7 @@ public class CompositeIndexEditorProvide
             return new IndexEditorProvider() {
                 @Override
                 public Editor getIndexEditor(
-                        String type, NodeBuilder builder, NodeState root, IndexUpdateCallback callback) {
+                        @Nonnull String type, @Nonnull NodeBuilder builder, @Nonnull NodeState root, @Nonnull IndexUpdateCallback callback) {
                     return null;
                 }
             };
@@ -67,7 +67,7 @@ public class CompositeIndexEditorProvide
 
     @Override
     public Editor getIndexEditor(
-            String type, NodeBuilder builder, NodeState root, IndexUpdateCallback callback)
+            @Nonnull String type, @Nonnull NodeBuilder builder, @Nonnull NodeState root, @Nonnull IndexUpdateCallback callback)
             throws CommitFailedException {
         List<Editor> indexes = Lists.newArrayList();
         for (IndexEditorProvider provider : providers) {

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexEditorProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexEditorProvider.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexEditorProvider.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexEditorProvider.java Tue Mar 31 12:41:32 2015
@@ -33,11 +33,11 @@ public interface IndexEditorProvider {
 
     /**
      * Each provider knows how to produce a certain type of index. If the
-     * <code>type</code> param is of an unknown value, the provider is expected
+     * {@code type} param is of an unknown value, the provider is expected
      * to return {@code null}.
      * 
      * <p>
-     * The <code>definition</code> builder must points to the index definition
+     * The {@code definition} builder must points to the index definition
      * node under which the indexer is expected to store the index content.
      * </p>
      * 

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexEditorProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexEditorProvider.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexEditorProvider.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexEditorProvider.java Tue Mar 31 12:41:32 2015
@@ -16,6 +16,8 @@
  */
 package org.apache.jackrabbit.oak.plugins.index.property;
 
+import javax.annotation.Nonnull;
+
 import org.apache.felix.scr.annotations.Component;
 import org.apache.felix.scr.annotations.Service;
 import org.apache.jackrabbit.oak.plugins.index.IndexEditorProvider;
@@ -39,7 +41,7 @@ public class PropertyIndexEditorProvider
 
     @Override
     public Editor getIndexEditor(
-            String type, NodeBuilder definition, NodeState root, IndexUpdateCallback callback) {
+            @Nonnull String type, @Nonnull NodeBuilder definition, @Nonnull NodeState root, @Nonnull IndexUpdateCallback callback) {
         if (TYPE.equals(type)) {
             return new PropertyIndexEditor(definition, root, callback);
         }

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/reference/ReferenceEditorProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/reference/ReferenceEditorProvider.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/reference/ReferenceEditorProvider.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/reference/ReferenceEditorProvider.java Tue Mar 31 12:41:32 2015
@@ -16,6 +16,8 @@
  */
 package org.apache.jackrabbit.oak.plugins.index.reference;
 
+import javax.annotation.Nonnull;
+
 import static org.apache.jackrabbit.oak.plugins.index.reference.NodeReferenceConstants.TYPE;
 
 import org.apache.felix.scr.annotations.Component;
@@ -31,8 +33,8 @@ import org.apache.jackrabbit.oak.spi.sta
 public class ReferenceEditorProvider implements IndexEditorProvider {
 
     @Override
-    public Editor getIndexEditor(String type, NodeBuilder definition,
-            NodeState root, IndexUpdateCallback callback) {
+    public Editor getIndexEditor(@Nonnull String type, @Nonnull NodeBuilder definition,
+            @Nonnull NodeState root, @Nonnull IndexUpdateCallback callback) {
         if (TYPE.equals(type)) {
             return new ReferenceEditor(definition, root);
         }

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/AbstractBlob.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/AbstractBlob.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/AbstractBlob.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/AbstractBlob.java Tue Mar 31 12:41:32 2015
@@ -1,166 +1,168 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.jackrabbit.oak.plugins.memory;
-
-import java.io.IOException;
-import java.io.InputStream;
-
-import javax.annotation.CheckForNull;
-
-import com.google.common.hash.HashCode;
-import com.google.common.hash.Hashing;
-import com.google.common.io.ByteStreams;
-import com.google.common.io.InputSupplier;
-
-import org.apache.jackrabbit.oak.api.Blob;
-
-/**
- * Abstract base class for {@link Blob} implementations.
- * This base class provides default implementations for
- * {@code hashCode} and {@code equals}.
- */
-public abstract class AbstractBlob implements Blob {
-
-    private static InputSupplier<InputStream> supplier(final Blob blob) {
-        return new InputSupplier<InputStream>() {
-            @Override
-            public InputStream getInput() throws IOException {
-                return blob.getNewStream();
-            }
-        };
-    }
-
-    public static boolean equal(Blob a, Blob b) {
-        // shortcut: first compare lengths if known in advance
-        long al = a.length();
-        long bl = b.length();
-        if (al != -1 && bl != -1 && al != bl) {
-            return false; // blobs not equal, given known and non-equal lengths
-        }
-
-        try {
-            return ByteStreams.equal(supplier(a), supplier(b));
-        } catch (IOException e) {
-            throw new IllegalStateException("Blob equality check failed", e);
-        }
-    }
-
-    public static HashCode calculateSha256(final Blob blob) {
-        AbstractBlob ab;
-        if (blob instanceof AbstractBlob) {
-            ab = ((AbstractBlob) blob);
-        } else {
-            ab = new AbstractBlob() {
-                @Override
-                public long length() {
-                    return blob.length();
-                }
-                @Override
-                public InputStream getNewStream() {
-                    return blob.getNewStream();
-                }
-            };
-        }
-        return ab.getSha256();
-    }
-
-    private HashCode hashCode; // synchronized access
-
-    protected AbstractBlob(HashCode hashCode) {
-        this.hashCode = hashCode;
-    }
-
-    protected AbstractBlob() {
-        this(null);
-    }
-
-    private synchronized HashCode getSha256() {
-        // Blobs are immutable so we can safely cache the hash
-        if (hashCode == null) {
-            try {
-                hashCode = ByteStreams.hash(supplier(this), Hashing.sha256());
-            } catch (IOException e) {
-                throw new IllegalStateException("Hash calculation failed", e);
-            }
-        }
-        return hashCode;
-    }
-
-    /**
-     * This hash code implementation returns the hash code of the underlying stream
-     * @return a byte array of the hash
-     */
-    protected byte[] sha256() {
-        return getSha256().asBytes();
-    }
-
-    //--------------------------------------------------------------< Blob >--
-
-    @Override @CheckForNull
-    public String getReference() {
-        return null;
-    }
-
-    @Override
-    public String getContentIdentity() {
-        return null;
-    }
-
-//------------------------------------------------------------< Object >--
-
-    /**
-     * To {@code Blob} instances are considered equal iff they have the
-     * same SHA-256 hash code  are equal.
-     * @param other
-     */
-    @Override
-    public boolean equals(Object other) {
-        if (other == this) {
-            return true;
-        }
-
-        if (other instanceof AbstractBlob) {
-            AbstractBlob that = (AbstractBlob) other;
-            // optimize the comparison if both this and the other blob
-            // already have pre-computed SHA-256 hash codes
-            synchronized (this) {
-                if (hashCode != null) {
-                    synchronized (that) {
-                        if (that.hashCode != null) {
-                            return hashCode.equals(that.hashCode);
-                        }
-                    }
-                }
-            }
-        }
-
-        return other instanceof Blob && equal(this, (Blob) other);
-    }
-
-    @Override
-    public int hashCode() {
-        return 0; // see Blob javadoc
-    }
-
-    @Override
-    public String toString() {
-        return getSha256().toString();
-    }
-
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.jackrabbit.oak.plugins.memory;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import javax.annotation.CheckForNull;
+import javax.annotation.Nonnull;
+
+import com.google.common.hash.HashCode;
+import com.google.common.hash.Hashing;
+import com.google.common.io.ByteStreams;
+import com.google.common.io.InputSupplier;
+
+import org.apache.jackrabbit.oak.api.Blob;
+
+/**
+ * Abstract base class for {@link Blob} implementations.
+ * This base class provides default implementations for
+ * {@code hashCode} and {@code equals}.
+ */
+public abstract class AbstractBlob implements Blob {
+
+    private static InputSupplier<InputStream> supplier(final Blob blob) {
+        return new InputSupplier<InputStream>() {
+            @Override
+            public InputStream getInput() throws IOException {
+                return blob.getNewStream();
+            }
+        };
+    }
+
+    public static boolean equal(Blob a, Blob b) {
+        // shortcut: first compare lengths if known in advance
+        long al = a.length();
+        long bl = b.length();
+        if (al != -1 && bl != -1 && al != bl) {
+            return false; // blobs not equal, given known and non-equal lengths
+        }
+
+        try {
+            return ByteStreams.equal(supplier(a), supplier(b));
+        } catch (IOException e) {
+            throw new IllegalStateException("Blob equality check failed", e);
+        }
+    }
+
+    public static HashCode calculateSha256(final Blob blob) {
+        AbstractBlob ab;
+        if (blob instanceof AbstractBlob) {
+            ab = ((AbstractBlob) blob);
+        } else {
+            ab = new AbstractBlob() {
+                @Override
+                public long length() {
+                    return blob.length();
+                }
+                @Nonnull
+                @Override
+                public InputStream getNewStream() {
+                    return blob.getNewStream();
+                }
+            };
+        }
+        return ab.getSha256();
+    }
+
+    private HashCode hashCode; // synchronized access
+
+    protected AbstractBlob(HashCode hashCode) {
+        this.hashCode = hashCode;
+    }
+
+    protected AbstractBlob() {
+        this(null);
+    }
+
+    private synchronized HashCode getSha256() {
+        // Blobs are immutable so we can safely cache the hash
+        if (hashCode == null) {
+            try {
+                hashCode = ByteStreams.hash(supplier(this), Hashing.sha256());
+            } catch (IOException e) {
+                throw new IllegalStateException("Hash calculation failed", e);
+            }
+        }
+        return hashCode;
+    }
+
+    /**
+     * This hash code implementation returns the hash code of the underlying stream
+     * @return a byte array of the hash
+     */
+    protected byte[] sha256() {
+        return getSha256().asBytes();
+    }
+
+    //--------------------------------------------------------------< Blob >--
+
+    @Override @CheckForNull
+    public String getReference() {
+        return null;
+    }
+
+    @Override
+    public String getContentIdentity() {
+        return null;
+    }
+
+//------------------------------------------------------------< Object >--
+
+    /**
+     * To {@code Blob} instances are considered equal iff they have the
+     * same SHA-256 hash code  are equal.
+     * @param other
+     */
+    @Override
+    public boolean equals(Object other) {
+        if (other == this) {
+            return true;
+        }
+
+        if (other instanceof AbstractBlob) {
+            AbstractBlob that = (AbstractBlob) other;
+            // optimize the comparison if both this and the other blob
+            // already have pre-computed SHA-256 hash codes
+            synchronized (this) {
+                if (hashCode != null) {
+                    synchronized (that) {
+                        if (that.hashCode != null) {
+                            return hashCode.equals(that.hashCode);
+                        }
+                    }
+                }
+            }
+        }
+
+        return other instanceof Blob && equal(this, (Blob) other);
+    }
+
+    @Override
+    public int hashCode() {
+        return 0; // see Blob javadoc
+    }
+
+    @Override
+    public String toString() {
+        return getSha256().toString();
+    }
+
+}

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/EmptyNodeState.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/EmptyNodeState.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/EmptyNodeState.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/EmptyNodeState.java Tue Mar 31 12:41:32 2015
@@ -55,17 +55,17 @@ public final class EmptyNodeState implem
     }
 
     @Override
-    public boolean hasProperty(String name) {
+    public boolean hasProperty(@Nonnull String name) {
         return false;
     }
 
     @Override @CheckForNull
-    public PropertyState getProperty(String name) {
+    public PropertyState getProperty(@Nonnull String name) {
         return null;
     }
 
     @Override
-    public boolean getBoolean(String name) {
+    public boolean getBoolean(@Nonnull String name) {
         return false;
     }
 
@@ -79,8 +79,9 @@ public final class EmptyNodeState implem
         return null;
     }
 
+    @Nonnull
     @Override
-    public Iterable<String> getStrings(String name) {
+    public Iterable<String> getStrings(@Nonnull String name) {
         return emptyList();
     }
 

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeBuilder.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeBuilder.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeBuilder.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeBuilder.java Tue Mar 31 12:41:32 2015
@@ -303,18 +303,20 @@ public class MemoryNodeBuilder implement
         return head().getCurrentNodeState().getChildNodeCount(max);
     }
 
+    @Nonnull
     @Override
     public Iterable<String> getChildNodeNames() {
         return head().getCurrentNodeState().getChildNodeNames();
     }
 
     @Override
-    public boolean hasChildNode(String name) {
+    public boolean hasChildNode(@Nonnull String name) {
         return head().getCurrentNodeState().hasChildNode(checkNotNull(name));
     }
 
+    @Nonnull
     @Override
-    public NodeBuilder child(String name) {
+    public NodeBuilder child(@Nonnull String name) {
         if (hasChildNode(name)) {
             return getChildNode(name);
         } else {
@@ -322,19 +324,22 @@ public class MemoryNodeBuilder implement
         }
     }
 
+    @Nonnull
     @Override
-    public NodeBuilder getChildNode(String name) {
+    public NodeBuilder getChildNode(@Nonnull String name) {
         checkValidName(name);
         return createChildBuilder(name);
     }
 
+    @Nonnull
     @Override
-    public NodeBuilder setChildNode(String name) {
+    public NodeBuilder setChildNode(@Nonnull String name) {
         return setChildNode(name, EMPTY_NODE);
     }
 
+    @Nonnull
     @Override
-    public NodeBuilder setChildNode(String name, NodeState state) {
+    public NodeBuilder setChildNode(@Nonnull String name, @Nonnull NodeState state) {
         checkState(exists(), "This builder does not exist: " + this.name);
         head().getMutableNodeState().setChildNode(name, checkNotNull(state));
         MemoryNodeBuilder builder = createChildBuilder(name);
@@ -371,7 +376,7 @@ public class MemoryNodeBuilder implement
      *                                  or contains the forward slash character
      */
     @Override
-    public boolean moveTo(NodeBuilder newParent, String newName)
+    public boolean moveTo(@Nonnull NodeBuilder newParent, @Nonnull String newName)
             throws IllegalArgumentException {
         checkNotNull(newParent);
         checkValidName(newName);
@@ -459,6 +464,7 @@ public class MemoryNodeBuilder implement
         return head().getCurrentNodeState().getPropertyCount();
     }
 
+    @Nonnull
     @Override
     public Iterable<? extends PropertyState> getProperties() {
         return head().getCurrentNodeState().getProperties();
@@ -475,7 +481,7 @@ public class MemoryNodeBuilder implement
     }
 
     @Override
-    public boolean getBoolean(String name) {
+    public boolean getBoolean(@Nonnull String name) {
         return head().getCurrentNodeState().getBoolean(checkNotNull(name));
     }
 
@@ -494,26 +500,30 @@ public class MemoryNodeBuilder implement
         return head().getCurrentNodeState().getNames(checkNotNull(name));
     }
 
+    @Nonnull
     @Override
-    public NodeBuilder setProperty(PropertyState property) {
+    public NodeBuilder setProperty(@Nonnull PropertyState property) {
         checkState(exists(), "This builder does not exist: " + name);
         head().getMutableNodeState().setProperty(checkNotNull(property));
         updated();
         return this;
     }
 
+    @Nonnull
     @Override
-    public <T> NodeBuilder setProperty(String name, T value) {
+    public <T> NodeBuilder setProperty(String name, @Nonnull T value) {
         setProperty(PropertyStates.createProperty(name, value));
         return this;
     }
 
+    @Nonnull
     @Override
-    public <T> NodeBuilder setProperty(String name, T value, Type<T> type) {
+    public <T> NodeBuilder setProperty(String name, @Nonnull T value, Type<T> type) {
         setProperty(PropertyStates.createProperty(name, value, type));
         return this;
     }
 
+    @Nonnull
     @Override
     public NodeBuilder removeProperty(String name) {
         checkState(exists(), "This builder does not exist: " + name);

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeState.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeState.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeState.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeState.java Tue Mar 31 12:41:32 2015
@@ -22,6 +22,8 @@ import static org.apache.jackrabbit.oak.
 import java.util.HashMap;
 import java.util.Map;
 
+import javax.annotation.Nonnull;
+
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.spi.state.AbstractNodeState;
 import org.apache.jackrabbit.oak.spi.state.ChildNodeEntry;
@@ -60,12 +62,12 @@ class MemoryNodeState extends AbstractNo
     }
 
     @Override
-    public boolean hasProperty(String name) {
+    public boolean hasProperty(@Nonnull String name) {
         return properties.containsKey(name);
     }
 
     @Override
-    public PropertyState getProperty(String name) {
+    public PropertyState getProperty(@Nonnull String name) {
         return properties.get(name);
     }
 
@@ -74,18 +76,20 @@ class MemoryNodeState extends AbstractNo
         return properties.size();
     }
 
+    @Nonnull
     @Override
     public Iterable<? extends PropertyState> getProperties() {
         return properties.values();
     }
 
     @Override
-    public boolean hasChildNode(String name) {
+    public boolean hasChildNode(@Nonnull String name) {
         return nodes.containsKey(name);
     }
 
+    @Nonnull
     @Override
-    public NodeState getChildNode(String name) {
+    public NodeState getChildNode(@Nonnull String name) {
         NodeState state = nodes.get(name);
         if (state == null) {
             checkValidName(name);
@@ -99,11 +103,13 @@ class MemoryNodeState extends AbstractNo
         return nodes.size();
     }
 
+    @Nonnull
     @Override
     public Iterable<ChildNodeEntry> getChildNodeEntries() {
         return MemoryChildNodeEntry.iterable(nodes.entrySet());
     }
 
+    @Nonnull
     @Override
     public NodeBuilder builder() {
         return new MemoryNodeBuilder(this);

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java Tue Mar 31 12:41:32 2015
@@ -274,6 +274,7 @@ public class ModifiedNodeState extends A
 
     //---------------------------------------------------------< NodeState >--
 
+    @Nonnull
     @Override
     public NodeBuilder builder() {
         return new MemoryNodeBuilder(this);
@@ -290,15 +291,16 @@ public class ModifiedNodeState extends A
     }
 
     @Override
-    public boolean hasProperty(String name) {
+    public boolean hasProperty(@Nonnull String name) {
         return hasProperty(base, properties, name);
     }
 
     @Override
-    public PropertyState getProperty(String name) {
+    public PropertyState getProperty(@Nonnull String name) {
         return getProperty(base, properties, name);
     }
 
+    @Nonnull
     @Override
     public Iterable<? extends PropertyState> getProperties() {
         return getProperties(base, properties, false);
@@ -310,7 +312,7 @@ public class ModifiedNodeState extends A
     }
 
     @Override
-    public boolean hasChildNode(String name) {
+    public boolean hasChildNode(@Nonnull String name) {
         NodeState child = nodes.get(name);
         if (child != null) {
             return child.exists();
@@ -319,8 +321,9 @@ public class ModifiedNodeState extends A
         }
     }
 
+    @Nonnull
     @Override
-    public NodeState getChildNode(String name) {
+    public NodeState getChildNode(@Nonnull String name) {
         NodeState child = nodes.get(name);
         if (child == null) {
             child = base.getChildNode(name);
@@ -333,6 +336,7 @@ public class ModifiedNodeState extends A
         return getChildNodeNames(base, nodes, false);
     }
 
+    @Nonnull
     @Override
     public Iterable<? extends ChildNodeEntry> getChildNodeEntries() {
         if (!base.exists()) {

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MutableNodeState.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MutableNodeState.java?rev=1670318&r1=1670317&r2=1670318&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MutableNodeState.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MutableNodeState.java Tue Mar 31 12:41:32 2015
@@ -245,12 +245,12 @@ class MutableNodeState extends AbstractN
     }
 
     @Override
-    public boolean hasProperty(String name) {
+    public boolean hasProperty(@Nonnull String name) {
         return ModifiedNodeState.hasProperty(base, properties, name);
     }
 
     @Override
-    public PropertyState getProperty(String name) {
+    public PropertyState getProperty(@Nonnull String name) {
         return ModifiedNodeState.getProperty(base, properties, name);
     }
 
@@ -266,7 +266,7 @@ class MutableNodeState extends AbstractN
     }
 
     @Override
-    public boolean hasChildNode(String name) {
+    public boolean hasChildNode(@Nonnull String name) {
         assert base != null;
         NodeState child = nodes.get(name);
         if (child != null) {
@@ -294,8 +294,9 @@ class MutableNodeState extends AbstractN
         return child;
     }
 
+    @Nonnull
     @Override
-    public NodeState getChildNode(String name) {
+    public NodeState getChildNode(@Nonnull String name) {
         NodeState child = nodes.get(name);
         if (child == null) {
             child = base.getChildNode(name);