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

pkarwasz pushed a commit to branch fix/apply-property-environment
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit 4050fba3c4adf3c95a9f9e3a947fd464cd12bb2c
Author: Piotr P. Karwasz <[email protected]>
AuthorDate: Fri Mar 15 10:57:14 2024 +0100

    Replace `o.a.l.l.lang` annotations with JSpecify
---
 .../logging/log4j/core/config/ConfigurationAwarePostProcessor.java    | 2 +-
 .../logging/log4j/core/config/LoggerContextAwarePostProcessor.java    | 2 +-
 .../config/plugins/util/LegacyPluginAttributeFactoryResolver.java     | 2 +-
 .../plugins/util/LegacyPluginBuilderAttributeFactoryResolver.java     | 2 +-
 .../apache/logging/log4j/core/config/plugins/util/package-info.java   | 2 +-
 .../java/org/apache/logging/log4j/core/impl/Log4jContextFactory.java  | 2 +-
 .../apache/logging/log4j/plugins/di/ConfigurableInstanceFactory.java  | 3 +--
 .../org/apache/logging/log4j/plugins/di/DefaultInstanceFactory.java   | 4 ++--
 .../src/main/java/org/apache/logging/log4j/plugins/di/Key.java        | 2 +-
 .../main/java/org/apache/logging/log4j/plugins/di/package-info.java   | 2 +-
 .../log4j/plugins/di/resolver/AbstractAttributeFactoryResolver.java   | 2 +-
 .../logging/log4j/plugins/di/resolver/OptionalFactoryResolver.java    | 2 +-
 .../log4j/plugins/di/resolver/PluginAttributeFactoryResolver.java     | 2 +-
 .../plugins/di/resolver/PluginBuilderAttributeFactoryResolver.java    | 2 +-
 .../log4j/plugins/di/resolver/PluginElementFactoryResolver.java       | 2 +-
 .../org/apache/logging/log4j/plugins/di/resolver/package-info.java    | 2 +-
 .../org/apache/logging/log4j/plugins/di/spi/DependencyChains.java     | 2 +-
 .../java/org/apache/logging/log4j/plugins/di/spi/ReflectionAgent.java | 4 ++--
 .../java/org/apache/logging/log4j/plugins/di/spi/package-info.java    | 2 +-
 .../org/apache/logging/log4j/plugins/internal/util/BindingMap.java    | 2 +-
 .../apache/logging/log4j/plugins/internal/util/DefaultBindingMap.java | 2 +-
 .../java/org/apache/logging/log4j/plugins/util/AnnotationUtil.java    | 4 ++--
 22 files changed, 25 insertions(+), 26 deletions(-)

diff --git 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationAwarePostProcessor.java
 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationAwarePostProcessor.java
index e5a69501c6..6d551637e4 100644
--- 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationAwarePostProcessor.java
+++ 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationAwarePostProcessor.java
@@ -17,9 +17,9 @@
 package org.apache.logging.log4j.core.config;
 
 import java.util.function.Supplier;
-import org.apache.logging.log4j.lang.NullMarked;
 import org.apache.logging.log4j.plugins.di.spi.InstancePostProcessor;
 import org.apache.logging.log4j.plugins.di.spi.ResolvableKey;
+import org.jspecify.annotations.NullMarked;
 
 @NullMarked
 public class ConfigurationAwarePostProcessor implements InstancePostProcessor {
diff --git 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/LoggerContextAwarePostProcessor.java
 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/LoggerContextAwarePostProcessor.java
index b2dfbcd0e4..c6a3fe96e1 100644
--- 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/LoggerContextAwarePostProcessor.java
+++ 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/LoggerContextAwarePostProcessor.java
@@ -18,9 +18,9 @@ package org.apache.logging.log4j.core.config;
 
 import java.lang.ref.WeakReference;
 import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.lang.NullMarked;
 import org.apache.logging.log4j.plugins.di.spi.InstancePostProcessor;
 import org.apache.logging.log4j.plugins.di.spi.ResolvableKey;
+import org.jspecify.annotations.NullMarked;
 
 @NullMarked
 public class LoggerContextAwarePostProcessor implements InstancePostProcessor {
diff --git 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/LegacyPluginAttributeFactoryResolver.java
 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/LegacyPluginAttributeFactoryResolver.java
index cd6df3af81..53129fdc74 100644
--- 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/LegacyPluginAttributeFactoryResolver.java
+++ 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/LegacyPluginAttributeFactoryResolver.java
@@ -20,12 +20,12 @@ import java.lang.reflect.Type;
 import java.util.Map;
 import java.util.function.Function;
 import org.apache.logging.log4j.core.config.plugins.PluginAttribute;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.convert.TypeConverter;
 import 
org.apache.logging.log4j.plugins.di.resolver.AbstractAttributeFactoryResolver;
 import org.apache.logging.log4j.plugins.di.spi.StringValueResolver;
 import org.apache.logging.log4j.util.Cast;
 import org.apache.logging.log4j.util.Strings;
+import org.jspecify.annotations.Nullable;
 
 @Deprecated(since = "3.0", forRemoval = true)
 @SuppressWarnings("removal")
diff --git 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/LegacyPluginBuilderAttributeFactoryResolver.java
 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/LegacyPluginBuilderAttributeFactoryResolver.java
index 17e1fcf12c..4a767c5354 100644
--- 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/LegacyPluginBuilderAttributeFactoryResolver.java
+++ 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/LegacyPluginBuilderAttributeFactoryResolver.java
@@ -18,10 +18,10 @@ package org.apache.logging.log4j.core.config.plugins.util;
 
 import java.lang.reflect.Type;
 import org.apache.logging.log4j.core.config.plugins.PluginBuilderAttribute;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.convert.TypeConverter;
 import 
org.apache.logging.log4j.plugins.di.resolver.AbstractAttributeFactoryResolver;
 import org.apache.logging.log4j.plugins.di.spi.StringValueResolver;
+import org.jspecify.annotations.Nullable;
 
 @Deprecated(since = "3.0", forRemoval = true)
 @SuppressWarnings("removal")
diff --git 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/package-info.java
 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/package-info.java
index 24391185cf..948f8f6511 100644
--- 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/package-info.java
+++ 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/package-info.java
@@ -23,6 +23,6 @@
 @NullMarked
 package org.apache.logging.log4j.core.config.plugins.util;
 
-import org.apache.logging.log4j.lang.NullMarked;
+import org.jspecify.annotations.NullMarked;
 import org.osgi.annotation.bundle.Export;
 import org.osgi.annotation.versioning.Version;
diff --git 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/Log4jContextFactory.java
 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/Log4jContextFactory.java
index f20ad8ad0c..1fa91bc65b 100644
--- 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/Log4jContextFactory.java
+++ 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/Log4jContextFactory.java
@@ -33,7 +33,6 @@ import org.apache.logging.log4j.core.selector.ContextSelector;
 import org.apache.logging.log4j.core.util.Cancellable;
 import org.apache.logging.log4j.core.util.ShutdownCallbackRegistry;
 import org.apache.logging.log4j.kit.env.PropertyEnvironment;
-import org.apache.logging.log4j.lang.NullMarked;
 import org.apache.logging.log4j.plugins.Inject;
 import org.apache.logging.log4j.plugins.Singleton;
 import org.apache.logging.log4j.plugins.di.ConfigurableInstanceFactory;
@@ -42,6 +41,7 @@ import org.apache.logging.log4j.plugins.di.Key;
 import org.apache.logging.log4j.spi.LoggerContextFactory;
 import org.apache.logging.log4j.status.StatusLogger;
 import org.apache.logging.log4j.util.StackLocatorUtil;
+import org.jspecify.annotations.NullMarked;
 
 /**
  * Factory to locate a ContextSelector and then load a LoggerContext.
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/ConfigurableInstanceFactory.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/ConfigurableInstanceFactory.java
index 8ce1951f53..7f82f2f57d 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/ConfigurableInstanceFactory.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/ConfigurableInstanceFactory.java
@@ -20,7 +20,6 @@ import java.lang.annotation.Annotation;
 import java.lang.reflect.AnnotatedElement;
 import java.util.function.Supplier;
 import org.apache.logging.log4j.kit.env.PropertyEnvironment;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.FactoryType;
 import org.apache.logging.log4j.plugins.Ordered;
 import org.apache.logging.log4j.plugins.di.spi.FactoryResolver;
@@ -34,7 +33,7 @@ import org.apache.logging.log4j.plugins.validation.Constraint;
 import 
org.apache.logging.log4j.plugins.validation.ConstraintValidationException;
 import org.apache.logging.log4j.plugins.validation.ConstraintValidator;
 import org.apache.logging.log4j.util.Cast;
-import org.apache.logging.log4j.util.PropertyEnvironment;
+import org.jspecify.annotations.Nullable;
 
 /**
  * Configuration manager for the state of an instance factory. Configurable 
instance factories can form a
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/DefaultInstanceFactory.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/DefaultInstanceFactory.java
index a206e7b8f6..157e40ae22 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/DefaultInstanceFactory.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/DefaultInstanceFactory.java
@@ -35,8 +35,6 @@ import java.util.stream.Collectors;
 import java.util.stream.Stream;
 import org.apache.logging.log4j.Logger;
 import org.apache.logging.log4j.kit.env.PropertyEnvironment;
-import org.apache.logging.log4j.lang.NullMarked;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.FactoryType;
 import org.apache.logging.log4j.plugins.ScopeType;
 import org.apache.logging.log4j.plugins.condition.Condition;
@@ -57,6 +55,8 @@ import 
org.apache.logging.log4j.plugins.util.OrderedComparator;
 import org.apache.logging.log4j.status.StatusLogger;
 import org.apache.logging.log4j.util.Cast;
 import org.apache.logging.log4j.util.LoaderUtil;
+import org.jspecify.annotations.NullMarked;
+import org.jspecify.annotations.Nullable;
 
 public class DefaultInstanceFactory implements ConfigurableInstanceFactory {
 
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/Key.java 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/Key.java
index 33ceb76780..3da9a3eb49 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/Key.java
+++ b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/Key.java
@@ -29,7 +29,6 @@ import java.util.Locale;
 import java.util.Objects;
 import java.util.OptionalInt;
 import java.util.function.Supplier;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.Ordered;
 import org.apache.logging.log4j.plugins.QualifierType;
 import org.apache.logging.log4j.plugins.di.spi.InjectionPoint;
@@ -39,6 +38,7 @@ import org.apache.logging.log4j.plugins.util.AnnotationUtil;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 import org.apache.logging.log4j.util.StringBuilderFormattable;
 import org.apache.logging.log4j.util.Strings;
+import org.jspecify.annotations.Nullable;
 
 /**
  * Keys represent a reified type with an optional {@link QualifierType} type, 
name, and namespace.
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/package-info.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/package-info.java
index c7df9d52a8..eb044637b7 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/package-info.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/package-info.java
@@ -23,6 +23,6 @@
 @NullMarked
 package org.apache.logging.log4j.plugins.di;
 
-import org.apache.logging.log4j.lang.NullMarked;
+import org.jspecify.annotations.NullMarked;
 import org.osgi.annotation.bundle.Export;
 import org.osgi.annotation.versioning.Version;
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/AbstractAttributeFactoryResolver.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/AbstractAttributeFactoryResolver.java
index 9fecea0bf2..f9296d8683 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/AbstractAttributeFactoryResolver.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/AbstractAttributeFactoryResolver.java
@@ -21,7 +21,6 @@ import java.lang.reflect.AnnotatedElement;
 import java.lang.reflect.Type;
 import java.util.function.Supplier;
 import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.Node;
 import org.apache.logging.log4j.plugins.convert.TypeConverter;
 import org.apache.logging.log4j.plugins.di.InstanceFactory;
@@ -31,6 +30,7 @@ import org.apache.logging.log4j.plugins.di.spi.InjectionPoint;
 import org.apache.logging.log4j.plugins.di.spi.ResolvableKey;
 import org.apache.logging.log4j.plugins.di.spi.StringValueResolver;
 import org.apache.logging.log4j.status.StatusLogger;
+import org.jspecify.annotations.Nullable;
 
 public abstract class AbstractAttributeFactoryResolver<T, A extends 
Annotation> implements FactoryResolver<T> {
     protected static final Logger LOGGER = StatusLogger.getLogger();
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/OptionalFactoryResolver.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/OptionalFactoryResolver.java
index 51b2897b7d..144c063bc0 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/OptionalFactoryResolver.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/OptionalFactoryResolver.java
@@ -21,7 +21,6 @@ import java.lang.reflect.Type;
 import java.util.Collection;
 import java.util.Optional;
 import java.util.function.Supplier;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.PluginException;
 import org.apache.logging.log4j.plugins.di.InstanceFactory;
 import org.apache.logging.log4j.plugins.di.Key;
@@ -30,6 +29,7 @@ import 
org.apache.logging.log4j.plugins.di.spi.DependencyChain;
 import org.apache.logging.log4j.plugins.di.spi.FactoryResolver;
 import org.apache.logging.log4j.plugins.di.spi.ResolvableKey;
 import org.apache.logging.log4j.status.StatusLogger;
+import org.jspecify.annotations.Nullable;
 
 public class OptionalFactoryResolver<T> implements 
FactoryResolver<Optional<T>> {
     @Override
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginAttributeFactoryResolver.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginAttributeFactoryResolver.java
index 875530a2cf..db68cba3a5 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginAttributeFactoryResolver.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginAttributeFactoryResolver.java
@@ -19,12 +19,12 @@ package org.apache.logging.log4j.plugins.di.resolver;
 import java.lang.reflect.Type;
 import java.util.Map;
 import java.util.function.Function;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.PluginAttribute;
 import org.apache.logging.log4j.plugins.convert.TypeConverter;
 import org.apache.logging.log4j.plugins.di.spi.StringValueResolver;
 import org.apache.logging.log4j.util.Cast;
 import org.apache.logging.log4j.util.Strings;
+import org.jspecify.annotations.Nullable;
 
 /**
  * Factory resolver for {@link PluginAttribute}-annotated keys. This injects 
configuration parameters to a
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginBuilderAttributeFactoryResolver.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginBuilderAttributeFactoryResolver.java
index d32e704ba7..52b44af33c 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginBuilderAttributeFactoryResolver.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginBuilderAttributeFactoryResolver.java
@@ -17,10 +17,10 @@
 package org.apache.logging.log4j.plugins.di.resolver;
 
 import java.lang.reflect.Type;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.PluginBuilderAttribute;
 import org.apache.logging.log4j.plugins.convert.TypeConverter;
 import org.apache.logging.log4j.plugins.di.spi.StringValueResolver;
+import org.jspecify.annotations.Nullable;
 
 /**
  * Factory resolver for {@link PluginBuilderAttribute}-annotated keys. This 
injects a plugin configuration option.
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginElementFactoryResolver.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginElementFactoryResolver.java
index 10d19db542..f3153cd1b3 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginElementFactoryResolver.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/PluginElementFactoryResolver.java
@@ -25,7 +25,6 @@ import java.util.List;
 import java.util.Optional;
 import java.util.function.Supplier;
 import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.Node;
 import org.apache.logging.log4j.plugins.PluginElement;
 import org.apache.logging.log4j.plugins.di.InstanceFactory;
@@ -35,6 +34,7 @@ import org.apache.logging.log4j.plugins.di.spi.ResolvableKey;
 import org.apache.logging.log4j.plugins.model.PluginType;
 import org.apache.logging.log4j.status.StatusLogger;
 import org.apache.logging.log4j.util.Cast;
+import org.jspecify.annotations.Nullable;
 
 /**
  * Factory resolver for {@link PluginElement}-annotated keys. This injects 
configurable child plugin instances.
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/package-info.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/package-info.java
index 3ca074f02a..59415720e4 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/package-info.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/resolver/package-info.java
@@ -29,7 +29,7 @@
 @NullMarked
 package org.apache.logging.log4j.plugins.di.resolver;
 
-import org.apache.logging.log4j.lang.NullMarked;
 import org.apache.logging.log4j.plugins.di.spi.FactoryResolver;
+import org.jspecify.annotations.NullMarked;
 import org.osgi.annotation.bundle.Export;
 import org.osgi.annotation.versioning.Version;
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/DependencyChains.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/DependencyChains.java
index 4b83289bc7..426b8513fb 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/DependencyChains.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/DependencyChains.java
@@ -21,8 +21,8 @@ import java.util.Iterator;
 import java.util.NoSuchElementException;
 import java.util.Objects;
 import java.util.StringJoiner;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.di.Key;
+import org.jspecify.annotations.Nullable;
 
 class DependencyChains {
     static final DependencyChain EMPTY = new EmptyChain();
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/ReflectionAgent.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/ReflectionAgent.java
index 33be6f2140..a5ce8cb488 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/ReflectionAgent.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/ReflectionAgent.java
@@ -25,8 +25,8 @@ import java.lang.reflect.Member;
 import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
 import java.util.Objects;
-import org.apache.logging.log4j.lang.NonNull;
-import org.apache.logging.log4j.lang.NullUnmarked;
+import org.jspecify.annotations.NonNull;
+import org.jspecify.annotations.NullUnmarked;
 
 /**
  * Provides reflection operations using the calling context of another class. 
This is useful for centralizing
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/package-info.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/package-info.java
index e9b9e83d3d..0c2b600004 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/package-info.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/di/spi/package-info.java
@@ -23,6 +23,6 @@
 @NullMarked
 package org.apache.logging.log4j.plugins.di.spi;
 
-import org.apache.logging.log4j.lang.NullMarked;
+import org.jspecify.annotations.NullMarked;
 import org.osgi.annotation.bundle.Export;
 import org.osgi.annotation.versioning.Version;
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/internal/util/BindingMap.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/internal/util/BindingMap.java
index ecac59aa15..3716410fe2 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/internal/util/BindingMap.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/internal/util/BindingMap.java
@@ -17,8 +17,8 @@
 package org.apache.logging.log4j.plugins.internal.util;
 
 import java.util.function.Supplier;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.di.Key;
+import org.jspecify.annotations.Nullable;
 
 public sealed interface BindingMap permits DefaultBindingMap {
     <T> @Nullable Supplier<T> get(final Key<T> key, final Iterable<String> 
aliases);
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/internal/util/DefaultBindingMap.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/internal/util/DefaultBindingMap.java
index aa75a4bd02..252094da39 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/internal/util/DefaultBindingMap.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/internal/util/DefaultBindingMap.java
@@ -19,10 +19,10 @@ package org.apache.logging.log4j.plugins.internal.util;
 import java.util.concurrent.locks.ReadWriteLock;
 import java.util.concurrent.locks.ReentrantReadWriteLock;
 import java.util.function.Supplier;
-import org.apache.logging.log4j.lang.Nullable;
 import org.apache.logging.log4j.plugins.di.Key;
 import org.apache.logging.log4j.util.Cast;
 import org.apache.logging.log4j.util.InternalApi;
+import org.jspecify.annotations.Nullable;
 
 @InternalApi
 public final class DefaultBindingMap implements BindingMap {
diff --git 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/AnnotationUtil.java
 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/AnnotationUtil.java
index 0199eed57d..a084be78e5 100644
--- 
a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/AnnotationUtil.java
+++ 
b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/AnnotationUtil.java
@@ -76,7 +76,7 @@ public final class AnnotationUtil {
         for (final Annotation annotation : element.getAnnotations()) {
             final Class<? extends Annotation> annotationType = 
annotation.annotationType();
             final String packageName = annotationType.getPackageName();
-            if (packageName.startsWith("java.lang.") || 
packageName.startsWith("org.apache.logging.log4j.lang.")) {
+            if (packageName.startsWith("java.lang.") || 
packageName.startsWith("org.jspecify.annotations.")) {
                 continue;
             }
             if (visitedAnnotations.add(annotationType)) {
@@ -126,7 +126,7 @@ public final class AnnotationUtil {
         for (final Annotation annotation : element.getAnnotations()) {
             final Class<? extends Annotation> annotationType = 
annotation.annotationType();
             final String packageName = annotationType.getPackageName();
-            if (packageName.startsWith("java.lang.") || 
packageName.startsWith("org.apache.logging.log4j.lang.")) {
+            if (packageName.startsWith("java.lang.") || 
packageName.startsWith("org.jspecify.annotations.")) {
                 continue;
             }
             if (annotationType == logicalAnnotation) {

Reply via email to