You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tamaya.apache.org by pl...@apache.org on 2017/03/12 13:09:57 UTC

[2/2] incubator-tamaya git commit: [TAMAYA-257] The core API does not enforce non-null parameters as document by the API documentation.

[TAMAYA-257] The core API does not enforce non-null parameters as document by the API documentation.


Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/commit/0cb070ec
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/tree/0cb070ec
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/diff/0cb070ec

Branch: refs/heads/master
Commit: 0cb070ec21c3b4f4cfc4187f950f38cb875bbd65
Parents: 8ad767b
Author: Oliver B. Fischer <pl...@apache.org>
Authored: Sun Mar 12 14:08:23 2017 +0100
Committer: Oliver B. Fischer <pl...@apache.org>
Committed: Sun Mar 12 14:08:23 2017 +0100

----------------------------------------------------------------------
 .../java/org/apache/tamaya/ConfigException.java |   4 +-
 .../java/org/apache/tamaya/ConfigOperator.java  |   4 +-
 .../java/org/apache/tamaya/ConfigQuery.java     |   2 +-
 .../java/org/apache/tamaya/Configuration.java   |  28 +--
 .../apache/tamaya/ConfigurationProvider.java    |  10 +-
 .../java/org/apache/tamaya/TypeLiteral.java     |  20 +-
 .../apache/tamaya/spi/ConfigurationContext.java |   4 +-
 .../tamaya/spi/ConfigurationContextBuilder.java |  16 +-
 .../tamaya/spi/ConfigurationProviderSpi.java    |   2 +-
 .../apache/tamaya/spi/ConversionContext.java    |  24 +--
 .../org/apache/tamaya/spi/FilterContext.java    |  21 ++-
 .../org/apache/tamaya/spi/PropertyFilter.java   |   2 +-
 .../org/apache/tamaya/spi/PropertySource.java   |   6 +-
 .../org/apache/tamaya/spi/PropertyValue.java    |  69 ++++---
 .../apache/tamaya/spi/PropertyValueBuilder.java |  43 +++--
 .../org/apache/tamaya/spi/ServiceContext.java   |   6 +-
 .../tamaya/spi/ServiceContextManager.java       |   4 +-
 .../java/org/apache/tamaya/TypeLiteralTest.java |  31 +++-
 .../apache/tamaya/spi/FilterContextTest.java    |  27 +++
 .../tamaya/spi/PropertyValueBuilderTest.java    |  78 +++++++-
 .../apache/tamaya/spi/PropertyValueTest.java    |  77 +++++++-
 .../tamaya/spi/ServiceContextManagerTest.java   |   7 +-
 .../core/internal/ConfigValueEvaluator.java     |   6 +-
 .../core/internal/DefaultConfiguration.java     |  31 +++-
 .../core/internal/DefaultServiceContext.java    |   2 +-
 .../core/internal/OSGIServiceComparator.java    |   4 +-
 .../internal/PriorityServiceComparator.java     |   4 +-
 .../core/internal/PropertyConverterManager.java |   8 +-
 .../tamaya/core/internal/PropertyFiltering.java |   8 +-
 .../core/internal/PropertySourceComparator.java |   2 +-
 .../core/propertysource/BasePropertySource.java |  10 +-
 .../core/propertysource/CLIPropertySource.java  |   2 +-
 .../propertysource/SimplePropertySource.java    |  10 +-
 .../tamaya/core/internal/BannerManagerTest.java |   1 +
 .../DefaultConfigurationContextBuilderTest.java |   1 +
 .../DefaultConfigurationContextTest.java        |   2 +-
 .../core/internal/DefaultConfigurationTest.java | 181 +++++++++++++++++++
 37 files changed, 605 insertions(+), 152 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/ConfigException.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/ConfigException.java b/code/api/src/main/java/org/apache/tamaya/ConfigException.java
index bac2ef4..38b0801 100644
--- a/code/api/src/main/java/org/apache/tamaya/ConfigException.java
+++ b/code/api/src/main/java/org/apache/tamaya/ConfigException.java
@@ -27,7 +27,7 @@ public class ConfigException extends RuntimeException{
 
     /**
      * Creates a new configuration exception.
-     * @param message the exception message, not null.
+     * @param message the exception message, not {@code null}.
      */
     public ConfigException(String message){
         super(message);
@@ -35,7 +35,7 @@ public class ConfigException extends RuntimeException{
 
     /**
      * Creates a new configuration exception.
-     * @param message the exception message, not null.
+     * @param message the exception message, not {@code null}.
      * @param t the throwable.
      */
     public ConfigException(String message, Throwable t){

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/ConfigOperator.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/ConfigOperator.java b/code/api/src/main/java/org/apache/tamaya/ConfigOperator.java
index 2295b07..2144218 100644
--- a/code/api/src/main/java/org/apache/tamaya/ConfigOperator.java
+++ b/code/api/src/main/java/org/apache/tamaya/ConfigOperator.java
@@ -30,8 +30,8 @@ public interface ConfigOperator {
      * decorators, whereas operated instances may have non compatible behaviour, e.g. by applying security constraints
      * or view restrictions.
      *
-     * @param config the input configuration, not null.
-     * @return the operated configuration, never null.
+     * @param config the input configuration, not {@code null}.
+     * @return the operated configuration, never {@code null}.
      */
     Configuration operate(Configuration config);
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/ConfigQuery.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/ConfigQuery.java b/code/api/src/main/java/org/apache/tamaya/ConfigQuery.java
index 9ef0179..60e87bb 100644
--- a/code/api/src/main/java/org/apache/tamaya/ConfigQuery.java
+++ b/code/api/src/main/java/org/apache/tamaya/ConfigQuery.java
@@ -29,7 +29,7 @@ public interface ConfigQuery<T> {
      * Creates a result based on the given Configuration. Queries basically acts similar to
      * operators, whereas they returns any kind of result.
      *
-     * @param config the input configuration, not null.
+     * @param config the input configuration, not {@code null}.
      * @return the query result.
      */
     T query(Configuration config);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/Configuration.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/Configuration.java b/code/api/src/main/java/org/apache/tamaya/Configuration.java
index c677ef5..6683c3b 100644
--- a/code/api/src/main/java/org/apache/tamaya/Configuration.java
+++ b/code/api/src/main/java/org/apache/tamaya/Configuration.java
@@ -50,7 +50,7 @@ public interface Configuration {
     /**
      * Access a property.
      *
-     * @param key the property's key, not null.
+     * @param key the property's key, not {@code null}.
      * @return the property's keys.
      */
     String get(String key);
@@ -58,8 +58,8 @@ public interface Configuration {
     /**
      * Access a property.
      *
-     * @param key the property's key, not null.
-     * @param defaultValue value to be returned, if no value is present.
+     * @param key the property's key, not {@code null}.
+     * @param defaultValue value to be returned, if no value is present, not {@code null}
      * @return the property's keys.
      */
     String getOrDefault(String key, String defaultValue);
@@ -71,10 +71,10 @@ public interface Configuration {
      *
      * @param <T> the type of the class modeled by the type parameter
      * @param key          the property's absolute, or relative path, e.g. @code
-     *                     a/b/c/d.myProperty}.
-     * @param type         The target type required, not null.
-     * @param defaultValue value to be used, if no value is present.
-     * @return the property value, never null..
+     *                     a/b/c/d.myProperty}, not  {@code null}.
+     * @param type         The target type required, not  {@code null}.
+     * @param defaultValue value to be used, if no value is present, not {@code null}
+     * @return the property value, never {@code null}.
      * @throws ConfigException if the keys could not be converted to the required target type.
      */
     <T> T getOrDefault(String key, Class<T> type, T defaultValue);
@@ -100,9 +100,9 @@ public interface Configuration {
      *
      * @param <T> the type of the type literal
      * @param key          the property's absolute, or relative path, e.g. @code
-     *                     a/b/c/d.myProperty}.
-     * @param type         The target type required, not null.
-     * @return the property value, never null.
+     *                     a/b/c/d.myProperty}, not {@code null}.
+     * @param type         The target type required, not {@code null}.
+     * @return the property value, never {@code null}.
      * @throws ConfigException if the keys could not be converted to the required target type.
      */
     <T> T get(String key, TypeLiteral<T> type);
@@ -114,8 +114,8 @@ public interface Configuration {
      *
      * @param <T> the type of the type literal
      * @param key          the property's absolute, or relative path, e.g.
-     *                     {@code a/b/c/d.myProperty}.
-     * @param type         The target type required, not null.
+     *                     {@code a/b/c/d.myProperty}, not {@code null}.
+     * @param type         The target type required, not {@code null}.
      * @param defaultValue default value to be used, if no value is present.
      * @return the property value, never null.
      * @throws ConfigException if the keys could not be converted to the required target type.
@@ -135,7 +135,7 @@ public interface Configuration {
      * Extension point for adjusting configuration.
      *
      * @param operator A configuration operator, e.g. a filter, or an adjuster
-     *                 combining configurations.
+     *                 combining configurations, never  {@code null}.
      * @return the new adjusted configuration returned by the {@code operator}, never {@code null}.
      */
     Configuration with(ConfigOperator operator);
@@ -144,7 +144,7 @@ public interface Configuration {
      * Query a configuration.
      *
      * @param <T> the type of the configuration.
-     * @param query the query, never {@code null}.
+     * @param query the query, not {@code null}.
      * @return the result returned by the {@code query}.
      */
     <T> T query(ConfigQuery<T> query);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/ConfigurationProvider.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/ConfigurationProvider.java b/code/api/src/main/java/org/apache/tamaya/ConfigurationProvider.java
index a6ef03c..8594a94 100644
--- a/code/api/src/main/java/org/apache/tamaya/ConfigurationProvider.java
+++ b/code/api/src/main/java/org/apache/tamaya/ConfigurationProvider.java
@@ -49,7 +49,7 @@ public final class ConfigurationProvider {
     /**
      * Access the current configuration.
      *
-     * @return the corresponding Configuration instance, never null.
+     * @return the corresponding Configuration instance, never {@code null}.
      */
     public static Configuration getConfiguration() {
         return spi().getConfiguration();
@@ -58,10 +58,11 @@ public final class ConfigurationProvider {
     /**
      * Creates a new configuration instance based on the given context.
      *
-     * @param context the configuration context, not null.
-     * @return a new Configuration instance, never null.
+     * @param context the configuration context, not {@code null}.
+     * @return a new Configuration instance, never {@code null}.
      */
     public static Configuration createConfiguration(ConfigurationContext context) {
+        if (1==1) throw new RuntimeException("No tests written.");
         return spi().createConfiguration(context);
     }
 
@@ -99,12 +100,13 @@ public final class ConfigurationProvider {
      * corresponding update events for the current {@link org.apache.tamaya.Configuration}, so observing
      * listeners can do whatever is appropriate to react to any given configuration change.
      *
-     * @param config the new Configuration to be applied, not null..
+     * @param config the new Configuration to be applied, not {@code null}
      * @throws java.lang.UnsupportedOperationException if the current provider is read-only and
      *                                                 does not support
      *                                                 applying a new Configuration.
      */
     public static void setConfiguration(Configuration config) {
+        if (1==1) throw new RuntimeException("No tests written.");
         LOG.info("TAMAYA Applying new Configuration: " + config);
         spi().setConfiguration(config);
     }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/TypeLiteral.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/TypeLiteral.java b/code/api/src/main/java/org/apache/tamaya/TypeLiteral.java
index 729f2b6..89c875d 100644
--- a/code/api/src/main/java/org/apache/tamaya/TypeLiteral.java
+++ b/code/api/src/main/java/org/apache/tamaya/TypeLiteral.java
@@ -22,6 +22,7 @@ import java.io.Serializable;
 import java.lang.reflect.GenericArrayType;
 import java.lang.reflect.ParameterizedType;
 import java.lang.reflect.Type;
+import java.util.Objects;
 
 
 /**
@@ -49,6 +50,8 @@ public class TypeLiteral<T> implements Serializable {
      * @param definedType the defined type.
      */
     public TypeLiteral(Type definedType) {
+        Objects.requireNonNull(definedType, "Type must be given");
+
         this.definedType = definedType;
     }
 
@@ -62,22 +65,27 @@ public class TypeLiteral<T> implements Serializable {
     /**
      * Creates a new TypeLiteral based on a given type.
      *
-     * @param type the type , not null.
+     * @param type the type , not {@code null}.
      * @param <R>  the literal generic type.
-     * @return the corresponding TypeLiteral, never null.
+     * @return the corresponding TypeLiteral, never {@code null}.
      */
     public static <R> TypeLiteral<R> of(Type type) {
+        Objects.requireNonNull(type, "Type must be given.");
+
         return new TypeLiteral<>(type);
     }
 
     /**
      * Checks the current implemented generic interfaces and evaluates the given single type parameter.
      *
-     * @param clazz         the class to check, not null.
-     * @param interfaceType the interface type to be checked, not null.
+     * @param clazz         the class to check, not  {@code null}.
+     * @param interfaceType the interface type to be checked, not {@code null}.
      * @return the generic type parameter, or null, if it cannot be evaluated.
      */
     public static Type[] getGenericInterfaceTypeParameters(Class<?> clazz, Class<?> interfaceType) {
+        Objects.requireNonNull(clazz, "Class parameter must be given.");
+        Objects.requireNonNull(interfaceType, "Interface parameter must be given.");
+
         for (Type type : clazz.getGenericInterfaces()) {
             if (type instanceof ParameterizedType) {
                 ParameterizedType parameterizedType = (ParameterizedType) type;
@@ -92,10 +100,12 @@ public class TypeLiteral<T> implements Serializable {
     /**
      * Method that checks the class's type for a generic interface implementation type.
      *
-     * @param type         the type, not null.
+     * @param type         the type, not {@code null}.
      * @return the generic type parameter of the given single type generic interfaceType, or null.
      */
     public static Type[] getTypeParameters(Type type) {
+        Objects.requireNonNull(type, "Type must be given.");
+
         if (type instanceof ParameterizedType) {
             ParameterizedType parameterizedType = (ParameterizedType) type;
             return parameterizedType.getActualTypeArguments();

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationContext.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationContext.java b/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationContext.java
index 8f15e85..c33cf9d 100644
--- a/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationContext.java
+++ b/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationContext.java
@@ -58,8 +58,8 @@ public interface ConfigurationContext {
 
     /**
      * Access a {@link PropertySource} using its (unique) name.
-     * @param name the propoerty source's name, not null.
-     * @return the propoerty source found, or null.
+     * @param name the propoerty source's name, not {@code null}.
+     * @return the propoerty source found, or {@code null}.
      */
     PropertySource getPropertySource(String name);
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationContextBuilder.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationContextBuilder.java b/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationContextBuilder.java
index dc912da..f1fbe4e 100644
--- a/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationContextBuilder.java
+++ b/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationContextBuilder.java
@@ -47,7 +47,7 @@ public interface ConfigurationContextBuilder {
      * policy of the given {@link ConfigurationContext} and initialize the current builder
      * with them.
      *
-     * @param context the {@link ConfigurationContext} instance to be used, not null.
+     * @param context the {@link ConfigurationContext} instance to be used, not {@code null}.
      * @return this builder, for chaining, never null.
      */
     ConfigurationContextBuilder setContext(ConfigurationContext context);
@@ -90,7 +90,7 @@ public interface ConfigurationContextBuilder {
      * Removes the given property sources, if existing. The existing order of property
      * sources is preserved.
      *
-     * @param propertySources the property sources to remove, not null.
+     * @param propertySources the property sources to remove, not {@code null}.
      * @return the builder for chaining.
      */
     ConfigurationContextBuilder removePropertySources(PropertySource... propertySources);
@@ -99,7 +99,7 @@ public interface ConfigurationContextBuilder {
      * Removes the given property sources, if existing. The existing order of property
      * sources is preserved.
      *
-     * @param propertySources the property sources to remove, not null.
+     * @param propertySources the property sources to remove, not {@code null}.
      * @return the builder for chaining.
      */
     ConfigurationContextBuilder removePropertySources(Collection<PropertySource> propertySources);
@@ -108,7 +108,7 @@ public interface ConfigurationContextBuilder {
      * Access the current chain of property sources. Items at the end of the list have
      * precedence/more significance.
      *
-     * @return the property source chain, never null.
+     * @return the property source chain, never {@code null}.
      */
     List<PropertySource> getPropertySources();
 
@@ -116,7 +116,7 @@ public interface ConfigurationContextBuilder {
      * Access the current chain of property filters. Items at the end of the list have
      * precedence/more significance.
      *
-     * @return the property source chain, never null.
+     * @return the property source chain, never {@code null}.
      */
     List<PropertyFilter> getPropertyFilters();
 
@@ -296,7 +296,7 @@ public interface ConfigurationContextBuilder {
      *
      * NOTE: property sources at the beginning have minimal significance.
      *
-     * @param comparator the comparator to be used, not null.
+     * @param comparator the comparator to be used, not {@code null}.
      * @return this instance for chaining.
      */
     ConfigurationContextBuilder sortPropertySources(Comparator<PropertySource> comparator);
@@ -306,7 +306,7 @@ public interface ConfigurationContextBuilder {
      *
      * NOTE: property filters at the beginning have minimal significance.
      *
-     * @param comparator the comparator to be used, not null.
+     * @param comparator the comparator to be used, not {@code null}.
      * @return this instance for chaining.
      */
     ConfigurationContextBuilder sortPropertyFilter(Comparator<PropertyFilter> comparator);
@@ -315,7 +315,7 @@ public interface ConfigurationContextBuilder {
      * Sets the {@link PropertyValueCombinationPolicy} used to evaluate the final
      * property values.
      *
-     * @param policy the {@link PropertyValueCombinationPolicy} used, not null
+     * @param policy the {@link PropertyValueCombinationPolicy} used, not {@code null}.
      * @return this builder, for chaining, never null.
      */
     ConfigurationContextBuilder setPropertyValueCombinationPolicy(PropertyValueCombinationPolicy policy);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationProviderSpi.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationProviderSpi.java b/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationProviderSpi.java
index 1f473e3..63f09e9 100644
--- a/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationProviderSpi.java
+++ b/code/api/src/main/java/org/apache/tamaya/spi/ConfigurationProviderSpi.java
@@ -39,7 +39,7 @@ public interface ConfigurationProviderSpi {
      * Create a {@link Configuration} instance using the given context. The configuration
      * created hereby must respect the artifacts provided by its context (property sources,
      * filters, converters, policies etc), including their ordering and significance.
-     * @param context the context to be used, not null.
+     * @param context the context to be used, not {@code null}.
      * @return the corresponding configuration instance.
      */
     Configuration createConfiguration(ConfigurationContext context);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/spi/ConversionContext.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/spi/ConversionContext.java b/code/api/src/main/java/org/apache/tamaya/spi/ConversionContext.java
index 5b4835a..0bfda0b 100644
--- a/code/api/src/main/java/org/apache/tamaya/spi/ConversionContext.java
+++ b/code/api/src/main/java/org/apache/tamaya/spi/ConversionContext.java
@@ -44,7 +44,7 @@ public class ConversionContext {
 
     /**
      * Private constructor used from builder.
-     * @param builder the builder, not null.
+     * @param builder the builder, not {@code null}.
      */
     protected ConversionContext(Builder builder){
         this.key = builder.key;
@@ -75,7 +75,7 @@ public class ConversionContext {
 
     /**
      * Get the annotated element, if conversion is performed using injection mechanisms.
-     * @return the annotated element, or null.
+     * @return the annotated element, or {@code null}.
      */
     public AnnotatedElement getAnnotatedElement(){
         return annotatedElement;
@@ -83,7 +83,7 @@ public class ConversionContext {
 
     /**
      * Get the configuration, which is targeted.
-     * @return the configuration instance, or null.
+     * @return the configuration instance, or {@code null}.
      */
     public Configuration getConfiguration(){
         return configuration;
@@ -107,7 +107,7 @@ public class ConversionContext {
     /**
      * Get the supported/tried formats in precedence order. The contents of this method depends on the
      * {@link PropertyConverter} instances involved in a conversion.
-     * @return the supported/tried formats, never null.
+     * @return the supported/tried formats, never {@code null}.
      */
     public List<String> getSupportedFormats(){
         synchronized (supportedFormats){
@@ -166,9 +166,9 @@ public class ConversionContext {
 
         /**
          * Creates a new Builder instance.
-         * @param configuration the configuration, not null.
-         * @param configurationContext configuration context, not null.
-         * @param key the requested key, may be null.
+         * @param configuration the configuration, not {@code null}.
+         * @param configurationContext configuration context, not {@code null}.
+         * @param key the requested key, may be {@code null}.
          * @param targetType the target type
          */
         public Builder(Configuration configuration, ConfigurationContext configurationContext, String key, TypeLiteral<?> targetType){
@@ -180,7 +180,7 @@ public class ConversionContext {
 
         /**
          * Sets the key.
-         * @param key the key, not null.
+         * @param key the key, not {@code null}.
          * @return the builder instance, for chaining
          */
         public Builder setKey(String key){
@@ -190,7 +190,7 @@ public class ConversionContext {
 
         /**
          * Sets the configuration.
-         * @param configuration the configuration, not null
+         * @param configuration the configuration, not {@code null}
          * @return the builder instance, for chaining
          */
         public Builder setConfiguration(Configuration configuration){
@@ -200,7 +200,7 @@ public class ConversionContext {
 
         /**
          * Sets the configuration.
-         * @param configurationContext the configuration, not null
+         * @param configurationContext the configuration, not {@code null}
          * @return the builder instance, for chaining
          */
         public Builder setConfigurationContext(ConfigurationContext configurationContext){
@@ -210,7 +210,7 @@ public class ConversionContext {
 
         /**
          * Sets the annotated element, when configuration is injected.
-         * @param annotatedElement the annotated element, not null
+         * @param annotatedElement the annotated element, not {@code null}
          * @return the builder instance, for chaining
          */
         public Builder setAnnotatedElement(AnnotatedElement annotatedElement){
@@ -221,7 +221,7 @@ public class ConversionContext {
         /**
          * Add the formats provided by a {@link PropertyConverter}. This method should be called by each converter
          * performing/trying conversion, so the user can be given feedback on the supported formats on failure.
-         * @param converterType the converter type, not null.
+         * @param converterType the converter type, not {@code null}.
          * @param formatDescriptors the formats supported in a human readable form, e.g. as regular expressions.
          * @return the builder instance, for chaining
          */

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/spi/FilterContext.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/spi/FilterContext.java b/code/api/src/main/java/org/apache/tamaya/spi/FilterContext.java
index e3f4465..411c732 100644
--- a/code/api/src/main/java/org/apache/tamaya/spi/FilterContext.java
+++ b/code/api/src/main/java/org/apache/tamaya/spi/FilterContext.java
@@ -44,11 +44,17 @@ public class FilterContext {
     /**
      * Creates a new FilterContext, for filtering of a multi value access
      * using {@link Configuration#getProperties()}.
-     * @param value the value under evaluation, not null.
-     * @param configEntries the raw configuration data available in the current evaluation context, not null.
-     * @param context the current context, not null.
+     *
+     * @param value the value under evaluation, not {@code null}.
+     * @param configEntries the raw configuration data available in the
+     *                      current evaluation context, not {@code null}.
+     * @param context the current context, not {@code null}.
      */
     public FilterContext(PropertyValue value, Map<String,PropertyValue> configEntries, ConfigurationContext context) {
+        Objects.requireNonNull(value, "Value must not be null.");
+        Objects.requireNonNull(configEntries, "Initial configuration entries must be not null.");
+        Objects.requireNonNull(context, "Context must be not null.");
+
         this.singlePropertyScoped = false;
         this.value = Objects.requireNonNull(value);
         this.context = Objects.requireNonNull(context);
@@ -59,10 +65,13 @@ public class FilterContext {
     /**
      * Creates a new FilterContext, for filtering of a single value access
      * using {@link Configuration#getProperties()}.
-     * @param value the value under evaluation, not null.
-     * @param context the current context, not null.
+     * @param value the value under evaluation, not {@code null}.
+     * @param context the current context, not {@code null}.
      */
     public FilterContext(PropertyValue value, ConfigurationContext context) {
+        Objects.requireNonNull(value, "Value must not be null.");
+        Objects.requireNonNull(context, "Context must be not null.");
+
         this.singlePropertyScoped = true;
         this.context = Objects.requireNonNull(context);
         this.value = Objects.requireNonNull(value);
@@ -71,7 +80,7 @@ public class FilterContext {
 
     /**
      * Get the current context.
-     * @return the current context, not null.
+     * @return the current context, not {@code null}.
      */
     public ConfigurationContext getContext(){
         return context;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/spi/PropertyFilter.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/spi/PropertyFilter.java b/code/api/src/main/java/org/apache/tamaya/spi/PropertyFilter.java
index c14bd3c..350bd73 100644
--- a/code/api/src/main/java/org/apache/tamaya/spi/PropertyFilter.java
+++ b/code/api/src/main/java/org/apache/tamaya/spi/PropertyFilter.java
@@ -40,7 +40,7 @@ public interface PropertyFilter {
      *     <li>thread-safe</li>
      * </ul>
      * @param value the value to be filtered, which also can be {@code null} if removed by another filter.
-     * @param context the filter context, not null.
+     * @param context the filter context, not {@code null}.
      * @return the filtered value, or {@code null} if the value should be removed alltogether.
      * @see PropertyValue
      * @see PropertyValueBuilder

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/spi/PropertySource.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/spi/PropertySource.java b/code/api/src/main/java/org/apache/tamaya/spi/PropertySource.java
index e0093af..0f3ce45 100644
--- a/code/api/src/main/java/org/apache/tamaya/spi/PropertySource.java
+++ b/code/api/src/main/java/org/apache/tamaya/spi/PropertySource.java
@@ -134,14 +134,14 @@ public interface PropertySource {
     /**
      * Get the name of the property source. The name should be unique for the type of source, whereas the id is used
      * to ensure unique identity, either locally or remotely.
-     * @return the configuration's name, never null.
+     * @return the configuration's name, never {@code null}.
      */
     String getName();
 
     /**
      * Access a property.
      *
-     * @param key the property's key, not null.
+     * @param key the property's key, not {@code null}.
      * @return the property value map, where {@code map.get(key) == value}, including also any metadata. In case a
      * value is null, simply return {@code null}.
      */
@@ -150,7 +150,7 @@ public interface PropertySource {
     /**
      * Access the current properties as Set. The resulting Map may not return all items accessible, e.g.
      * when the underlying storage does not support iteration of its entries.
-     *
+     {@code null}
      * @return the corresponding map, never null.
      */
     Map<String, PropertyValue> getProperties();

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/spi/PropertyValue.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/spi/PropertyValue.java b/code/api/src/main/java/org/apache/tamaya/spi/PropertyValue.java
index a622509..0996667 100644
--- a/code/api/src/main/java/org/apache/tamaya/spi/PropertyValue.java
+++ b/code/api/src/main/java/org/apache/tamaya/spi/PropertyValue.java
@@ -52,9 +52,10 @@ public final class PropertyValue implements Serializable{
 
     /**
      * Creates a new instance
-     * @param key the key, not null.
-     * @param value the value, not null.
-     * @param source the source, typically the name of the {@link PropertySource} providing the value, not null.
+     * @param key the key, not {@code null}.
+     * @param value the value, not {@code null}.
+     * @param source the source, typically the name of the {@link PropertySource} providing
+     *               the value, not {@code null}.
      */
     private PropertyValue(String key, String value, String source){
         this.key = Objects.requireNonNull(key, "key is required.");
@@ -64,7 +65,7 @@ public final class PropertyValue implements Serializable{
 
     /**
      * The requested key.
-     * @return the, key never null.
+     * @return the, key never {@code null}.
      */
     public String getKey() {
         return key;
@@ -72,7 +73,7 @@ public final class PropertyValue implements Serializable{
 
     /**
      * The source.
-     * @return the source, which provided the value, not null.
+     * @return the source, which provided the value, not {@code null}.
      * @see PropertySource#getName().
      */
     public String getSource() {
@@ -100,34 +101,45 @@ public final class PropertyValue implements Serializable{
 
     /**
      * Creates a new builder instance.
-     * @param key the key, not null.
-     * @param source the source, typically the name of the {@link PropertySource} providing the value, not null.
+     * @param key the key, not {@code null}.
+     * @param source the source, typically the name of the {@link PropertySource}
+     *               providing the value, not {@code null}.
      * @return a new builder instance.
      */
     public static PropertyValueBuilder builder(String key, String source){
+        Objects.requireNonNull(key, "Key must be given.");
+        Objects.requireNonNull(source, "Source must be given");
+
         return new PropertyValueBuilder(key, source);
     }
 
     /**
      * Creates a new builder instance.
-     * @param key the key, not null.
-     * @param source the source, typically the name of the {@link PropertySource} providing the value, not null.
+     * @param key the key, not {@code null}.
+     * @param source the source, typically the name of the {@link PropertySource}
+     *               providing the value, not {@code null}.
      * @return a new builder instance.
      */
-    public static PropertyValueBuilder builder(String key, String value, String source){
+    public static PropertyValueBuilder builder(String key, String value, String source) {
+        Objects.requireNonNull(key, "Key must be given.");
+        Objects.requireNonNull(value, "Value must be given");
+        Objects.requireNonNull(source, "Source must be given.");
+
         return new PropertyValueBuilder(key, value, source);
     }
 
 
     /**
      * Creates a new PropertyValue without any metadata..
-     * @param key the key, not null.
+     * @param key the key, not {@code null}.
      * @param value the value.
-     * @param source the source, typically the name of the {@link PropertySource} providing the value, not null.
-     * @return a new property value instance, or null, if the value passed is null..
+     * @param source the source, typically the name of the {@link PropertySource}
+     *               providing the value, not  {@code null}.
+     * @return a new property value instance, or {@code null},
+     *         if the value passed is {@code null}..
      */
-    public static PropertyValue of(String key, String value, String source){
-        if(value==null){
+    public static PropertyValue of(String key, String value, String source) {
+        if (value==null) {
             return null;
         }
         return new PropertyValue(key, value, source);
@@ -135,8 +147,8 @@ public final class PropertyValue implements Serializable{
 
     /**
      * Access the given key from this value. Valid keys are the key or any meta-context key.
-     * @param key the key, not null.
-     * @return the value found, or null.
+     * @param key the key, not {@code null}.
+     * @return the value found, or {@code null}.
      */
     public String getMetaEntry(String key) {
         return this.metaEntries.get(Objects.requireNonNull(key));
@@ -181,8 +193,8 @@ public final class PropertyValue implements Serializable{
 
     /**
      * Maps a map of {@code Map<String,String>} to a {@code Map<String,PropertyValue>}.
-     * @param config the String based map, not null.
-     * @param source the source name, not null.
+     * @param config the String based map, not {@code null}.
+     * @param source the source name, not {@code null}.
      * @return the corresponding value based map.
      */
     public static Map<String,PropertyValue> map(Map<String, String> config, String source) {
@@ -195,19 +207,24 @@ public final class PropertyValue implements Serializable{
 
     /**
      * Maps a map of {@code Map<String,String>} to a {@code Map<String,PropertyValue>}.
-     * @param config the String based map, not null.
-     * @param source the source name, not null.
-     * @param metaData additional metadata, not null.
+     *
+     * @param config the String based map, not {@code null}.
+     * @param source the source name, not {@code null}.
+     * @param metaData additional metadata, not {@code null}.
      * @return the corresponding value based map.
      */
     public static Map<String,PropertyValue> map(Map<String, String> config, String source,
                                                 Map<String,String> metaData) {
+        Objects.requireNonNull(config, "Config must be given.");
+        Objects.requireNonNull(source, "Source must be given.");
+        Objects.requireNonNull(metaData, "Meta data must be given.");
+
         Map<String,PropertyValue> result = new HashMap<>(config.size());
+
         for(Map.Entry<String,String> en:config.entrySet()){
-            result.put(en.getKey(),
-                    new PropertyValueBuilder(en.getKey(), source)
-                            .setValue(en.getValue())
-            .addMetaEntries(metaData).build());
+            PropertyValue value = new PropertyValueBuilder(en.getKey(), source).setValue(en.getValue())
+                                                                               .addMetaEntries(metaData).build();
+            result.put(en.getKey(), value);
         }
         return result;
     }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/spi/PropertyValueBuilder.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/spi/PropertyValueBuilder.java b/code/api/src/main/java/org/apache/tamaya/spi/PropertyValueBuilder.java
index 6b4f9fd..cd48d7e 100644
--- a/code/api/src/main/java/org/apache/tamaya/spi/PropertyValueBuilder.java
+++ b/code/api/src/main/java/org/apache/tamaya/spi/PropertyValueBuilder.java
@@ -47,7 +47,7 @@ public class PropertyValueBuilder {
 
     /**
      * Create a new builder instance, for a given set of parameters.
-     * @param key to access a property value.
+     * @param key to access a property value, not  {@code null}.
      * @param source property source.
      */
     PropertyValueBuilder(String key, String source) {
@@ -57,9 +57,10 @@ public class PropertyValueBuilder {
 
     /**
      * Create a new builder instance, for a given set of parameters.
+     *
      * @param key to access a property value.
-     * @param value the value, not null. If a value is null {@link PropertySource#get(String)} should return
-     * {@code null}.
+     * @param value the value, not {@code null}. If a value is  {@code null}
+     *              {@link PropertySource#get(String)} should return {@code null}.
      * @param source property source.
      */
     PropertyValueBuilder(String key, String value, String source) {
@@ -70,7 +71,7 @@ public class PropertyValueBuilder {
 
     /**
      * Replaces/sets the context data.
-     * @param metaEntries the context data to be applied, not null.
+     * @param metaEntries the context data to be applied, not {@code null}.
      * @return the builder for chaining.
      */
     public PropertyValueBuilder setMetaEntries(Map<String, String> metaEntries) {
@@ -81,18 +82,21 @@ public class PropertyValueBuilder {
 
     /**
      * Add an additional context data information.
-     * @param key the context data key, not null.
-     * @param value the context value, not null (will be converted to String).
+     * @param key the context data key, not {@code null}.
+     * @param value the context value, not {@code null} (will be converted to String).
      * @return the builder for chaining.
      */
     public PropertyValueBuilder addMetaEntry(String key, Object value) {
-        this.metaEntries.put(key, String.valueOf(Objects.requireNonNull(value, "Meta value is null.")));
+        Objects.requireNonNull(key, "Meta key must be given.");
+        Objects.requireNonNull(value, "Meta value must be given.");
+
+        this.metaEntries.put(key, String.valueOf(value));
         return this;
     }
 
     /**
      * Adds the context data given.
-     * @param metaEntries the context data to be applied, not null.
+     * @param metaEntries the context data to be applied, not {@code null}.
      * @return the builder for chaining.
      */
     public PropertyValueBuilder addMetaEntries(Map<String, String> metaEntries) {
@@ -102,28 +106,31 @@ public class PropertyValueBuilder {
 
     /**
      * Removes a meta entry.
-     * @param key the entry's key, not null.
+     * @param key the entry's key, not {@code null}.
      * @return the builder for chaining.
      */
     public PropertyValueBuilder removeMetaEntry(String key) {
+        Objects.requireNonNull(key, "Key must be given.");
+
         this.metaEntries.remove(key);
         return this;
     }
 
     /**
      * Get the value's context data.
-     * @return the context data, not null.
+     * @return the context data, not {@code null}.
      */
-    public Map<String,String> getMetaEntries(){
+    public Map<String,String> getMetaEntries() {
         return Collections.unmodifiableMap(this.metaEntries);
     }
 
     /**
      * Changes the entry's key, mapping also corresponding context entries.
-     * @param key the new key, not null.
+     * @param key the new key, not {@code null}.
      * @return the builder for chaining.
      */
     public PropertyValueBuilder mapKey(String key) {
+        if (1==1) throw new RuntimeException("No tests written.");
         Map<String,String> newContext = new HashMap<>();
         for(Map.Entry<String,String> en:this.metaEntries.entrySet()){
             if(en.getKey().startsWith("_"+this.key)){
@@ -139,7 +146,7 @@ public class PropertyValueBuilder {
 
     /**
      * Sets a new key.
-     * @param key the new key, not null.
+     * @param key the new key, not {@code null}.
      * @return the builder for chaining.
      */
     public PropertyValueBuilder setKey(String key) {
@@ -149,27 +156,29 @@ public class PropertyValueBuilder {
 
     /**
      * Sets a new value.
-     * @param value the new value, not null.
+     * @param value the new value, not {@code null}.
      * @return the builder for chaining.
      */
     public PropertyValueBuilder setValue(String value) {
-        this.value = value;
+        this.value = Objects.requireNonNull(value, "Value must be given.");
+
         return this;
     }
 
     /**
      * Sets a new source.
-     * @param source the new source, not null.
+     * @param source the new source, not {@code null}.
      * @return the builder for chaining.
      */
     public PropertyValueBuilder setSource(String source) {
+        if (1==1) throw new RuntimeException("No tests written.");
         this.source = Objects.requireNonNull(source);
         return this;
     }
 
     /**
      * Creates a new immutable {@link PropertyValue}.
-     * @return a new immutable {@link PropertyValue}, never null.
+     * @return a new immutable {@link PropertyValue}, never {@code null}.
      */
     public PropertyValue build(){
         return new PropertyValue(this);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/spi/ServiceContext.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/spi/ServiceContext.java b/code/api/src/main/java/org/apache/tamaya/spi/ServiceContext.java
index 9f1d28e..ef6c0b9 100644
--- a/code/api/src/main/java/org/apache/tamaya/spi/ServiceContext.java
+++ b/code/api/src/main/java/org/apache/tamaya/spi/ServiceContext.java
@@ -75,7 +75,7 @@ public interface ServiceContext {
     /**
      * Loads resources from the current runtime context. This method allows to use runtime
      * specific code to load resources, e.g. within OSGI environments.
-     * @param resource the resource, not null.
+     * @param resource the resource, not {@code null}.
      * @param cl the desired classloader context, if null, the current thread context classloader is used.
      * @return the resources found
      * @throws IOException
@@ -85,9 +85,9 @@ public interface ServiceContext {
     /**
      * Loads a resource from the current runtime context. This method allows to use runtime
      * specific code to load a resource, e.g. within OSGI environments.
-     * @param resource the resource, not null.
+     * @param resource the resource, not {@code null}.
      * @param cl the desired classloader context, if null, the current thread context classloader is used.
-     * @return the resource found, or null.
+     * @return the resource found, or {@code null}.
      * @throws IOException
      */
     URL getResource(String resource, ClassLoader cl);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/main/java/org/apache/tamaya/spi/ServiceContextManager.java
----------------------------------------------------------------------
diff --git a/code/api/src/main/java/org/apache/tamaya/spi/ServiceContextManager.java b/code/api/src/main/java/org/apache/tamaya/spi/ServiceContextManager.java
index 3073232..f58c27a 100644
--- a/code/api/src/main/java/org/apache/tamaya/spi/ServiceContextManager.java
+++ b/code/api/src/main/java/org/apache/tamaya/spi/ServiceContextManager.java
@@ -77,12 +77,12 @@ public final class ServiceContextManager {
     /**
      * Replace the current {@link ServiceContext} in use.
      *
-     * @param serviceContextProvider the new {@link ServiceContext}, not null.
+     * @param serviceContextProvider the new {@link ServiceContext}, not {@code null}.
      * @return the currently used context after setting it.
      */
     public static ServiceContext set(ServiceContext serviceContextProvider) {
-        ServiceContext currentContext = ServiceContextManager.serviceContextProviderDelegate;
         Objects.requireNonNull(serviceContextProvider);
+        ServiceContext currentContext = ServiceContextManager.serviceContextProviderDelegate;
 
         synchronized (ServiceContextManager.class) {
             if (ServiceContextManager.serviceContextProviderDelegate == null) {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/test/java/org/apache/tamaya/TypeLiteralTest.java
----------------------------------------------------------------------
diff --git a/code/api/src/test/java/org/apache/tamaya/TypeLiteralTest.java b/code/api/src/test/java/org/apache/tamaya/TypeLiteralTest.java
index ce130c9..f3ff217 100644
--- a/code/api/src/test/java/org/apache/tamaya/TypeLiteralTest.java
+++ b/code/api/src/test/java/org/apache/tamaya/TypeLiteralTest.java
@@ -20,9 +20,13 @@ package org.apache.tamaya;
 
 import org.junit.Test;
 
+import java.lang.reflect.Type;
 import java.util.ArrayList;
+import java.util.Iterator;
 import java.util.List;
 
+import static org.apache.tamaya.TypeLiteral.getGenericInterfaceTypeParameters;
+import static org.apache.tamaya.TypeLiteral.getTypeParameters;
 import static org.junit.Assert.assertEquals;
 
 /**
@@ -30,6 +34,11 @@ import static org.junit.Assert.assertEquals;
  */
 public class TypeLiteralTest {
 
+    @Test(expected = NullPointerException.class)
+    public void constructorRequiresNonNullParameter() {
+       new TypeLiteral<List<String>>(null){};
+    }
+
     @Test
     public void test_constrcutor(){
         TypeLiteral<List<String>> listTypeLiteral = new TypeLiteral<List<String>>(){};
@@ -45,6 +54,11 @@ public class TypeLiteralTest {
         assertEquals(MyListClass.class, listTypeLiteral.getType());
     }
 
+    @Test(expected = NullPointerException.class)
+    public void ofDoesNotAcceptNullAsParamter() {
+        TypeLiteral.of(null);
+    }
+
     @Test
     public void test_getTypeParameter(){
         TypeLiteral<List<String>> listTypeLiteral = new TypeLiteral<List<String>>(){};
@@ -55,7 +69,22 @@ public class TypeLiteralTest {
     @Test
     public void test_getGenericInterfaceTypeParameter(){
         class MyListClass extends ArrayList<String> implements List<String>{}
-        assertEquals(String.class, TypeLiteral.getGenericInterfaceTypeParameters(MyListClass.class, List.class)[0]);
+        assertEquals(String.class, getGenericInterfaceTypeParameters(MyListClass.class, List.class)[0]);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void getGenericInterfaceTypeParametersRequiredNonNullValueForClassParameter() {
+        getGenericInterfaceTypeParameters(null, Iterator.class);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void getGenericInterfaceTypeParametersRequiredNonNullValueForInterfaceParameter() {
+        getGenericInterfaceTypeParameters(String.class, null);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void getTypeParametersRequiresNonNullParameter() {
+        getTypeParameters(null);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/test/java/org/apache/tamaya/spi/FilterContextTest.java
----------------------------------------------------------------------
diff --git a/code/api/src/test/java/org/apache/tamaya/spi/FilterContextTest.java b/code/api/src/test/java/org/apache/tamaya/spi/FilterContextTest.java
index 3d0e1f0..3123660 100644
--- a/code/api/src/test/java/org/apache/tamaya/spi/FilterContextTest.java
+++ b/code/api/src/test/java/org/apache/tamaya/spi/FilterContextTest.java
@@ -21,6 +21,7 @@ package org.apache.tamaya.spi;
 import org.apache.tamaya.TypeLiteral;
 import org.junit.Test;
 
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -31,6 +32,32 @@ import static org.junit.Assert.*;
  * Tests for {@link FilterContext}.
  */
 public class FilterContextTest {
+
+    @Test(expected = NullPointerException.class)
+    public void constructorRequiresNonNullPropertyValueTwoParameterVariant() {
+        new FilterContext(null, new TestConfigContext());
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void constructorRequiresNonNullConfigurationContextTwoParameterVariant() {
+        new FilterContext(PropertyValue.of("a", "b", "s"), null);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void constructorRequiresNonNullPropertyValueThreeParameterVariant() {
+        new FilterContext(null, Collections.EMPTY_MAP, new TestConfigContext());
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void constructorRequiresNonNullConfigurationContextThreeParameterVariant() {
+        new FilterContext(PropertyValue.of("a", "b", "s"), Collections.EMPTY_MAP, null);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void constructorRequiresNonNullMapForConfigEntriesThreeParameterVariant() {
+        new FilterContext(PropertyValue.of("a", "b", "s"), null, new TestConfigContext());
+    }
+
     @Test
     public void getKey() throws Exception {
         PropertyValue val = PropertyValue.of("getKey", "v", "");

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/test/java/org/apache/tamaya/spi/PropertyValueBuilderTest.java
----------------------------------------------------------------------
diff --git a/code/api/src/test/java/org/apache/tamaya/spi/PropertyValueBuilderTest.java b/code/api/src/test/java/org/apache/tamaya/spi/PropertyValueBuilderTest.java
index 75597ea..4d6eda9 100644
--- a/code/api/src/test/java/org/apache/tamaya/spi/PropertyValueBuilderTest.java
+++ b/code/api/src/test/java/org/apache/tamaya/spi/PropertyValueBuilderTest.java
@@ -26,11 +26,78 @@ import java.util.Map;
 
 import static org.junit.Assert.*;
 
-/**
- * Created by atsticks on 02.02.16.
- */
 public class PropertyValueBuilderTest {
 
+    /*
+     * Tests for PropertyValueBuilder(String)
+     */
+
+    @Test(expected = NullPointerException.class)
+    public void constructorWithSingleParameterRequiresNonNullValue() {
+        new PropertyValue(null);
+    }
+
+    /*
+     * Tests for PropertyValueBuilder(String, String)
+     */
+
+    @Test(expected = NullPointerException.class)
+    public void constructorWithTwoParametersRequiresNonNullValueForKey() {
+        new PropertyValueBuilder(null, "s");
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void constructorWithTwoParametersRequiresNonNullValueForSource() {
+        new PropertyValueBuilder("a", null);
+    }
+
+    /*
+     * Tests for PropertyValueBuilder(String, String, String)
+     */
+
+    @Test(expected = NullPointerException.class)
+    public void constructorWithThreeParametersRequiresNonNullValueForSource() {
+        new PropertyValueBuilder("a", "b", null);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void constructorWithThreeParametersRequiresNonNullValueForKey() {
+        new PropertyValueBuilder(null, "b", "s");
+    }
+
+    /*
+     * Tests for addMetaEntry(String, Object)
+     */
+
+    @Test(expected = NullPointerException.class)
+    public void addMetaEntryRequiresNonNullParameterForKey() {
+        new PropertyValueBuilder("a", "b", "c").addMetaEntry(null, "a");
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void addMetaEntryRequiresNonNullParameterForValue() {
+        new PropertyValueBuilder("a", "b", "c").addMetaEntry("a", null);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void setKeyRequiresNonNullParameterForKey() {
+        new PropertyValueBuilder("a", "b", "s").setKey(null);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void setKeyRequiresNonNullParameterForValue() {
+        new PropertyValueBuilder("a", "b", "s").setValue(null);
+    }
+
+    /*
+     * Tests f�r addMetaEntries(Map)
+     */
+
+    @Test(expected = NullPointerException.class)
+    public void addMetaEntriesRequiresNonNullParameter() {
+        new PropertyValueBuilder("a", "b", "s").addMetaEntries(null);
+    }
+
     @Test
     public void testCreate1(){
         new PropertyValueBuilder("k");
@@ -113,6 +180,11 @@ public class PropertyValueBuilderTest {
         assertEquals("v", pv.getValue());
     }
 
+    @Test(expected = NullPointerException.class)
+    public void removeMetaEntryRequiresNonNullParameter() {
+        new PropertyValueBuilder("y").removeMetaEntry(null);
+    }
+
     @Test
     public void testRemoveMetaEntry() throws Exception {
         PropertyValue pv = PropertyValue.builder("k", "testGetKey")

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/test/java/org/apache/tamaya/spi/PropertyValueTest.java
----------------------------------------------------------------------
diff --git a/code/api/src/test/java/org/apache/tamaya/spi/PropertyValueTest.java b/code/api/src/test/java/org/apache/tamaya/spi/PropertyValueTest.java
index 533e978..c321984 100644
--- a/code/api/src/test/java/org/apache/tamaya/spi/PropertyValueTest.java
+++ b/code/api/src/test/java/org/apache/tamaya/spi/PropertyValueTest.java
@@ -20,21 +20,56 @@ package org.apache.tamaya.spi;
 
 import org.junit.Test;
 
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
 import static org.junit.Assert.*;
 
-/**
- * Created by atsticks on 02.02.16.
- */
 public class PropertyValueTest {
 
+    @Test(expected = NullPointerException.class)
+    public void mapThreeParameterVariantRequiresNonNullValueForConfigParameter() {
+        PropertyValue.map(null, "a", Collections.EMPTY_MAP);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void mapThreeParameterVariantRequiresNonNullValueForSource() {
+        PropertyValue.map(Collections.EMPTY_MAP, null, Collections.EMPTY_MAP);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void mapThreeParameterVariantRequiresNonNullValueForMetaData() {
+        PropertyValue.map(Collections.EMPTY_MAP, "s", null);
+    }
+
+
+
+    @Test(expected = NullPointerException.class)
+    public void ofDoesNotAcceptNullAsKey() throws Exception {
+        PropertyValue.of(null, "b", "source");
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void ofDoesNotAcceptNullAsSource() throws Exception {
+        PropertyValue.of("a", "b", null);
+    }
+
     @Test
     public void testOf(){
         assertNotNull(PropertyValue.of("k", "v", "testGetKey"));
     }
 
+    @Test(expected = NullPointerException.class)
+    public void getMetaEntryRequiresNonNullValueForKey() {
+        PropertyValue.of("a", "b", "s").getMetaEntry(null);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void testSetMetaEntriesRequiresNonNullParameter() {
+        new PropertyValueBuilder("a").setMetaEntries(null);
+    }
+
     @Test
     public void testHashCode(){
         assertEquals(PropertyValue.of("k", "v", "testGetKey").hashCode(),
@@ -121,7 +156,8 @@ public class PropertyValueTest {
         Map<String,PropertyValue> result = PropertyValue.map(map, "source1");
         assertNotNull(result);
         assertEquals(map.size(), result.size());
-        for(Map.Entry<String,String>en:map.entrySet()){
+
+        for (Map.Entry<String,String>en:map.entrySet()) {
             PropertyValue val = result.get(en.getKey());
             assertNotNull(val);
             assertEquals(val.getKey(), en.getKey());
@@ -156,6 +192,7 @@ public class PropertyValueTest {
     public void testInstantiateNoKey1() throws Exception {
         PropertyValue pv = PropertyValue.builder(null, "testGetKey").setValue("v").build();
     }
+
     @Test(expected = NullPointerException.class)
     public void testInstantiateNoKey2() throws Exception {
         PropertyValue pv = PropertyValue.of(null, "v", "testGetKey");
@@ -165,20 +202,52 @@ public class PropertyValueTest {
     public void testInstantiateNoValue1() throws Exception {
         PropertyValue pv = PropertyValue.builder("k", "testGetKey").build();
     }
+
     @Test
     public void testInstantiateNoValue2() throws Exception {
         PropertyValue pv = PropertyValue.of("k", null, "testGetKey");
     }
+
     @Test(expected = NullPointerException.class)
     public void testInstantiateNoSource1() throws Exception {
         PropertyValue pv = PropertyValue.builder("k", null).setValue("v").build();
     }
+
     @Test(expected = NullPointerException.class)
     public void testInstantiateNoSource2() throws Exception {
         PropertyValue pv = PropertyValue.of("k", "v", null);
     }
+
     @Test(expected = NullPointerException.class)
     public void testGetMetaEntry_Null() throws Exception {
         PropertyValue.of("k", "v", "src").getMetaEntry(null);
     }
+
+    @Test(expected = NullPointerException.class)
+    public void builderMethodThreeParameterVariantRequiresNonNullValueAsKey() {
+        PropertyValue.builder(null, "b", "s");
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void builderMethodThreeParameterVariantRequiresNonNullValueAsSource() {
+        PropertyValue.builder("A", "b", null);
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void builderMethodThreeParameterVariantRequiresNonNullValueAsValue() {
+        PropertyValue.builder("A", null, "s");
+    }
+
+
+    @Test(expected = NullPointerException.class)
+    public void builderMethodTwoParameterVariantRequiresNonNullValueAsSource() {
+        PropertyValue.builder(null, "a");
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void builderMethodTwoParameterVariantRequiresNonNullValueAsValue() {
+        PropertyValue.builder("A", null);
+    }
+
+
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/api/src/test/java/org/apache/tamaya/spi/ServiceContextManagerTest.java
----------------------------------------------------------------------
diff --git a/code/api/src/test/java/org/apache/tamaya/spi/ServiceContextManagerTest.java b/code/api/src/test/java/org/apache/tamaya/spi/ServiceContextManagerTest.java
index 423a707..7379555 100644
--- a/code/api/src/test/java/org/apache/tamaya/spi/ServiceContextManagerTest.java
+++ b/code/api/src/test/java/org/apache/tamaya/spi/ServiceContextManagerTest.java
@@ -42,13 +42,18 @@ public class ServiceContextManagerTest {
             assertTrue(ServiceContextManager.getServiceContext() == mine);
             ServiceContextManager.set(mine);
             assertTrue(ServiceContextManager.getServiceContext() == mine);
-        }finally{
+        } finally {
             ServiceContextManager.set(prev);
             assertTrue(ServiceContextManager.getServiceContext() == prev);
         }
 
     }
 
+    @Test(expected = NullPointerException.class)
+    public void setRequiresNonNullParameter() {
+        ServiceContextManager.set(null);
+    }
+
     private static final class MyServiceContext implements ServiceContext{
 
         @Override

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/main/java/org/apache/tamaya/core/internal/ConfigValueEvaluator.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/internal/ConfigValueEvaluator.java b/code/core/src/main/java/org/apache/tamaya/core/internal/ConfigValueEvaluator.java
index 0a3b211..368d763 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/internal/ConfigValueEvaluator.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/internal/ConfigValueEvaluator.java
@@ -33,15 +33,15 @@ public interface ConfigValueEvaluator {
 
     /**
      * Evaluates single value using a {@link ConfigurationContext}.
-     * @param key the config key, not null.
-     * @param context the context, not null.
+     * @param key the config key, not {@code null}.
+     * @param context the context, not {@code null}.
      * @return the value, or null.
      */
     PropertyValue evaluteRawValue(String key, ConfigurationContext context);
 
     /**
      * Evaluates all property values from a {@link ConfigurationContext}.
-     * @param context the context, not null.
+     * @param context the context, not {@code null}.
      * @return the value, or null.
      */
     Map<String, PropertyValue> evaluateRawValues(ConfigurationContext context);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/main/java/org/apache/tamaya/core/internal/DefaultConfiguration.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/internal/DefaultConfiguration.java b/code/core/src/main/java/org/apache/tamaya/core/internal/DefaultConfiguration.java
index 0b25b00..fb1b936 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/internal/DefaultConfiguration.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/internal/DefaultConfiguration.java
@@ -78,6 +78,8 @@ public class DefaultConfiguration implements Configuration {
 
     @Override
     public String get(String key) {
+        Objects.requireNonNull(key, "Key must not be null.");
+
         PropertyValue value = configEvaluator.evaluteRawValue(key, configurationContext);
         if(value==null || value.getValue()==null){
             return null;
@@ -92,6 +94,9 @@ public class DefaultConfiguration implements Configuration {
 
     @Override
     public String getOrDefault(String key, String defaultValue) {
+        Objects.requireNonNull(key, "Key must not be null.");
+        Objects.requireNonNull(defaultValue, "Default value must not be null");
+
         String val = get(key);
         if(val==null){
             return defaultValue;
@@ -101,6 +106,10 @@ public class DefaultConfiguration implements Configuration {
 
     @Override
     public <T> T getOrDefault(String key, Class<T> type, T defaultValue) {
+        Objects.requireNonNull(key, "Key must not be null.");
+        Objects.requireNonNull(type, "Target type must not be null");
+        Objects.requireNonNull(defaultValue, "Default value must not be null");
+
         T val = get(key, type);
         if(val==null){
             return defaultValue;
@@ -137,13 +146,16 @@ public class DefaultConfiguration implements Configuration {
      * {@link ConfigurationContext}.
      *
      * @param key  the property's absolute, or relative path, e.g. @code
-     *             a/b/c/d.myProperty}.
-     * @param type The target type required, not null.
+     *             a/b/c/d.myProperty}, never {@code null}.
+     * @param type The target type required, not {@code null}.
      * @param <T>  the value type
-     * @return the converted value, never null.
+     * @return the converted value, never {@code null}.
      */
     @Override
     public <T> T get(String key, Class<T> type) {
+        Objects.requireNonNull(key, "Key must not be null.");
+        Objects.requireNonNull(type, "Target type must not be null");
+
         return get(key, (TypeLiteral<T>)TypeLiteral.of(type));
     }
 
@@ -154,12 +166,15 @@ public class DefaultConfiguration implements Configuration {
      *
      * @param key  the property's absolute, or relative path, e.g. @code
      *             a/b/c/d.myProperty}.
-     * @param type The target type required, not null.
+     * @param type The target type required, not {@code null}.
      * @param <T>  the value type
-     * @return the converted value, never null.
+     * @return the converted value, never {@code null}.
      */
     @Override
     public <T> T get(String key, TypeLiteral<T> type) {
+        Objects.requireNonNull(key, "Key must not be null.");
+        Objects.requireNonNull(type, "Target type must not be null");
+
         return convertValue(key, get(key), type);
     }
 
@@ -191,6 +206,10 @@ public class DefaultConfiguration implements Configuration {
 
     @Override
     public <T> T getOrDefault(String key, TypeLiteral<T> type, T defaultValue) {
+        Objects.requireNonNull(key);
+        Objects.requireNonNull(type);
+        Objects.requireNonNull(defaultValue);
+
         T val = get(key, type);
         if(val==null){
             return defaultValue;
@@ -200,11 +219,13 @@ public class DefaultConfiguration implements Configuration {
 
     @Override
     public Configuration with(ConfigOperator operator) {
+        if (1==1) throw new RuntimeException("No tests written.");
         return operator.operate(this);
     }
 
     @Override
     public <T> T query(ConfigQuery<T> query) {
+        if (1==1) throw new RuntimeException("No tests written.");
         return query.query(this);
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/main/java/org/apache/tamaya/core/internal/DefaultServiceContext.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/internal/DefaultServiceContext.java b/code/core/src/main/java/org/apache/tamaya/core/internal/DefaultServiceContext.java
index 5285d87..c29aae1 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/internal/DefaultServiceContext.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/internal/DefaultServiceContext.java
@@ -111,7 +111,7 @@ public final class DefaultServiceContext implements ServiceContext {
     /**
      * Checks the given instance for a @Priority annotation. If present the annotation's value s evaluated. If no such
      * annotation is present, a default priority is returned (1);
-     * @param o the instance, not null.
+     * @param o the instance, not {@code null}.
      * @return a priority, by default 1.
      */
     public static int getPriority(Object o){

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/main/java/org/apache/tamaya/core/internal/OSGIServiceComparator.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/internal/OSGIServiceComparator.java b/code/core/src/main/java/org/apache/tamaya/core/internal/OSGIServiceComparator.java
index bfc34bc..a1a99b6 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/internal/OSGIServiceComparator.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/internal/OSGIServiceComparator.java
@@ -44,7 +44,7 @@ class OSGIServiceComparator implements Comparator<ServiceReference> {
      * Checks the given instance for a @Priority annotation. If present the annotation's value s evaluated. If no such
      * annotation is present, a default priority is returned (1);
      *
-     * @param o the instance, not null.
+     * @param o the instance, not {@code null}.
      * @return a priority, by default 1.
      */
     public static int getPriority(Object o) {
@@ -55,7 +55,7 @@ class OSGIServiceComparator implements Comparator<ServiceReference> {
      * Checks the given type optionally annotated with a @Priority. If present the annotation's value s evaluated.
      * If no such annotation is present, a default priority is returned (1);
      *
-     * @param type the type, not null.
+     * @param type the type, not {@code null}.
      * @return a priority, by default 1.
      */
     public static int getPriority(Class type) {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/main/java/org/apache/tamaya/core/internal/PriorityServiceComparator.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/internal/PriorityServiceComparator.java b/code/core/src/main/java/org/apache/tamaya/core/internal/PriorityServiceComparator.java
index f0d855e..d94f0d4 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/internal/PriorityServiceComparator.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/internal/PriorityServiceComparator.java
@@ -55,7 +55,7 @@ public class PriorityServiceComparator implements Comparator<Object> {
      * Checks the given instance for a @Priority annotation. If present the annotation's value s evaluated. If no such
      * annotation is present, a default priority is returned (1);
      *
-     * @param o the instance, not null.
+     * @param o the instance, not {@code null}.
      * @return a priority, by default 1.
      */
     public static int getPriority(Object o) {
@@ -66,7 +66,7 @@ public class PriorityServiceComparator implements Comparator<Object> {
      * Checks the given type optionally annotated with a @Priority. If present the annotation's value s evaluated.
      * If no such annotation is present, a default priority is returned (1);
      *
-     * @param type the type, not null.
+     * @param type the type, not {@code null}.
      * @return a priority, by default 1.
      */
     public static int getPriority(Class type) {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/main/java/org/apache/tamaya/core/internal/PropertyConverterManager.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/internal/PropertyConverterManager.java b/code/core/src/main/java/org/apache/tamaya/core/internal/PropertyConverterManager.java
index 1e9586a..867553a 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/internal/PropertyConverterManager.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/internal/PropertyConverterManager.java
@@ -102,8 +102,8 @@ public class PropertyConverterManager {
     /**
      * Registers a ew converter instance.
      *
-     * @param targetType the target type, not null.
-     * @param converter  the converter, not null.
+     * @param targetType the target type, not {@code null}.
+     * @param converter  the converter, not {@code null}.
      * @param <T>        the type.
      */
     public <T> void register(TypeLiteral<T> targetType, PropertyConverter<T> converter) {
@@ -166,7 +166,7 @@ public class PropertyConverterManager {
     /**
      * Allows to evaluate if a given target type is supported.
      *
-     * @param targetType the target type, not null.
+     * @param targetType the target type, not {@code null}.
      * @return true, if a converter for the given type is registered, or a default one can be created.
      */
     public boolean isTargetTypeSupported(TypeLiteral<?> targetType) {
@@ -214,7 +214,7 @@ public class PropertyConverterManager {
      * Transitive conversion is supported for all directly implemented interfaces (including inherited ones) and
      * the inheritance hierarchy (exception Object). Superinterfaces of implemented interfaces are ignored.
      *
-     * @param targetType the target type, not null.
+     * @param targetType the target type, not {@code null}.
      * @param <T>        the type class
      * @return the ordered list of converters (may be empty for not convertible types).
      * @see #createDefaultPropertyConverter(org.apache.tamaya.TypeLiteral)

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/main/java/org/apache/tamaya/core/internal/PropertyFiltering.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/internal/PropertyFiltering.java b/code/core/src/main/java/org/apache/tamaya/core/internal/PropertyFiltering.java
index 79cca09..16ff457 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/internal/PropertyFiltering.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/internal/PropertyFiltering.java
@@ -52,9 +52,9 @@ public final class PropertyFiltering{
 
     /**
      * Filters a single value.
-     * @param value the raw value, not null.
+     * @param value the raw value, not {@code null}.
      * @param context the context
-     * @return the filtered value, inclusing null.
+     * @return the filtered value, including {@code null}.
      */
     public static PropertyValue applyFilter(PropertyValue value, ConfigurationContext context) {
         FilterContext filterContext = new FilterContext(value, context);
@@ -63,7 +63,7 @@ public final class PropertyFiltering{
 
     /**
      * Filters all properties.
-     * @param rawProperties the unfiltered properties, not null.
+     * @param rawProperties the unfiltered properties, not {@code null}.
      * @param context the context
      * @return the filtered value, inclusing null.
      */
@@ -82,7 +82,7 @@ public final class PropertyFiltering{
 
     /**
      * Basic filter logic.
-     * @param context the filter context, not null.
+     * @param context the filter context, not {@code null}.
      * @return the filtered value.
      */
     private static PropertyValue filterValue(FilterContext context) {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/main/java/org/apache/tamaya/core/internal/PropertySourceComparator.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/internal/PropertySourceComparator.java b/code/core/src/main/java/org/apache/tamaya/core/internal/PropertySourceComparator.java
index 35e147f..1f2e412 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/internal/PropertySourceComparator.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/internal/PropertySourceComparator.java
@@ -81,7 +81,7 @@ public class PropertySourceComparator implements Comparator<PropertySource>, Ser
      *     <li>It tries to find an d evaluate a class level {@link Priority} annotation.</li>
      *     <li>It uses the default priority ({@code 0}.</li>
      * </ol>
-     * @param propertySource the property source, not null.
+     * @param propertySource the property source, not {@code null}.
      * @return the ordinal value to compare the property source.
      */
     public static int getOrdinal(PropertySource propertySource) {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/main/java/org/apache/tamaya/core/propertysource/BasePropertySource.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/propertysource/BasePropertySource.java b/code/core/src/main/java/org/apache/tamaya/core/propertysource/BasePropertySource.java
index ebc681a..316dd59 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/propertysource/BasePropertySource.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/propertysource/BasePropertySource.java
@@ -40,7 +40,7 @@ public abstract class BasePropertySource implements PropertySource {
 
     /**
      * Constructor.
-     * @param name the (unique) property source name, not null.
+     * @param name the (unique) property source name, not {@code null}.
      */
     protected BasePropertySource(String name){
         this.name = Objects.requireNonNull(name);
@@ -58,7 +58,7 @@ public abstract class BasePropertySource implements PropertySource {
 
     /**
      * Constructor.
-     * @param name the (unique) property source name, not null.
+     * @param name the (unique) property source name, not {@code null}.
      * @param defaultOrdinal default ordinal that will be used, if no ordinal is provided with the config.
      */
     protected BasePropertySource(String name, int defaultOrdinal){
@@ -81,7 +81,7 @@ public abstract class BasePropertySource implements PropertySource {
 
     /**
      * Sets the property source's (unique) name.
-     * @param name the name, not null.
+     * @param name the name, not {@code null}.
      */
     public void setName(String name){
         this.name = Objects.requireNonNull(name);
@@ -90,7 +90,7 @@ public abstract class BasePropertySource implements PropertySource {
     /**
      * Allows to set the ordinal of this property source explcitly. This will override any evaluated
      * ordinal, or default ordinal. To reset an explcit ordinal call {@code setOrdinal(null);}.
-     * @param ordinal the explicit ordinal, or null.
+     * @param ordinal the explicit ordinal, or {@code null}.
      */
     public void setOrdinal(Integer ordinal){
         this.ordinal = ordinal;
@@ -99,7 +99,7 @@ public abstract class BasePropertySource implements PropertySource {
     /**
      * Allows to set the ordinal of this property source explcitly. This will override any evaluated
      * ordinal, or default ordinal. To reset an explcit ordinal call {@code setOrdinal(null);}.
-     * @param defaultOrdinal the default ordinal, or null.
+     * @param defaultOrdinal the default ordinal, or {@code null}.
      */
     public void setDefaultOrdinal(Integer defaultOrdinal){
         this.defaultOrdinal = defaultOrdinal;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/main/java/org/apache/tamaya/core/propertysource/CLIPropertySource.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/propertysource/CLIPropertySource.java b/code/core/src/main/java/org/apache/tamaya/core/propertysource/CLIPropertySource.java
index 6f2489d..5f25f14 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/propertysource/CLIPropertySource.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/propertysource/CLIPropertySource.java
@@ -76,7 +76,7 @@ public class CLIPropertySource extends BasePropertySource{
     /**
      * Configure the main arguments, hereby parsing and mapping the main arguments into
      * configuration propertiesi as key-value pairs.
-     * @param args the main arguments, not null.
+     * @param args the main arguments, not {@code null}.
      */
     public static void initMainArgs(String... args){
         CLIPropertySource.args = Objects.requireNonNull(args);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/main/java/org/apache/tamaya/core/propertysource/SimplePropertySource.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/propertysource/SimplePropertySource.java b/code/core/src/main/java/org/apache/tamaya/core/propertysource/SimplePropertySource.java
index 2c8ec0b..6046e0c 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/propertysource/SimplePropertySource.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/propertysource/SimplePropertySource.java
@@ -47,7 +47,7 @@ public class SimplePropertySource extends BasePropertySource {
     /**
      * Creates a new Properties based PropertySource based on the given URL.
      *
-     * @param propertiesLocation the URL encoded location, not null.
+     * @param propertiesLocation the URL encoded location, not {@code null}.
      */
     public SimplePropertySource(File propertiesLocation) {
         super(0);
@@ -62,7 +62,7 @@ public class SimplePropertySource extends BasePropertySource {
     /**
      * Creates a new Properties based PropertySource based on the given URL.
      *
-     * @param propertiesLocation the URL encoded location, not null.
+     * @param propertiesLocation the URL encoded location, not {@code null}.
      */
     public SimplePropertySource(URL propertiesLocation) {
         super(0);
@@ -73,8 +73,8 @@ public class SimplePropertySource extends BasePropertySource {
     /**
      * Creates a new Properties based PropertySource based on the given properties map.
      *
-     * @param name       the name, not null.
-     * @param properties the properties, not null.
+     * @param name       the name, not {@code null}.
+     * @param properties the properties, not {@code null}.
      */
     public SimplePropertySource(String name, Map<String, String> properties) {
         super(0);
@@ -88,7 +88,7 @@ public class SimplePropertySource extends BasePropertySource {
      * Creates a new Properties based PropertySource based on the given URL.
      *
      * @param name               The property source name
-     * @param propertiesLocation the URL encoded location, not null.
+     * @param propertiesLocation the URL encoded location, not {@code null}.
      */
     public SimplePropertySource(String name, URL propertiesLocation) {
         super(0);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/test/java/org/apache/tamaya/core/internal/BannerManagerTest.java
----------------------------------------------------------------------
diff --git a/code/core/src/test/java/org/apache/tamaya/core/internal/BannerManagerTest.java b/code/core/src/test/java/org/apache/tamaya/core/internal/BannerManagerTest.java
index db8021c..a7d6557 100644
--- a/code/core/src/test/java/org/apache/tamaya/core/internal/BannerManagerTest.java
+++ b/code/core/src/test/java/org/apache/tamaya/core/internal/BannerManagerTest.java
@@ -18,6 +18,7 @@
  */
 package org.apache.tamaya.core.internal;
 
+import org.junit.Ignore;
 import org.junit.Test;
 import org.mockito.Mockito;
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/test/java/org/apache/tamaya/core/internal/DefaultConfigurationContextBuilderTest.java
----------------------------------------------------------------------
diff --git a/code/core/src/test/java/org/apache/tamaya/core/internal/DefaultConfigurationContextBuilderTest.java b/code/core/src/test/java/org/apache/tamaya/core/internal/DefaultConfigurationContextBuilderTest.java
index 05dd922..9c9e9a7 100644
--- a/code/core/src/test/java/org/apache/tamaya/core/internal/DefaultConfigurationContextBuilderTest.java
+++ b/code/core/src/test/java/org/apache/tamaya/core/internal/DefaultConfigurationContextBuilderTest.java
@@ -21,6 +21,7 @@ package org.apache.tamaya.core.internal;
 import org.apache.tamaya.ConfigurationProvider;
 import org.apache.tamaya.TypeLiteral;
 import org.apache.tamaya.spi.*;
+import org.junit.Ignore;
 import org.junit.Test;
 
 import javax.annotation.Priority;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/0cb070ec/code/core/src/test/java/org/apache/tamaya/core/internal/DefaultConfigurationContextTest.java
----------------------------------------------------------------------
diff --git a/code/core/src/test/java/org/apache/tamaya/core/internal/DefaultConfigurationContextTest.java b/code/core/src/test/java/org/apache/tamaya/core/internal/DefaultConfigurationContextTest.java
index 9d98a5e..fef8ed3 100644
--- a/code/core/src/test/java/org/apache/tamaya/core/internal/DefaultConfigurationContextTest.java
+++ b/code/core/src/test/java/org/apache/tamaya/core/internal/DefaultConfigurationContextTest.java
@@ -22,6 +22,7 @@ import org.apache.tamaya.ConfigurationProvider;
 import org.apache.tamaya.TypeLiteral;
 import org.apache.tamaya.core.testdata.TestPropertyDefaultSource;
 import org.apache.tamaya.spi.*;
+import org.junit.Ignore;
 import org.junit.Test;
 
 import static org.junit.Assert.*;
@@ -43,7 +44,6 @@ public class DefaultConfigurationContextTest {
     @Test
     public void testToString() throws Exception {
         String toString = ConfigurationProvider.getConfiguration().getContext().toString();
-        System.out.println(toString);
     }
 
     @Test