You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ss...@apache.org on 2018/08/13 09:11:05 UTC

[sling-org-apache-sling-caconfig-spi] branch master updated: SLING-7798 Switch from JSR-305 annotations to JetBrains Nullable/NotNull annotations

This is an automated email from the ASF dual-hosted git repository.

sseifert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-caconfig-spi.git


The following commit(s) were added to refs/heads/master by this push:
     new 53d0885  SLING-7798 Switch from JSR-305 annotations to JetBrains Nullable/NotNull annotations
53d0885 is described below

commit 53d0885e55d0e9c4c78323d838d683804b8590f1
Author: sseifert <ss...@pro-vision.de>
AuthorDate: Mon Aug 13 11:10:57 2018 +0200

    SLING-7798 Switch from JSR-305 annotations to JetBrains Nullable/NotNull annotations
---
 pom.xml                                            |  5 ++--
 .../resource/spi/CollectionInheritanceDecider.java |  7 ++---
 .../ConfigurationResourceResolvingStrategy.java    | 17 ++++++-----
 .../caconfig/resource/spi/ContextPathStrategy.java |  5 ++--
 .../caconfig/resource/spi/ContextResource.java     | 13 ++++-----
 .../sling/caconfig/resource/spi/package-info.java  |  2 +-
 .../spi/ConfigurationCollectionPersistData.java    | 11 ++++----
 .../spi/ConfigurationInheritanceStrategy.java      |  7 ++---
 .../spi/ConfigurationMetadataProvider.java         |  9 +++---
 .../spi/ConfigurationOverrideProvider.java         |  5 ++--
 .../caconfig/spi/ConfigurationPersistData.java     | 11 ++++----
 .../spi/ConfigurationPersistenceStrategy.java      | 19 ++++++-------
 .../spi/ConfigurationPersistenceStrategy2.java     | 33 +++++++++++-----------
 .../caconfig/spi/metadata/AbstractMetadata.java    |  6 ++--
 .../spi/metadata/ConfigurationMetadata.java        |  5 ++--
 .../caconfig/spi/metadata/PropertyMetadata.java    |  9 +++---
 .../sling/caconfig/spi/metadata/package-info.java  |  2 +-
 .../apache/sling/caconfig/spi/package-info.java    |  2 +-
 18 files changed, 78 insertions(+), 90 deletions(-)

diff --git a/pom.xml b/pom.xml
index 958eb8a..c06aea7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -57,8 +57,9 @@
             <scope>compile</scope>
         </dependency>
         <dependency>
-            <groupId>com.google.code.findbugs</groupId>
-            <artifactId>jsr305</artifactId>
+            <groupId>org.jetbrains</groupId>
+            <artifactId>annotations</artifactId>
+            <version>16.0.2</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
diff --git a/src/main/java/org/apache/sling/caconfig/resource/spi/CollectionInheritanceDecider.java b/src/main/java/org/apache/sling/caconfig/resource/spi/CollectionInheritanceDecider.java
index ca46715..896920a 100644
--- a/src/main/java/org/apache/sling/caconfig/resource/spi/CollectionInheritanceDecider.java
+++ b/src/main/java/org/apache/sling/caconfig/resource/spi/CollectionInheritanceDecider.java
@@ -18,10 +18,9 @@
  */
 package org.apache.sling.caconfig.resource.spi;
 
-import javax.annotation.CheckForNull;
-import javax.annotation.Nonnull;
-
 import org.apache.sling.api.resource.Resource;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 import org.osgi.annotation.versioning.ConsumerType;
 
 /**
@@ -43,6 +42,6 @@ public interface CollectionInheritanceDecider {
      * @param resource The resource
      * @return The decision or {@code null}
      */
-    @CheckForNull InheritanceDecision decide(@Nonnull Resource resource, @Nonnull String bucketName);
+    @Nullable InheritanceDecision decide(@NotNull Resource resource, @NotNull String bucketName);
 
 }
diff --git a/src/main/java/org/apache/sling/caconfig/resource/spi/ConfigurationResourceResolvingStrategy.java b/src/main/java/org/apache/sling/caconfig/resource/spi/ConfigurationResourceResolvingStrategy.java
index 3b96ae2..04b04ef 100644
--- a/src/main/java/org/apache/sling/caconfig/resource/spi/ConfigurationResourceResolvingStrategy.java
+++ b/src/main/java/org/apache/sling/caconfig/resource/spi/ConfigurationResourceResolvingStrategy.java
@@ -21,10 +21,9 @@ package org.apache.sling.caconfig.resource.spi;
 import java.util.Collection;
 import java.util.Iterator;
 
-import javax.annotation.CheckForNull;
-import javax.annotation.Nonnull;
-
 import org.apache.sling.api.resource.Resource;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 import org.osgi.annotation.versioning.ConsumerType;
 
 /**
@@ -48,7 +47,7 @@ public interface ConfigurationResourceResolvingStrategy {
      * @param configName Configuration name or relative path.
      * @return Configuration resource or {@code null} if this strategy did not found matching resources.
      */
-    @CheckForNull Resource getResource(@Nonnull Resource resource, @Nonnull Collection<String> bucketNames, @Nonnull String configName);
+    @Nullable Resource getResource(@NotNull Resource resource, @NotNull Collection<String> bucketNames, @NotNull String configName);
 
     /**
      * Get a collection of context-aware configuration resources defined by the given configuration name.
@@ -58,7 +57,7 @@ public interface ConfigurationResourceResolvingStrategy {
      * @param configName Configuration name or relative path.
      * @return Collection of configuration resources or {@code null} if this strategy did not found matching resources.
      */
-    @CheckForNull Collection<Resource> getResourceCollection(@Nonnull Resource resource, @Nonnull Collection<String> bucketNames, @Nonnull String configName);
+    @Nullable Collection<Resource> getResourceCollection(@NotNull Resource resource, @NotNull Collection<String> bucketNames, @NotNull String configName);
 
     /**
      * Get a context-aware singleton configuration resource inheritance chain defined by the given configuration name.
@@ -69,7 +68,7 @@ public interface ConfigurationResourceResolvingStrategy {
      * @param configName Configuration name or relative path.
      * @return Configuration resource inheritance chain or {@code null} if this strategy did not found matching resources.
      */
-    @CheckForNull Iterator<Resource> getResourceInheritanceChain(@Nonnull Resource resource, @Nonnull Collection<String> bucketNames, @Nonnull String configName);
+    @Nullable Iterator<Resource> getResourceInheritanceChain(@NotNull Resource resource, @NotNull Collection<String> bucketNames, @NotNull String configName);
 
     /**
      * Get a collection of context-aware configuration resource inheritance chains defined by the given configuration name.
@@ -80,7 +79,7 @@ public interface ConfigurationResourceResolvingStrategy {
      * @param configName Configuration name or relative path.
      * @return Collection of configuration resource inheritance chains or {@code null} if this strategy did not found matching resources.
      */
-    @CheckForNull Collection<Iterator<Resource>> getResourceCollectionInheritanceChain(@Nonnull Resource resource, @Nonnull Collection<String> bucketNames, @Nonnull String configName);
+    @Nullable Collection<Iterator<Resource>> getResourceCollectionInheritanceChain(@NotNull Resource resource, @NotNull Collection<String> bucketNames, @NotNull String configName);
 
     /**
      * Get the configuration resource path for storing configuration data for the given context resource and configuration name.
@@ -93,7 +92,7 @@ public interface ConfigurationResourceResolvingStrategy {
      * @param configName Configuration name or relative path.
      * @return Resource path, or null if no matching configuration resource path can be determined
      */
-    @CheckForNull String getResourcePath(@Nonnull Resource resource, @Nonnull String bucketName, @Nonnull String configName);
+    @Nullable String getResourcePath(@NotNull Resource resource, @NotNull String bucketName, @NotNull String configName);
 
     /**
      * Get the configuration resource collection parent path for storing configuration data for the given context resource and configuration name.
@@ -106,6 +105,6 @@ public interface ConfigurationResourceResolvingStrategy {
      * @param configName Configuration name or relative path.
      * @return Resource path, or null if no matching configuration resource path can be determined
      */
-    @CheckForNull String getResourceCollectionParentPath(@Nonnull Resource resource, @Nonnull String bucketName, @Nonnull String configName);
+    @Nullable String getResourceCollectionParentPath(@NotNull Resource resource, @NotNull String bucketName, @NotNull String configName);
 
 }
diff --git a/src/main/java/org/apache/sling/caconfig/resource/spi/ContextPathStrategy.java b/src/main/java/org/apache/sling/caconfig/resource/spi/ContextPathStrategy.java
index f2d0423..b57c30d 100644
--- a/src/main/java/org/apache/sling/caconfig/resource/spi/ContextPathStrategy.java
+++ b/src/main/java/org/apache/sling/caconfig/resource/spi/ContextPathStrategy.java
@@ -20,9 +20,8 @@ package org.apache.sling.caconfig.resource.spi;
 
 import java.util.Iterator;
 
-import javax.annotation.Nonnull;
-
 import org.apache.sling.api.resource.Resource;
+import org.jetbrains.annotations.NotNull;
 import org.osgi.annotation.versioning.ConsumerType;
 
 /**
@@ -41,6 +40,6 @@ public interface ContextPathStrategy {
      *      Only one of the parent resources or the resource itself may be included in the result.
      *      If none are found an empty list is returned.
      */
-    @Nonnull Iterator<ContextResource> findContextResources(@Nonnull Resource resource);
+    @NotNull Iterator<ContextResource> findContextResources(@NotNull Resource resource);
 
 }
diff --git a/src/main/java/org/apache/sling/caconfig/resource/spi/ContextResource.java b/src/main/java/org/apache/sling/caconfig/resource/spi/ContextResource.java
index 60db4c1..72f1ab9 100644
--- a/src/main/java/org/apache/sling/caconfig/resource/spi/ContextResource.java
+++ b/src/main/java/org/apache/sling/caconfig/resource/spi/ContextResource.java
@@ -18,11 +18,10 @@
  */
 package org.apache.sling.caconfig.resource.spi;
 
-import javax.annotation.CheckForNull;
-import javax.annotation.Nonnull;
-
 import org.apache.commons.lang3.StringUtils;
 import org.apache.sling.api.resource.Resource;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 import org.osgi.annotation.versioning.ProviderType;
 
 /**
@@ -43,7 +42,7 @@ public final class ContextResource {
      *    May be null if the {@link ConfigurationResourceResolvingStrategy} has it's own concept of detecting the matching configuration.
      * @param serviceRanking Service ranking of the context path strategy implementation
      */
-    public ContextResource(@Nonnull Resource resource, String configRef, int serviceRanking) {
+    public ContextResource(@NotNull Resource resource, String configRef, int serviceRanking) {
         this.resource = resource;
         this.configRef = configRef;
         this.serviceRanking = serviceRanking;
@@ -57,14 +56,14 @@ public final class ContextResource {
      * @deprecated Use {@link #ContextResource(Resource, String, int)}
      */
     @Deprecated
-    public ContextResource(@Nonnull Resource resource, String configRef) {
+    public ContextResource(@NotNull Resource resource, String configRef) {
         this(resource, configRef, 0);
     }
 
     /**
      * @return Context root resource
      */
-    public @Nonnull Resource getResource() {
+    public @NotNull Resource getResource() {
         return resource;
     }
 
@@ -72,7 +71,7 @@ public final class ContextResource {
      * @return Config reference (normally a resource path).
      *    May be null if the {@link ConfigurationResourceResolvingStrategy} has it's own concept of detecting the matching configuration.
      */
-    public @CheckForNull String getConfigRef() {
+    public @Nullable String getConfigRef() {
         return configRef;
     }
     
diff --git a/src/main/java/org/apache/sling/caconfig/resource/spi/package-info.java b/src/main/java/org/apache/sling/caconfig/resource/spi/package-info.java
index f53dd1f..f5f378b 100644
--- a/src/main/java/org/apache/sling/caconfig/resource/spi/package-info.java
+++ b/src/main/java/org/apache/sling/caconfig/resource/spi/package-info.java
@@ -19,5 +19,5 @@
 /**
  * SPI for applications hooking into the configuration resource infrastructure for parameterizing and customizing.
  */
-@org.osgi.annotation.versioning.Version("2.1.0")
+@org.osgi.annotation.versioning.Version("2.1.1")
 package org.apache.sling.caconfig.resource.spi;
diff --git a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationCollectionPersistData.java b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationCollectionPersistData.java
index 00dfa57..e682512 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationCollectionPersistData.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationCollectionPersistData.java
@@ -24,10 +24,9 @@ import java.util.Map;
 import java.util.Set;
 import java.util.regex.Pattern;
 
-import javax.annotation.CheckForNull;
-import javax.annotation.Nonnull;
-
 import org.apache.commons.lang3.StringUtils;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 import org.osgi.annotation.versioning.ProviderType;
 
 /**
@@ -44,7 +43,7 @@ public final class ConfigurationCollectionPersistData {
     /**
      * @param items Collection of configuration collection items
      */
-    public ConfigurationCollectionPersistData(@Nonnull Collection<ConfigurationPersistData> items) {
+    public ConfigurationCollectionPersistData(@NotNull Collection<ConfigurationPersistData> items) {
         validateItems(items);
         this.items = items;
     }
@@ -69,14 +68,14 @@ public final class ConfigurationCollectionPersistData {
     /**
      * @return Collection of configuration collection items
      */
-    public @Nonnull Collection<ConfigurationPersistData> getItems() {
+    public @NotNull Collection<ConfigurationPersistData> getItems() {
         return items;
     }
     
     /**
      * @return Properties for the configuration collection itself. Does not contain configuration data, but control data e.g. for enabling collection inheritance.
      */
-    public @CheckForNull Map<String, Object> getProperties() {
+    public @Nullable Map<String, Object> getProperties() {
         return properties;
     }
 
diff --git a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationInheritanceStrategy.java b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationInheritanceStrategy.java
index 3ad58d7..bf97348 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationInheritanceStrategy.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationInheritanceStrategy.java
@@ -20,10 +20,9 @@ package org.apache.sling.caconfig.spi;
 
 import java.util.Iterator;
 
-import javax.annotation.CheckForNull;
-import javax.annotation.Nonnull;
-
 import org.apache.sling.api.resource.Resource;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 import org.osgi.annotation.versioning.ConsumerType;
 
 /**
@@ -39,6 +38,6 @@ public interface ConfigurationInheritanceStrategy {
      *     First resource is the "closest" match, the other resources may be used to inherit from.
      * @return Inherited resource or null if this strategy does not support the given resources
      */
-    @CheckForNull Resource getResource(@Nonnull Iterator<Resource> configResources);
+    @Nullable Resource getResource(@NotNull Iterator<Resource> configResources);
 
 }
diff --git a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationMetadataProvider.java b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationMetadataProvider.java
index c3d04c5..9888678 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationMetadataProvider.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationMetadataProvider.java
@@ -20,10 +20,9 @@ package org.apache.sling.caconfig.spi;
 
 import java.util.SortedSet;
 
-import javax.annotation.CheckForNull;
-import javax.annotation.Nonnull;
-
 import org.apache.sling.caconfig.spi.metadata.ConfigurationMetadata;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 import org.osgi.annotation.versioning.ConsumerType;
 
 /**
@@ -36,13 +35,13 @@ public interface ConfigurationMetadataProvider {
      * Get all configuration names.
      * @return Configuration names
      */
-    @Nonnull SortedSet<String> getConfigurationNames();
+    @NotNull SortedSet<String> getConfigurationNames();
 
     /**
      * Get configuration metadata.
      * @param configName Configuration name
      * @return Configuration metadata or null if none exists for the given name.
      */
-    @CheckForNull ConfigurationMetadata getConfigurationMetadata(String configName);
+    @Nullable ConfigurationMetadata getConfigurationMetadata(String configName);
 
 }
diff --git a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationOverrideProvider.java b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationOverrideProvider.java
index 290fa24..be2ea5d 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationOverrideProvider.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationOverrideProvider.java
@@ -20,8 +20,7 @@ package org.apache.sling.caconfig.spi;
 
 import java.util.Collection;
 
-import javax.annotation.Nonnull;
-
+import org.jetbrains.annotations.NotNull;
 import org.osgi.annotation.versioning.ConsumerType;
 
 /**
@@ -40,6 +39,6 @@ public interface ConfigurationOverrideProvider {
      * </ul>
      * @return Override strings
      */
-    @Nonnull Collection<String> getOverrideStrings();
+    @NotNull Collection<String> getOverrideStrings();
 
 }
diff --git a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistData.java b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistData.java
index 5a1f2fd..d632128 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistData.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistData.java
@@ -20,9 +20,8 @@ package org.apache.sling.caconfig.spi;
 
 import java.util.Map;
 
-import javax.annotation.CheckForNull;
-import javax.annotation.Nonnull;
-
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 import org.osgi.annotation.versioning.ProviderType;
 
 /**
@@ -37,21 +36,21 @@ public final class ConfigurationPersistData {
     /**
      * @param properties Property values
      */
-    public ConfigurationPersistData(@Nonnull Map<String, Object> properties) {
+    public ConfigurationPersistData(@NotNull Map<String, Object> properties) {
         this.properties = properties;
     }
 
     /**
      * @return Property values
      */
-    public @Nonnull Map<String, Object> getProperties() {
+    public @NotNull Map<String, Object> getProperties() {
         return properties;
     }
 
     /**
      * @return Resource collection item name. To be set only for resource collection items.
      */
-    public @CheckForNull String getCollectionItemName() {
+    public @Nullable String getCollectionItemName() {
         return collectionItemName;
     }
 
diff --git a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistenceStrategy.java b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistenceStrategy.java
index ff59784..e29bb16 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistenceStrategy.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistenceStrategy.java
@@ -18,11 +18,10 @@
  */
 package org.apache.sling.caconfig.spi;
 
-import javax.annotation.CheckForNull;
-import javax.annotation.Nonnull;
-
 import org.apache.sling.api.resource.Resource;
 import org.apache.sling.api.resource.ResourceResolver;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 import org.osgi.annotation.versioning.ConsumerType;
 
 /**
@@ -40,7 +39,7 @@ public interface ConfigurationPersistenceStrategy {
      * @param resource Configuration resource
      * @return Transformed configuration resource. If null is returned this strategy does not support the given configuration resource.
      */
-    @CheckForNull Resource getResource(@Nonnull Resource resource);
+    @Nullable Resource getResource(@NotNull Resource resource);
     
     /**
      * Allows the strategy to transform the given configuration resource path according to it's persistent strategies,
@@ -48,7 +47,7 @@ public interface ConfigurationPersistenceStrategy {
      * @param resourcePath Configuration resource path or part of it (e.g. config name)
      * @return Transformed configuration resource path. If null is returned this strategy does not support the given configuration resource path.
      */
-    @CheckForNull String getResourcePath(@Nonnull String resourcePath);
+    @Nullable String getResourcePath(@NotNull String resourcePath);
     
     /**
      * Stores configuration data for a singleton configuration resource.
@@ -59,8 +58,8 @@ public interface ConfigurationPersistenceStrategy {
      * @return true if the data was persisted. false if persisting the data was not accepted by this persistence strategy
      *      (in case of error throw an exception).
      */
-    boolean persistConfiguration(@Nonnull ResourceResolver resourceResolver,
-            @Nonnull String configResourcePath, @Nonnull ConfigurationPersistData data);
+    boolean persistConfiguration(@NotNull ResourceResolver resourceResolver,
+            @NotNull String configResourcePath, @NotNull ConfigurationPersistData data);
     
     /**
      * Stores configuration data for a configuration resource collection.
@@ -72,8 +71,8 @@ public interface ConfigurationPersistenceStrategy {
      * @return true if the data was persisted. false if persisting the data was not accepted by this persistence strategy
      *      (in case of error throw an exception).
      */
-    boolean persistConfigurationCollection(@Nonnull ResourceResolver resourceResolver,
-            @Nonnull String configResourceCollectionParentPath, @Nonnull ConfigurationCollectionPersistData data);
+    boolean persistConfigurationCollection(@NotNull ResourceResolver resourceResolver,
+            @NotNull String configResourceCollectionParentPath, @NotNull ConfigurationCollectionPersistData data);
  
     /**
      * Delete configuration or configuration collection data from repository using the inner-most context path as reference.
@@ -82,6 +81,6 @@ public interface ConfigurationPersistenceStrategy {
      * @return true if the data was delete. false if deleting the data was not accepted by this persistence strategy
      *      (in case of error throw an exception).
      */
-    boolean deleteConfiguration(@Nonnull ResourceResolver resourceResolver, @Nonnull String configResourcePath);
+    boolean deleteConfiguration(@NotNull ResourceResolver resourceResolver, @NotNull String configResourcePath);
     
 }
diff --git a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistenceStrategy2.java b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistenceStrategy2.java
index d338103..2d4ca7a 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistenceStrategy2.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationPersistenceStrategy2.java
@@ -18,11 +18,10 @@
  */
 package org.apache.sling.caconfig.spi;
 
-import javax.annotation.CheckForNull;
-import javax.annotation.Nonnull;
-
 import org.apache.sling.api.resource.Resource;
 import org.apache.sling.api.resource.ResourceResolver;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 import org.osgi.annotation.versioning.ConsumerType;
 
 /**
@@ -38,7 +37,7 @@ public interface ConfigurationPersistenceStrategy2 {
      * @param resource Singleton configuration resource
      * @return Transformed configuration resource. If null is returned this strategy does not support the given configuration resource.
      */
-    @CheckForNull Resource getResource(@Nonnull Resource resource);
+    @Nullable Resource getResource(@NotNull Resource resource);
 
     /**
      * Allows the strategy to transform the given configuration resource according to it's persistent strategies,
@@ -46,7 +45,7 @@ public interface ConfigurationPersistenceStrategy2 {
      * @param resource Configuration collection parent resource
      * @return Transformed configuration resource. If null is returned this strategy does not support the given configuration resource.
      */
-    @CheckForNull Resource getCollectionParentResource(@Nonnull Resource resource);
+    @Nullable Resource getCollectionParentResource(@NotNull Resource resource);
 
     /**
      * Allows the strategy to transform the given configuration resource according to it's persistent strategies,
@@ -54,7 +53,7 @@ public interface ConfigurationPersistenceStrategy2 {
      * @param resource Configuration collection item resource
      * @return Transformed configuration resource. If null is returned this strategy does not support the given configuration resource.
      */
-    @CheckForNull Resource getCollectionItemResource(@Nonnull Resource resource);
+    @Nullable Resource getCollectionItemResource(@NotNull Resource resource);
 
     /**
      * Allows the strategy to transform the given configuration resource path according to it's persistent strategies,
@@ -62,7 +61,7 @@ public interface ConfigurationPersistenceStrategy2 {
      * @param resourcePath Configuration resource path (full path)
      * @return Transformed configuration resource path. If null is returned this strategy does not support the given configuration resource path.
      */
-    @CheckForNull String getResourcePath(@Nonnull String resourcePath);
+    @Nullable String getResourcePath(@NotNull String resourcePath);
     
     /**
      * Allows the strategy to transform the given configuration resource path according to it's persistent strategies,
@@ -70,7 +69,7 @@ public interface ConfigurationPersistenceStrategy2 {
      * @param resourcePath Configuration collection parent resource path (full path)
      * @return Transformed configuration resource path. If null is returned this strategy does not support the given configuration resource path.
      */
-    @CheckForNull String getCollectionParentResourcePath(@Nonnull String resourcePath);
+    @Nullable String getCollectionParentResourcePath(@NotNull String resourcePath);
 
     /**
      * Allows the strategy to transform the given configuration resource path according to it's persistent strategies,
@@ -78,7 +77,7 @@ public interface ConfigurationPersistenceStrategy2 {
      * @param resourcePath Configuration collection item resource path (full path)
      * @return Transformed configuration resource path. If null is returned this strategy does not support the given configuration resource path.
      */
-    @CheckForNull String getCollectionItemResourcePath(@Nonnull String resourcePath);
+    @Nullable String getCollectionItemResourcePath(@NotNull String resourcePath);
     
     /**
      * Allows the strategy to transform the given configuration name for nested configurations according to it's persistent strategies,
@@ -88,7 +87,7 @@ public interface ConfigurationPersistenceStrategy2 {
      *     This can be used to detect if the persistence strategy supports the configuration location. If null it should be assumed that it matches.
      * @return Transformed configuration name. If null is returned this strategy does not support the given configuration resource path.
      */
-    @CheckForNull String getConfigName(@Nonnull String configName, @CheckForNull String relatedConfigPath);
+    @Nullable String getConfigName(@NotNull String configName, @Nullable String relatedConfigPath);
     
     /**
      * Allows the strategy to transform the given configuration name for nested configurations according to it's persistent strategies,
@@ -98,7 +97,7 @@ public interface ConfigurationPersistenceStrategy2 {
      *     This can be used to detect if the persistence strategy supports the configuration location. If null it should be assumed that it matches.
      * @return Transformed configuration name. If null is returned this strategy does not support the given configuration resource path.
      */
-    @CheckForNull String getCollectionParentConfigName(@Nonnull String configName, @CheckForNull String relatedConfigPath);
+    @Nullable String getCollectionParentConfigName(@NotNull String configName, @Nullable String relatedConfigPath);
 
     /**
      * Allows the strategy to transform the given configuration name for nested configurations according to it's persistent strategies,
@@ -108,7 +107,7 @@ public interface ConfigurationPersistenceStrategy2 {
      *     This can be used to detect if the persistence strategy supports the configuration location. If null it should be assumed that it matches.
      * @return Transformed configuration name. If null is returned this strategy does not support the given configuration resource path.
      */
-    @CheckForNull String getCollectionItemConfigName(@Nonnull String configName, @CheckForNull String relatedConfigPath);
+    @Nullable String getCollectionItemConfigName(@NotNull String configName, @Nullable String relatedConfigPath);
     
     /**
      * Stores configuration data for a singleton configuration resource.
@@ -119,8 +118,8 @@ public interface ConfigurationPersistenceStrategy2 {
      * @return true if the data was persisted. false if persisting the data was not accepted by this persistence strategy
      *      (in case of error throw an exception).
      */
-    boolean persistConfiguration(@Nonnull ResourceResolver resourceResolver,
-            @Nonnull String configResourcePath, @Nonnull ConfigurationPersistData data);
+    boolean persistConfiguration(@NotNull ResourceResolver resourceResolver,
+            @NotNull String configResourcePath, @NotNull ConfigurationPersistData data);
     
     /**
      * Stores configuration data for a configuration resource collection.
@@ -132,8 +131,8 @@ public interface ConfigurationPersistenceStrategy2 {
      * @return true if the data was persisted. false if persisting the data was not accepted by this persistence strategy
      *      (in case of error throw an exception).
      */
-    boolean persistConfigurationCollection(@Nonnull ResourceResolver resourceResolver,
-            @Nonnull String configResourceCollectionParentPath, @Nonnull ConfigurationCollectionPersistData data);
+    boolean persistConfigurationCollection(@NotNull ResourceResolver resourceResolver,
+            @NotNull String configResourceCollectionParentPath, @NotNull ConfigurationCollectionPersistData data);
  
     /**
      * Delete configuration or configuration collection data from repository using the inner-most context path as reference.
@@ -142,6 +141,6 @@ public interface ConfigurationPersistenceStrategy2 {
      * @return true if the data was delete. false if deleting the data was not accepted by this persistence strategy
      *      (in case of error throw an exception).
      */
-    boolean deleteConfiguration(@Nonnull ResourceResolver resourceResolver, @Nonnull String configResourcePath);
+    boolean deleteConfiguration(@NotNull ResourceResolver resourceResolver, @NotNull String configResourcePath);
     
 }
diff --git a/src/main/java/org/apache/sling/caconfig/spi/metadata/AbstractMetadata.java b/src/main/java/org/apache/sling/caconfig/spi/metadata/AbstractMetadata.java
index dc69fb6..9d3226b 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/metadata/AbstractMetadata.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/metadata/AbstractMetadata.java
@@ -20,7 +20,7 @@ package org.apache.sling.caconfig.spi.metadata;
 
 import java.util.Map;
 
-import javax.annotation.Nonnull;
+import org.jetbrains.annotations.NotNull;
 
 /**
  * Common properties for configuration and properties.
@@ -32,7 +32,7 @@ abstract class AbstractMetadata<T> {
     private String description;
     private Map<String,String> properties;
 
-    public AbstractMetadata(@Nonnull String name) {
+    public AbstractMetadata(@NotNull String name) {
         if (name == null) {
             throw new IllegalArgumentException("Invalid name: " + name);
         }
@@ -42,7 +42,7 @@ abstract class AbstractMetadata<T> {
     /**
      * @return Parameter name
      */
-    public @Nonnull String getName() {
+    public @NotNull String getName() {
         return this.name;
     }
     
diff --git a/src/main/java/org/apache/sling/caconfig/spi/metadata/ConfigurationMetadata.java b/src/main/java/org/apache/sling/caconfig/spi/metadata/ConfigurationMetadata.java
index bc4ef43..b3e0f2b 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/metadata/ConfigurationMetadata.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/metadata/ConfigurationMetadata.java
@@ -22,8 +22,7 @@ import java.util.Collection;
 import java.util.LinkedHashMap;
 import java.util.Map;
 
-import javax.annotation.Nonnull;
-
+import org.jetbrains.annotations.NotNull;
 import org.osgi.annotation.versioning.ProviderType;
 
 /**
@@ -40,7 +39,7 @@ public final class ConfigurationMetadata extends AbstractMetadata<ConfigurationM
      * @param propertyMetadata Property metadata
      * @param collection Collection
      */
-    public ConfigurationMetadata(@Nonnull String name,
+    public ConfigurationMetadata(@NotNull String name,
             Collection<PropertyMetadata<?>> propertyMetadata,
             boolean collection) {
         super(name);
diff --git a/src/main/java/org/apache/sling/caconfig/spi/metadata/PropertyMetadata.java b/src/main/java/org/apache/sling/caconfig/spi/metadata/PropertyMetadata.java
index b2e56d0..d86c24e 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/metadata/PropertyMetadata.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/metadata/PropertyMetadata.java
@@ -23,9 +23,8 @@ import java.util.Collections;
 import java.util.HashSet;
 import java.util.Set;
 
-import javax.annotation.Nonnull;
-
 import org.apache.commons.lang3.ClassUtils;
+import org.jetbrains.annotations.NotNull;
 import org.osgi.annotation.versioning.ProviderType;
 
 /**
@@ -60,7 +59,7 @@ public final class PropertyMetadata<T> extends AbstractMetadata<PropertyMetadata
      * @param type Property type
      */
     @SuppressWarnings("unchecked")
-    public PropertyMetadata(@Nonnull String name, @Nonnull Class<T> type) {
+    public PropertyMetadata(@NotNull String name, @NotNull Class<T> type) {
         super(name);
         Class<T> convertedType = (Class<T>)typeToPrimitive(type);
         if (!isSupportedType(convertedType)) {
@@ -74,7 +73,7 @@ public final class PropertyMetadata<T> extends AbstractMetadata<PropertyMetadata
      * @param defaultValue Default value (also defines property type)
      */
     @SuppressWarnings("unchecked")
-    public PropertyMetadata(@Nonnull String name, @Nonnull T defaultValue) {
+    public PropertyMetadata(@NotNull String name, @NotNull T defaultValue) {
         this(name, (Class<T>)defaultValue.getClass());
         this.defaultValue = defaultValue;
     }
@@ -131,7 +130,7 @@ public final class PropertyMetadata<T> extends AbstractMetadata<PropertyMetadata
     /**
      * @return Parameter type
      */
-    public @Nonnull Class<T> getType() {
+    public @NotNull Class<T> getType() {
         return this.type;
     }
 
diff --git a/src/main/java/org/apache/sling/caconfig/spi/metadata/package-info.java b/src/main/java/org/apache/sling/caconfig/spi/metadata/package-info.java
index a3759e2..63a7b59 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/metadata/package-info.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/metadata/package-info.java
@@ -19,5 +19,5 @@
 /**
  * Defining configuration and parameter metadata for the SPI.
  */
-@org.osgi.annotation.versioning.Version("2.0.0")
+@org.osgi.annotation.versioning.Version("2.0.1")
 package org.apache.sling.caconfig.spi.metadata;
diff --git a/src/main/java/org/apache/sling/caconfig/spi/package-info.java b/src/main/java/org/apache/sling/caconfig/spi/package-info.java
index a2267d6..a78bcd5 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/package-info.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/package-info.java
@@ -19,5 +19,5 @@
 /**
  * SPI for applications hooking into the configuration infrastructure for parameterizing and customizing.
  */
-@org.osgi.annotation.versioning.Version("2.1.0")
+@org.osgi.annotation.versioning.Version("2.1.1")
 package org.apache.sling.caconfig.spi;