diff --git a/pom.xml b/pom.xml index 221756e..ff01d9e 100644 --- a/pom.xml +++ b/pom.xml @@ -55,9 +55,9 @@ test - com.google.code.findbugs - jsr305 - 3.0.2 + org.jetbrains + annotations + 24.0.1 provided @@ -97,6 +97,12 @@ guice 6.0.0 test + + + com.google.code.findbugs + jsr305 + + @@ -124,6 +130,28 @@ + + maven-enforcer-plugin + + + enforce-scope-of-annotation-deps + + enforce + + + + + false + + org.jetbrains:annotations:*:*:compile + + The annotation dependencies should be used with scope provided to prevent transitive inheritance and to prevent runtime inclusion + + + + + + diff --git a/src/main/java/org/codehaus/plexus/components/io/attributes/AttributeUtils.java b/src/main/java/org/codehaus/plexus/components/io/attributes/AttributeUtils.java index be00c0a..3c34f06 100644 --- a/src/main/java/org/codehaus/plexus/components/io/attributes/AttributeUtils.java +++ b/src/main/java/org/codehaus/plexus/components/io/attributes/AttributeUtils.java @@ -15,9 +15,6 @@ */ package org.codehaus.plexus.components.io.attributes; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - import java.io.File; import java.io.IOException; import java.nio.file.Files; @@ -30,6 +27,9 @@ import java.util.HashSet; import java.util.Set; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + /** * @author Kristian Rosenvold */ @@ -38,7 +38,7 @@ public class AttributeUtils { /* Reads last-modified with proper failure handling if something goes wrong. */ - public static long getLastModified(@Nonnull File file) { + public static long getLastModified(@NotNull File file) { try { BasicFileAttributes basicFileAttributes = Files.readAttributes(file.toPath(), BasicFileAttributes.class); return basicFileAttributes.lastModifiedTime().toMillis(); @@ -47,14 +47,14 @@ public static long getLastModified(@Nonnull File file) { } } - public static void chmod(@Nonnull File file, int mode) throws IOException { + public static void chmod(@NotNull File file, int mode) throws IOException { final Path path = file.toPath(); if (!Files.isSymbolicLink(path)) { Files.setPosixFilePermissions(path, getPermissions(mode)); } } - @Nonnull + @NotNull public static Set getPermissions(int mode) { Set perms = new HashSet<>(); // add owners permission @@ -90,13 +90,13 @@ public static Set getPermissions(int mode) { return perms; } - @Nonnull - public static PosixFileAttributes getPosixFileAttributes(@Nonnull File file) throws IOException { + @NotNull + public static PosixFileAttributes getPosixFileAttributes(@NotNull File file) throws IOException { return Files.readAttributes(file.toPath(), PosixFileAttributes.class, LinkOption.NOFOLLOW_LINKS); } - @Nonnull - public static BasicFileAttributes getFileAttributes(@Nonnull File file) throws IOException { + @NotNull + public static BasicFileAttributes getFileAttributes(@NotNull File file) throws IOException { return getFileAttributes(file.toPath()); } @@ -116,7 +116,7 @@ public static boolean isUnix(Path path) { } @Nullable - public static FileOwnerAttributeView getFileOwnershipInfo(@Nonnull File file) throws IOException { + public static FileOwnerAttributeView getFileOwnershipInfo(@NotNull File file) throws IOException { try { return Files.getFileAttributeView(file.toPath(), FileOwnerAttributeView.class, LinkOption.NOFOLLOW_LINKS); } catch (UnsupportedOperationException e) { diff --git a/src/main/java/org/codehaus/plexus/components/io/attributes/FileAttributes.java b/src/main/java/org/codehaus/plexus/components/io/attributes/FileAttributes.java index 94c0d3c..562d77e 100644 --- a/src/main/java/org/codehaus/plexus/components/io/attributes/FileAttributes.java +++ b/src/main/java/org/codehaus/plexus/components/io/attributes/FileAttributes.java @@ -16,9 +16,6 @@ * limitations under the License. */ -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - import java.io.File; import java.io.IOException; import java.nio.file.Files; @@ -32,6 +29,9 @@ import java.util.Map; import java.util.Set; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + /* * File attributes * Immutable @@ -73,16 +73,16 @@ public class FileAttributes implements PlexusIoResourceAttributes { */ @Deprecated public FileAttributes( - @Nonnull File file, @Nonnull Map userCache, @Nonnull Map groupCache) + @NotNull File file, @NotNull Map userCache, @NotNull Map groupCache) throws IOException { this(file); } - public FileAttributes(@Nonnull File file) throws IOException { + public FileAttributes(@NotNull File file) throws IOException { this(file, false); } - public FileAttributes(@Nonnull File file, boolean followLinks) throws IOException { + public FileAttributes(@NotNull File file, boolean followLinks) throws IOException { LinkOption[] options = followLinks ? FOLLOW_LINK_OPTIONS : NOFOLLOW_LINK_OPTIONS; Path path = file.toPath(); Set views = path.getFileSystem().supportedFileAttributeViews(); @@ -147,7 +147,7 @@ public FileAttributes( this.lastModifiedTime = lastModifiedTime; } - public static @Nonnull PlexusIoResourceAttributes uncached(@Nonnull File file) throws IOException { + public static @NotNull PlexusIoResourceAttributes uncached(@NotNull File file) throws IOException { return new FileAttributes(file); } diff --git a/src/main/java/org/codehaus/plexus/components/io/attributes/PlexusIoResourceAttributeUtils.java b/src/main/java/org/codehaus/plexus/components/io/attributes/PlexusIoResourceAttributeUtils.java index 1d70738..d87e740 100644 --- a/src/main/java/org/codehaus/plexus/components/io/attributes/PlexusIoResourceAttributeUtils.java +++ b/src/main/java/org/codehaus/plexus/components/io/attributes/PlexusIoResourceAttributeUtils.java @@ -16,8 +16,6 @@ * limitations under the License. */ -import javax.annotation.Nonnull; - import java.io.File; import java.io.IOException; import java.util.Collections; @@ -26,6 +24,7 @@ import java.util.Map; import org.codehaus.plexus.util.FileUtils; +import org.jetbrains.annotations.NotNull; @SuppressWarnings({"NullableProblems"}) public final class PlexusIoResourceAttributeUtils { @@ -136,13 +135,13 @@ public static Map getFileAttributesByPath(Fi return getFileAttributesByPath(dir, true); } - public static @Nonnull Map getFileAttributesByPath( - @Nonnull File dir, boolean recursive) throws IOException { + public static @NotNull Map getFileAttributesByPath( + @NotNull File dir, boolean recursive) throws IOException { return getFileAttributesByPath(dir, recursive, false); } - public static @Nonnull Map getFileAttributesByPath( - @Nonnull File dir, boolean recursive, boolean followLinks) throws IOException { + public static @NotNull Map getFileAttributesByPath( + @NotNull File dir, boolean recursive, boolean followLinks) throws IOException { final List fileAndDirectoryNames; if (recursive && dir.isDirectory()) { fileAndDirectoryNames = FileUtils.getFileAndDirectoryNames(dir, null, null, true, true, true, true); diff --git a/src/main/java/org/codehaus/plexus/components/io/attributes/PlexusIoResourceAttributes.java b/src/main/java/org/codehaus/plexus/components/io/attributes/PlexusIoResourceAttributes.java index 2aa0ef6..858a6c2 100644 --- a/src/main/java/org/codehaus/plexus/components/io/attributes/PlexusIoResourceAttributes.java +++ b/src/main/java/org/codehaus/plexus/components/io/attributes/PlexusIoResourceAttributes.java @@ -16,7 +16,7 @@ * limitations under the License. */ -import javax.annotation.Nullable; +import org.jetbrains.annotations.Nullable; public interface PlexusIoResourceAttributes { int UNKNOWN_OCTAL_MODE = -1; diff --git a/src/main/java/org/codehaus/plexus/components/io/attributes/SimpleResourceAttributes.java b/src/main/java/org/codehaus/plexus/components/io/attributes/SimpleResourceAttributes.java index 3fdf732..9d8cba3 100644 --- a/src/main/java/org/codehaus/plexus/components/io/attributes/SimpleResourceAttributes.java +++ b/src/main/java/org/codehaus/plexus/components/io/attributes/SimpleResourceAttributes.java @@ -16,7 +16,7 @@ * limitations under the License. */ -import javax.annotation.Nullable; +import org.jetbrains.annotations.Nullable; /* * A very simple pojo based PlexusIoResourceAttributes without any kind of backing diff --git a/src/main/java/org/codehaus/plexus/components/io/attributes/SymlinkUtils.java b/src/main/java/org/codehaus/plexus/components/io/attributes/SymlinkUtils.java index 6c6ea68..243f226 100644 --- a/src/main/java/org/codehaus/plexus/components/io/attributes/SymlinkUtils.java +++ b/src/main/java/org/codehaus/plexus/components/io/attributes/SymlinkUtils.java @@ -15,14 +15,14 @@ */ package org.codehaus.plexus.components.io.attributes; -import javax.annotation.Nonnull; - import java.io.File; import java.io.IOException; import java.nio.file.Files; import java.nio.file.LinkOption; import java.nio.file.Path; +import org.jetbrains.annotations.NotNull; + /** * @author Kristian Rosenvold */ @@ -34,11 +34,11 @@ public class SymlinkUtils { * @return A file that is the target of the symlink * @throws java.io.IOException */ - public static @Nonnull File readSymbolicLink(@Nonnull File symlink) throws IOException { + public static @NotNull File readSymbolicLink(@NotNull File symlink) throws IOException { return Files.readSymbolicLink(symlink.toPath()).toFile(); } - public static @Nonnull File createSymbolicLink(@Nonnull File symlink, File target) throws IOException { + public static @NotNull File createSymbolicLink(@NotNull File symlink, File target) throws IOException { Path link = symlink.toPath(); if (!Files.exists(link, LinkOption.NOFOLLOW_LINKS)) { link = Files.createSymbolicLink(link, target.toPath()); diff --git a/src/main/java/org/codehaus/plexus/components/io/attributes/proxy/PlexusIoProxyResourceAttributes.java b/src/main/java/org/codehaus/plexus/components/io/attributes/proxy/PlexusIoProxyResourceAttributes.java index 15194fe..c03ebcb 100644 --- a/src/main/java/org/codehaus/plexus/components/io/attributes/proxy/PlexusIoProxyResourceAttributes.java +++ b/src/main/java/org/codehaus/plexus/components/io/attributes/proxy/PlexusIoProxyResourceAttributes.java @@ -1,8 +1,7 @@ package org.codehaus.plexus.components.io.attributes.proxy; -import javax.annotation.Nullable; - import org.codehaus.plexus.components.io.attributes.PlexusIoResourceAttributes; +import org.jetbrains.annotations.Nullable; public class PlexusIoProxyResourceAttributes implements PlexusIoResourceAttributes { diff --git a/src/main/java/org/codehaus/plexus/components/io/filemappers/AbstractFileMapper.java b/src/main/java/org/codehaus/plexus/components/io/filemappers/AbstractFileMapper.java index 141244f..8d18646 100644 --- a/src/main/java/org/codehaus/plexus/components/io/filemappers/AbstractFileMapper.java +++ b/src/main/java/org/codehaus/plexus/components/io/filemappers/AbstractFileMapper.java @@ -16,7 +16,7 @@ * limitations under the License. */ -import javax.annotation.Nonnull; +import org.jetbrains.annotations.NotNull; /** * Abstract base class for deriving file mappers. It is recommended @@ -28,7 +28,7 @@ public abstract class AbstractFileMapper implements FileMapper { /** * Checks the input and returns it without modifications. */ - public @Nonnull String getMappedFileName(@Nonnull String pName) { + public @NotNull String getMappedFileName(@NotNull String pName) { if (pName == null || pName.isEmpty()) { throw new IllegalArgumentException("The source name must not be null."); } diff --git a/src/main/java/org/codehaus/plexus/components/io/filemappers/FileExtensionMapper.java b/src/main/java/org/codehaus/plexus/components/io/filemappers/FileExtensionMapper.java index 5302338..46bd1e6 100644 --- a/src/main/java/org/codehaus/plexus/components/io/filemappers/FileExtensionMapper.java +++ b/src/main/java/org/codehaus/plexus/components/io/filemappers/FileExtensionMapper.java @@ -16,9 +16,10 @@ * limitations under the License. */ -import javax.annotation.Nonnull; import javax.inject.Named; +import org.jetbrains.annotations.NotNull; + /** * An implementation of {@link FileMapper}, which changes the files extension. */ @@ -60,8 +61,8 @@ public String getTargetExtension() { return targetExtension; } - @Nonnull - public String getMappedFileName(@Nonnull String pName) { + @NotNull + public String getMappedFileName(@NotNull String pName) { final String ext = getTargetExtension(); if (ext == null) { throw new IllegalStateException("The target extension has not been set."); diff --git a/src/main/java/org/codehaus/plexus/components/io/filemappers/FlattenFileMapper.java b/src/main/java/org/codehaus/plexus/components/io/filemappers/FlattenFileMapper.java index 517b3a1..4aa746e 100644 --- a/src/main/java/org/codehaus/plexus/components/io/filemappers/FlattenFileMapper.java +++ b/src/main/java/org/codehaus/plexus/components/io/filemappers/FlattenFileMapper.java @@ -16,9 +16,10 @@ * limitations under the License. */ -import javax.annotation.Nonnull; import javax.inject.Named; +import org.jetbrains.annotations.NotNull; + /** * Implementation of a flattening file mapper: Removes all directory parts. */ @@ -29,8 +30,8 @@ public class FlattenFileMapper extends AbstractFileMapper { */ public static final String ROLE_HINT = "flatten"; - @Nonnull - public String getMappedFileName(@Nonnull String pName) { + @NotNull + public String getMappedFileName(@NotNull String pName) { String name = super.getMappedFileName(pName); // Check for null, etc. int offset = pName.lastIndexOf('/'); if (offset >= 0) { diff --git a/src/main/java/org/codehaus/plexus/components/io/filemappers/IdentityMapper.java b/src/main/java/org/codehaus/plexus/components/io/filemappers/IdentityMapper.java index 789f7f3..f692d1b 100644 --- a/src/main/java/org/codehaus/plexus/components/io/filemappers/IdentityMapper.java +++ b/src/main/java/org/codehaus/plexus/components/io/filemappers/IdentityMapper.java @@ -16,9 +16,10 @@ * limitations under the License. */ -import javax.annotation.Nonnull; import javax.inject.Named; +import org.jetbrains.annotations.NotNull; + /** * Default implementation of {@link FileMapper}, which performs the identity mapping: All names are left unchanged. */ @@ -29,8 +30,8 @@ public class IdentityMapper extends AbstractFileMapper { */ public static final String ROLE_HINT = "identity"; - @Nonnull - public String getMappedFileName(@Nonnull String pName) { + @NotNull + public String getMappedFileName(@NotNull String pName) { if (pName == null || pName.isEmpty()) { throw new IllegalArgumentException("The source name must not be null."); } diff --git a/src/main/java/org/codehaus/plexus/components/io/filemappers/MergeFileMapper.java b/src/main/java/org/codehaus/plexus/components/io/filemappers/MergeFileMapper.java index 796a428..2fbf341 100644 --- a/src/main/java/org/codehaus/plexus/components/io/filemappers/MergeFileMapper.java +++ b/src/main/java/org/codehaus/plexus/components/io/filemappers/MergeFileMapper.java @@ -16,9 +16,10 @@ * limitations under the License. */ -import javax.annotation.Nonnull; import javax.inject.Named; +import org.jetbrains.annotations.NotNull; + /** * A file mapper, which maps to a constant target name. */ @@ -57,8 +58,8 @@ public String getTargetName() { return targetName; } - @Nonnull - public String getMappedFileName(@Nonnull String pName) { + @NotNull + public String getMappedFileName(@NotNull String pName) { final String name = getTargetName(); if (name == null) { throw new IllegalStateException("The target file name has not been set."); diff --git a/src/main/java/org/codehaus/plexus/components/io/filemappers/PrefixFileMapper.java b/src/main/java/org/codehaus/plexus/components/io/filemappers/PrefixFileMapper.java index d3be2d3..41b0fb4 100644 --- a/src/main/java/org/codehaus/plexus/components/io/filemappers/PrefixFileMapper.java +++ b/src/main/java/org/codehaus/plexus/components/io/filemappers/PrefixFileMapper.java @@ -16,9 +16,10 @@ * limitations under the License. */ -import javax.annotation.Nonnull; import javax.inject.Named; +import org.jetbrains.annotations.NotNull; + /** * A file mapper, which maps by adding a prefix. */ @@ -31,8 +32,8 @@ public class PrefixFileMapper extends AbstractFileMapper { private String prefix; - @Nonnull - public String getMappedFileName(@Nonnull String name) { + @NotNull + public String getMappedFileName(@NotNull String name) { final String s = super.getMappedFileName(name); // Check for null, etc. return getMappedFileName(prefix, s); } diff --git a/src/main/java/org/codehaus/plexus/components/io/filemappers/RegExpFileMapper.java b/src/main/java/org/codehaus/plexus/components/io/filemappers/RegExpFileMapper.java index aa4dc12..446b890 100644 --- a/src/main/java/org/codehaus/plexus/components/io/filemappers/RegExpFileMapper.java +++ b/src/main/java/org/codehaus/plexus/components/io/filemappers/RegExpFileMapper.java @@ -16,12 +16,13 @@ * limitations under the License. */ -import javax.annotation.Nonnull; import javax.inject.Named; import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jetbrains.annotations.NotNull; + /** * Implementation of a file mapper, which uses regular expressions. */ @@ -82,8 +83,8 @@ public void setReplaceAll(boolean pReplaceAll) { replaceAll = pReplaceAll; } - @Nonnull - public String getMappedFileName(@Nonnull String pName) { + @NotNull + public String getMappedFileName(@NotNull String pName) { final String name = super.getMappedFileName(pName); if (pattern == null) { throw new IllegalStateException("The regular expression pattern has not been set."); diff --git a/src/main/java/org/codehaus/plexus/components/io/filemappers/SuffixFileMapper.java b/src/main/java/org/codehaus/plexus/components/io/filemappers/SuffixFileMapper.java index 3601ff0..ac69ac4 100644 --- a/src/main/java/org/codehaus/plexus/components/io/filemappers/SuffixFileMapper.java +++ b/src/main/java/org/codehaus/plexus/components/io/filemappers/SuffixFileMapper.java @@ -14,9 +14,10 @@ * limitations under the License. */ -import javax.annotation.Nonnull; import javax.inject.Named; +import org.jetbrains.annotations.NotNull; + /** * A file mapper, which maps by adding a suffix to the filename. * If the filename contains dot, the suffix will be added before. @@ -48,8 +49,8 @@ public void setSuffix(String suffix) { this.suffix = suffix; } - @Nonnull - public String getMappedFileName(@Nonnull String pName) { + @NotNull + public String getMappedFileName(@NotNull String pName) { final String name = super.getMappedFileName(pName); if (suffix == null) { throw new IllegalStateException("The suffix has not been set."); diff --git a/src/main/java/org/codehaus/plexus/components/io/fileselectors/AllFilesFileSelector.java b/src/main/java/org/codehaus/plexus/components/io/fileselectors/AllFilesFileSelector.java index cea7fe9..dce55fb 100644 --- a/src/main/java/org/codehaus/plexus/components/io/fileselectors/AllFilesFileSelector.java +++ b/src/main/java/org/codehaus/plexus/components/io/fileselectors/AllFilesFileSelector.java @@ -16,10 +16,11 @@ * limitations under the License. */ -import javax.annotation.Nonnull; import javax.inject.Named; import javax.inject.Singleton; +import org.jetbrains.annotations.NotNull; + /** * The default file selector: Selects all files. */ @@ -31,7 +32,7 @@ public class AllFilesFileSelector implements FileSelector { */ public static final String ROLE_HINT = "all"; - public boolean isSelected(@Nonnull FileInfo fileInfo) { + public boolean isSelected(@NotNull FileInfo fileInfo) { return true; } } diff --git a/src/main/java/org/codehaus/plexus/components/io/fileselectors/FileSelector.java b/src/main/java/org/codehaus/plexus/components/io/fileselectors/FileSelector.java index ac84157..1b51d4c 100644 --- a/src/main/java/org/codehaus/plexus/components/io/fileselectors/FileSelector.java +++ b/src/main/java/org/codehaus/plexus/components/io/fileselectors/FileSelector.java @@ -16,10 +16,10 @@ * limitations under the License. */ -import javax.annotation.Nonnull; - import java.io.IOException; +import org.jetbrains.annotations.NotNull; + /** * Interface of a component, which selects/deselects files. */ @@ -30,5 +30,5 @@ public interface FileSelector { * It is recommended, that the caller creates an instance * of {@link org.codehaus.plexus.components.io.resources.PlexusIoResource}. */ - boolean isSelected(@Nonnull FileInfo fileInfo) throws IOException; + boolean isSelected(@NotNull FileInfo fileInfo) throws IOException; } diff --git a/src/main/java/org/codehaus/plexus/components/io/fileselectors/IncludeExcludeFileSelector.java b/src/main/java/org/codehaus/plexus/components/io/fileselectors/IncludeExcludeFileSelector.java index 9f7af5f..5d81d77 100644 --- a/src/main/java/org/codehaus/plexus/components/io/fileselectors/IncludeExcludeFileSelector.java +++ b/src/main/java/org/codehaus/plexus/components/io/fileselectors/IncludeExcludeFileSelector.java @@ -16,8 +16,6 @@ * limitations under the License. */ -import javax.annotation.Nonnull; -import javax.annotation.Nullable; import javax.inject.Named; import java.io.File; @@ -25,6 +23,8 @@ import org.codehaus.plexus.util.FileUtils; import org.codehaus.plexus.util.MatchPatterns; import org.codehaus.plexus.util.SelectorUtils; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** * This file selector uses a set of patterns for including/excluding @@ -61,7 +61,7 @@ public class IncludeExcludeFileSelector implements FileSelector { * @return true when the name matches against at least one * exclude pattern, or false otherwise. */ - protected boolean isExcluded(@Nonnull String name) { + protected boolean isExcluded(@NotNull String name) { return computedExcludes.matches(name, isCaseSensitive); } @@ -92,11 +92,11 @@ public void setIncludes(@Nullable String[] includes) { } } - private static @Nonnull String getCanonicalName(@Nonnull String pName) { + private static @NotNull String getCanonicalName(@NotNull String pName) { return pName.replace('/', File.separatorChar).replace('\\', File.separatorChar); } - private String asPattern(@Nonnull String pPattern) { + private String asPattern(@NotNull String pPattern) { String pattern = getCanonicalName(pPattern.trim()); if (pattern.endsWith(File.separator)) { pattern += "**"; @@ -166,7 +166,7 @@ public void setExcludes(@Nullable String[] excludes) { * @param isCaseSensitive Whether the pattern is case sensitive. * @return True, if the pattern matches, otherwise false */ - protected boolean matchPath(@Nonnull String pattern, @Nonnull String name, boolean isCaseSensitive) { + protected boolean matchPath(@NotNull String pattern, @NotNull String name, boolean isCaseSensitive) { return SelectorUtils.matchPath(pattern, name, isCaseSensitive); } @@ -178,11 +178,11 @@ protected boolean matchPath(@Nonnull String pattern, @Nonnull String name, boole * @return true when the name matches against at least one * include pattern, or false otherwise. */ - protected boolean isIncluded(@Nonnull String name) { + protected boolean isIncluded(@NotNull String name) { return computedIncludes.matches(name, isCaseSensitive); } - public boolean isSelected(@Nonnull FileInfo fileInfo) { + public boolean isSelected(@NotNull FileInfo fileInfo) { final String name = getCanonicalName(fileInfo.getName()); return isIncluded(name) && !isExcluded(name); } diff --git a/src/main/java/org/codehaus/plexus/components/io/functions/FileSupplier.java b/src/main/java/org/codehaus/plexus/components/io/functions/FileSupplier.java index 1fbee25..eebd4e5 100644 --- a/src/main/java/org/codehaus/plexus/components/io/functions/FileSupplier.java +++ b/src/main/java/org/codehaus/plexus/components/io/functions/FileSupplier.java @@ -16,10 +16,10 @@ * limitations under the License. */ -import javax.annotation.Nonnull; - import java.io.File; +import org.jetbrains.annotations.NotNull; + /** * Implemented by resources that are files on something filesystem-like. */ @@ -28,6 +28,6 @@ public interface FileSupplier { * Supplies the file for this resource, not null. * @return The file */ - @Nonnull + @NotNull File getFile(); } diff --git a/src/main/java/org/codehaus/plexus/components/io/functions/InputStreamTransformer.java b/src/main/java/org/codehaus/plexus/components/io/functions/InputStreamTransformer.java index 5907e10..d814ee8 100644 --- a/src/main/java/org/codehaus/plexus/components/io/functions/InputStreamTransformer.java +++ b/src/main/java/org/codehaus/plexus/components/io/functions/InputStreamTransformer.java @@ -15,12 +15,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import javax.annotation.Nonnull; - import java.io.IOException; import java.io.InputStream; import org.codehaus.plexus.components.io.resources.PlexusIoResource; +import org.jetbrains.annotations.NotNull; /** * Transform a stream into some other kind of stream. May be used to apply filtering or other @@ -37,6 +36,6 @@ public interface InputStreamTransformer { * @return A transformed stream or possibly the supplied stream * @throws IOException */ - @Nonnull - InputStream transform(@Nonnull PlexusIoResource resource, @Nonnull InputStream inputStream) throws IOException; + @NotNull + InputStream transform(@NotNull PlexusIoResource resource, @NotNull InputStream inputStream) throws IOException; } diff --git a/src/main/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResource.java b/src/main/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResource.java index b9bedec..12958ae 100644 --- a/src/main/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResource.java +++ b/src/main/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResource.java @@ -16,7 +16,7 @@ * limitations under the License. */ -import javax.annotation.Nonnull; +import org.jetbrains.annotations.NotNull; /** * Default implementation of {@link PlexusIoResource}. @@ -28,7 +28,7 @@ public abstract class AbstractPlexusIoResource implements PlexusIoResource { private final boolean isFile, isDirectory, isExisting; protected AbstractPlexusIoResource( - @Nonnull String name, + @NotNull String name, long lastModified, long size, boolean isFile, @@ -46,7 +46,7 @@ public long getLastModified() { return lastModified; } - @Nonnull + @NotNull public String getName() { return name; } diff --git a/src/main/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResourceCollection.java b/src/main/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResourceCollection.java index f0dfe91..392d9cb 100644 --- a/src/main/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResourceCollection.java +++ b/src/main/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResourceCollection.java @@ -16,8 +16,6 @@ * limitations under the License. */ -import javax.annotation.Nonnull; - import java.io.IOException; import java.io.InputStream; import java.util.Iterator; @@ -26,6 +24,7 @@ import org.codehaus.plexus.components.io.filemappers.PrefixFileMapper; import org.codehaus.plexus.components.io.fileselectors.FileSelector; import org.codehaus.plexus.components.io.functions.InputStreamTransformer; +import org.jetbrains.annotations.NotNull; /** * Default implementation of a resource collection. @@ -33,8 +32,8 @@ public abstract class AbstractPlexusIoResourceCollection implements PlexusIoResourceCollection { static class IdentityTransformer implements InputStreamTransformer { - @Nonnull - public InputStream transform(@Nonnull PlexusIoResource resource, @Nonnull InputStream inputStream) + @NotNull + public InputStream transform(@NotNull PlexusIoResource resource, @NotNull InputStream inputStream) throws IOException { return inputStream; } diff --git a/src/main/java/org/codehaus/plexus/components/io/resources/Deferred.java b/src/main/java/org/codehaus/plexus/components/io/resources/Deferred.java index 7db54f3..144ae0f 100644 --- a/src/main/java/org/codehaus/plexus/components/io/resources/Deferred.java +++ b/src/main/java/org/codehaus/plexus/components/io/resources/Deferred.java @@ -15,8 +15,6 @@ */ package org.codehaus.plexus.components.io.resources; -import javax.annotation.Nonnull; - import java.io.ByteArrayInputStream; import java.io.FileInputStream; import java.io.IOException; @@ -28,6 +26,7 @@ import org.codehaus.plexus.components.io.functions.NameSupplier; import org.codehaus.plexus.components.io.functions.SizeSupplier; import org.codehaus.plexus.components.io.resources.proxy.ProxyFactory; +import org.jetbrains.annotations.NotNull; class Deferred implements ContentSupplier, NameSupplier, SizeSupplier { final DeferredFileOutputStream dfos; @@ -53,7 +52,7 @@ public Deferred(final PlexusIoResource resource, PlexusIoResourceCollection owne } } - @Nonnull + @NotNull public InputStream getContents() throws IOException { if (dfos == null) { return resource.getContents(); diff --git a/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoCompressedFileResourceCollection.java b/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoCompressedFileResourceCollection.java index 64ba973..c5bd35e 100644 --- a/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoCompressedFileResourceCollection.java +++ b/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoCompressedFileResourceCollection.java @@ -16,8 +16,6 @@ * limitations under the License. */ -import javax.annotation.Nonnull; - import java.io.Closeable; import java.io.File; import java.io.IOException; @@ -29,6 +27,7 @@ import org.codehaus.plexus.components.io.functions.ContentSupplier; import org.codehaus.plexus.components.io.functions.InputStreamTransformer; import org.codehaus.plexus.components.io.functions.PlexusIoResourceConsumer; +import org.jetbrains.annotations.NotNull; /** * Abstract base class for compressed files, aka singleton @@ -94,7 +93,7 @@ public Iterator getResources() throws IOException { final PlexusIoResourceAttributes attributes = getAttributes(f); final ContentSupplier contentSupplier = new ContentSupplier() { - @Nonnull + @NotNull public InputStream getContents() throws IOException { return getInputStream(f); } @@ -116,7 +115,7 @@ protected String getName(File file) throws IOException { protected abstract String getDefaultExtension(); - protected abstract @Nonnull InputStream getInputStream(File file) throws IOException; + protected abstract @NotNull InputStream getInputStream(File file) throws IOException; public InputStream getInputStream(PlexusIoResource resource) throws IOException { InputStream contents = resource.getContents(); diff --git a/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoFileResource.java b/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoFileResource.java index dd262cb..a227955 100755 --- a/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoFileResource.java +++ b/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoFileResource.java @@ -16,8 +16,6 @@ * limitations under the License. */ -import javax.annotation.Nonnull; - import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; @@ -36,6 +34,7 @@ import org.codehaus.plexus.components.io.functions.FileSupplier; import org.codehaus.plexus.components.io.functions.InputStreamTransformer; import org.codehaus.plexus.components.io.functions.ResourceAttributeSupplier; +import org.jetbrains.annotations.NotNull; import static java.util.Objects.requireNonNull; @@ -44,28 +43,28 @@ */ public class PlexusIoFileResource extends AbstractPlexusIoResource implements ResourceAttributeSupplier, FileSupplier { - @Nonnull + @NotNull private final File file; - @Nonnull + @NotNull private final PlexusIoResourceAttributes attributes; - @Nonnull + @NotNull private final FileAttributes fileAttributes; private final ContentSupplier contentSupplier; private final DeferredFileOutputStream dfos; - protected PlexusIoFileResource(@Nonnull File file, @Nonnull String name, @Nonnull PlexusIoResourceAttributes attrs) + protected PlexusIoFileResource(@NotNull File file, @NotNull String name, @NotNull PlexusIoResourceAttributes attrs) throws IOException { this(file, name, attrs, null, null); } PlexusIoFileResource( - @Nonnull final File file, - @Nonnull String name, - @Nonnull PlexusIoResourceAttributes attrs, + @NotNull final File file, + @NotNull String name, + @NotNull PlexusIoResourceAttributes attrs, final ContentSupplier contentSupplier, final InputStreamTransformer streamTransformer) throws IOException { @@ -73,10 +72,10 @@ protected PlexusIoFileResource(@Nonnull File file, @Nonnull String name, @Nonnul } PlexusIoFileResource( - @Nonnull final File file, - @Nonnull String name, - @Nonnull PlexusIoResourceAttributes attrs, - @Nonnull FileAttributes fileAttributes, + @NotNull final File file, + @NotNull String name, + @NotNull PlexusIoResourceAttributes attrs, + @NotNull FileAttributes fileAttributes, final ContentSupplier contentSupplier, final InputStreamTransformer streamTransformer) throws IOException { @@ -102,7 +101,7 @@ protected PlexusIoFileResource(@Nonnull File file, @Nonnull String name, @Nonnul } private static DeferredFileOutputStream asDeferredStream( - @Nonnull ContentSupplier supplier, @Nonnull InputStreamTransformer transToUse, PlexusIoResource resource) + @NotNull ContentSupplier supplier, @NotNull InputStreamTransformer transToUse, PlexusIoResource resource) throws IOException { DeferredFileOutputStream dfos = DeferredFileOutputStream.builder() .setThreshold(5000000) @@ -127,12 +126,12 @@ public static String getName(File file) { /** * Returns the resource file. */ - @Nonnull + @NotNull public File getFile() { return file; } - @Nonnull + @NotNull public InputStream getContents() throws IOException { if (dfos == null) { return contentSupplier.getContents(); @@ -151,7 +150,7 @@ public void close() throws IOException { } } - @Nonnull + @NotNull public URL getURL() throws IOException { return getFile().toURI().toURL(); } @@ -182,12 +181,12 @@ public boolean isFile() { return fileAttributes.isRegularFile(); } - @Nonnull + @NotNull public PlexusIoResourceAttributes getAttributes() { return attributes; } - @Nonnull + @NotNull public FileAttributes getFileAttributes() { return fileAttributes; } diff --git a/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoResource.java b/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoResource.java index 7653744..38cd8a0 100644 --- a/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoResource.java +++ b/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoResource.java @@ -16,8 +16,6 @@ * limitations under the License. */ -import javax.annotation.Nonnull; - import java.io.IOException; import java.io.InputStream; import java.net.URL; @@ -25,6 +23,7 @@ import org.codehaus.plexus.components.io.fileselectors.FileInfo; import org.codehaus.plexus.components.io.functions.ContentSupplier; import org.codehaus.plexus.components.io.functions.SizeSupplier; +import org.jetbrains.annotations.NotNull; /** * A resource is a file-like entity. It may be an actual file, @@ -77,7 +76,7 @@ public interface PlexusIoResource extends FileInfo, SizeSupplier, ContentSupplie * Please note that this InputStream is unbuffered. Clients should wrap this in a * BufferedInputStream or attempt reading reasonably large chunks (8K+). */ - @Nonnull + @NotNull InputStream getContents() throws IOException; /** diff --git a/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoSymlinkResource.java b/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoSymlinkResource.java index 1c6b867..66e1e34 100644 --- a/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoSymlinkResource.java +++ b/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoSymlinkResource.java @@ -1,7 +1,5 @@ package org.codehaus.plexus.components.io.resources; -import javax.annotation.Nonnull; - import java.io.File; import java.io.IOException; import java.nio.file.Path; @@ -9,33 +7,34 @@ import org.apache.commons.io.output.DeferredFileOutputStream; import org.codehaus.plexus.components.io.attributes.PlexusIoResourceAttributes; import org.codehaus.plexus.components.io.functions.SymlinkDestinationSupplier; +import org.jetbrains.annotations.NotNull; public class PlexusIoSymlinkResource extends PlexusIoFileResource implements SymlinkDestinationSupplier { private final String symLinkDestination; private final PlexusIoFileResource targetResource; - PlexusIoSymlinkResource(@Nonnull File symlinkfile, String name, @Nonnull PlexusIoResourceAttributes attrs) + PlexusIoSymlinkResource(@NotNull File symlinkfile, String name, @NotNull PlexusIoResourceAttributes attrs) throws IOException { this(symlinkfile, name, attrs, symlinkfile.toPath()); } PlexusIoSymlinkResource( - @Nonnull File symlinkfile, String name, @Nonnull PlexusIoResourceAttributes attrs, Path linkPath) + @NotNull File symlinkfile, String name, @NotNull PlexusIoResourceAttributes attrs, Path linkPath) throws IOException { this(symlinkfile, name, attrs, linkPath, java.nio.file.Files.readSymbolicLink(linkPath)); } private PlexusIoSymlinkResource( - @Nonnull File symlinkfile, String name, @Nonnull PlexusIoResourceAttributes attrs, Path path, Path linkPath) + @NotNull File symlinkfile, String name, @NotNull PlexusIoResourceAttributes attrs, Path path, Path linkPath) throws IOException { this(symlinkfile, name, attrs, linkPath.toString(), (PlexusIoFileResource) ResourceFactory.createResource(path.resolveSibling(linkPath).toFile())); } private PlexusIoSymlinkResource( - @Nonnull File symlinkfile, + @NotNull File symlinkfile, String name, - @Nonnull PlexusIoResourceAttributes attrs, + @NotNull PlexusIoResourceAttributes attrs, String symLinkDestination, PlexusIoFileResource targetResource) throws IOException { diff --git a/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoURLResource.java b/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoURLResource.java index 6a414b7..53b89ea 100644 --- a/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoURLResource.java +++ b/src/main/java/org/codehaus/plexus/components/io/resources/PlexusIoURLResource.java @@ -16,16 +16,16 @@ * limitations under the License. */ -import javax.annotation.Nonnull; - import java.io.IOException; import java.io.InputStream; import java.net.URL; import java.net.URLConnection; +import org.jetbrains.annotations.NotNull; + public abstract class PlexusIoURLResource extends AbstractPlexusIoResource { protected PlexusIoURLResource( - @Nonnull String name, + @NotNull String name, long lastModified, long size, boolean isFile, @@ -34,7 +34,7 @@ protected PlexusIoURLResource( super(name, lastModified, size, isFile, isDirectory, isExisting); } - @Nonnull + @NotNull public InputStream getContents() throws IOException { final URL url = getURL(); try { diff --git a/src/main/java/org/codehaus/plexus/components/io/resources/proxy/PlexusIoProxyResourceCollection.java b/src/main/java/org/codehaus/plexus/components/io/resources/proxy/PlexusIoProxyResourceCollection.java index ffa9430..2123751 100644 --- a/src/main/java/org/codehaus/plexus/components/io/resources/proxy/PlexusIoProxyResourceCollection.java +++ b/src/main/java/org/codehaus/plexus/components/io/resources/proxy/PlexusIoProxyResourceCollection.java @@ -16,8 +16,6 @@ * limitations under the License. */ -import javax.annotation.Nonnull; - import java.io.IOException; import java.nio.charset.Charset; import java.util.Iterator; @@ -36,6 +34,7 @@ import org.codehaus.plexus.components.io.resources.PlexusIoResource; import org.codehaus.plexus.components.io.resources.PlexusIoResourceCollection; import org.codehaus.plexus.components.io.resources.Stream; +import org.jetbrains.annotations.NotNull; /** * Implementation of {@link PlexusIoResourceCollection} for an archives contents. @@ -44,7 +43,7 @@ public class PlexusIoProxyResourceCollection extends AbstractPlexusIoResourceCol implements EncodingSupported { private final PlexusIoResourceCollection src; - public PlexusIoProxyResourceCollection(@Nonnull PlexusIoResourceCollection src) { + public PlexusIoProxyResourceCollection(@NotNull PlexusIoResourceCollection src) { this.src = src; } diff --git a/src/main/java/org/codehaus/plexus/components/io/resources/proxy/ProxyFactory.java b/src/main/java/org/codehaus/plexus/components/io/resources/proxy/ProxyFactory.java index 3670a2e..2a02468 100644 --- a/src/main/java/org/codehaus/plexus/components/io/resources/proxy/ProxyFactory.java +++ b/src/main/java/org/codehaus/plexus/components/io/resources/proxy/ProxyFactory.java @@ -15,8 +15,6 @@ */ package org.codehaus.plexus.components.io.resources.proxy; -import javax.annotation.Nonnull; - import java.lang.reflect.Proxy; import java.util.ArrayList; import java.util.List; @@ -25,9 +23,10 @@ import org.codehaus.plexus.components.io.functions.ResourceAttributeSupplier; import org.codehaus.plexus.components.io.functions.SymlinkDestinationSupplier; import org.codehaus.plexus.components.io.resources.PlexusIoResource; +import org.jetbrains.annotations.NotNull; public class ProxyFactory { - public static PlexusIoResource createProxy(@Nonnull PlexusIoResource target, Object alternateSupplier) { + public static PlexusIoResource createProxy(@NotNull PlexusIoResource target, Object alternateSupplier) { List interfaces = new ArrayList<>(); interfaces.add(PlexusIoResource.class); diff --git a/src/main/java/org/codehaus/plexus/components/io/resources/proxy/ResourceInvocationHandler.java b/src/main/java/org/codehaus/plexus/components/io/resources/proxy/ResourceInvocationHandler.java index 7ac62ce..eea8eed 100644 --- a/src/main/java/org/codehaus/plexus/components/io/resources/proxy/ResourceInvocationHandler.java +++ b/src/main/java/org/codehaus/plexus/components/io/resources/proxy/ResourceInvocationHandler.java @@ -15,8 +15,6 @@ */ package org.codehaus.plexus.components.io.resources.proxy; -import javax.annotation.Nonnull; - import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; @@ -26,6 +24,7 @@ import org.codehaus.plexus.components.io.functions.SizeSupplier; import org.codehaus.plexus.components.io.functions.SymlinkDestinationSupplier; import org.codehaus.plexus.components.io.resources.PlexusIoResource; +import org.jetbrains.annotations.NotNull; class ResourceInvocationHandler implements InvocationHandler { private final PlexusIoResource testImpl; @@ -36,7 +35,7 @@ class ResourceInvocationHandler implements InvocationHandler { private final SymlinkDestinationSupplier symlinkDestinationSupplier; private final ResourceAttributeSupplier resourceAttributeSupplier; - public ResourceInvocationHandler(@Nonnull PlexusIoResource target, Object alternativeHandler) { + public ResourceInvocationHandler(@NotNull PlexusIoResource target, Object alternativeHandler) { this.testImpl = target; this.contentSupplier = asOrNull(alternativeHandler, ContentSupplier.class); this.nameSupplier = asOrNull(alternativeHandler, NameSupplier.class); diff --git a/src/test/java/org/codehaus/plexus/components/io/filemappers/FileSelectorTest.java b/src/test/java/org/codehaus/plexus/components/io/filemappers/FileSelectorTest.java index 6879c7f..119433f 100644 --- a/src/test/java/org/codehaus/plexus/components/io/filemappers/FileSelectorTest.java +++ b/src/test/java/org/codehaus/plexus/components/io/filemappers/FileSelectorTest.java @@ -16,7 +16,6 @@ * limitations under the License. */ -import javax.annotation.Nonnull; import javax.inject.Inject; import java.io.IOException; @@ -30,6 +29,7 @@ import org.codehaus.plexus.components.io.fileselectors.IncludeExcludeFileSelector; import org.codehaus.plexus.components.io.resources.AbstractPlexusIoResource; import org.codehaus.plexus.testing.PlexusTest; +import org.jetbrains.annotations.NotNull; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -48,7 +48,7 @@ protected void testFileSelector(FileSelector pSelector, String[] pInput, boolean for (int i = 0; i < pInput.length; i++) { final String name = pInput[i]; AbstractPlexusIoResource resource = new AbstractPlexusIoResource(name, 0, 0, true, false, true) { - @Nonnull + @NotNull public InputStream getContents() { throw new IllegalStateException("Not implemented"); } diff --git a/src/test/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResourceCollectionTest.java b/src/test/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResourceCollectionTest.java index 4e068ba..eefd869 100644 --- a/src/test/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResourceCollectionTest.java +++ b/src/test/java/org/codehaus/plexus/components/io/resources/AbstractPlexusIoResourceCollectionTest.java @@ -1,7 +1,5 @@ package org.codehaus.plexus.components.io.resources; -import javax.annotation.Nonnull; - import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; @@ -10,6 +8,7 @@ import java.util.Iterator; import org.codehaus.plexus.components.io.functions.InputStreamTransformer; +import org.jetbrains.annotations.NotNull; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -36,8 +35,8 @@ public boolean isConcurrentAccessSupported() { }; sut.setStreamTransformer(new InputStreamTransformer() { - @Nonnull - public InputStream transform(@Nonnull PlexusIoResource resource, @Nonnull final InputStream inputStream) + @NotNull + public InputStream transform(@NotNull PlexusIoResource resource, @NotNull final InputStream inputStream) throws IOException { final byte[] buf = new byte[2]; buf[0] = (byte) inputStream.read(); @@ -56,7 +55,7 @@ public InputStream transform(@Nonnull PlexusIoResource resource, @Nonnull final private static PlexusIoResource getResource(final String r1) { return new AbstractPlexusIoResource(r1, 0, 0, true, false, true) { - @Nonnull + @NotNull public InputStream getContents() { return new ByteArrayInputStream((r1 + "Payload").getBytes()); } diff --git a/src/test/java/org/codehaus/plexus/components/io/resources/proxy/PlexusIoProxyResourceCollectionTest.java b/src/test/java/org/codehaus/plexus/components/io/resources/proxy/PlexusIoProxyResourceCollectionTest.java index 1ce7f92..8a4f087 100644 --- a/src/test/java/org/codehaus/plexus/components/io/resources/proxy/PlexusIoProxyResourceCollectionTest.java +++ b/src/test/java/org/codehaus/plexus/components/io/resources/proxy/PlexusIoProxyResourceCollectionTest.java @@ -16,8 +16,6 @@ * limitations under the License. */ -import javax.annotation.Nonnull; - import java.io.Closeable; import java.io.IOException; import java.io.InputStream; @@ -28,6 +26,7 @@ import org.codehaus.plexus.components.io.resources.AbstractPlexusIoResourceCollection; import org.codehaus.plexus.components.io.resources.PlexusIoResource; import org.codehaus.plexus.components.io.resources.Stream; +import org.jetbrains.annotations.NotNull; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertFalse; @@ -74,7 +73,7 @@ public boolean hasNext() { public PlexusIoResource next() { return new AbstractPlexusIoResource("fud", 123, 22, true, false, false) { - @Nonnull + @NotNull public InputStream getContents() { return null; } diff --git a/src/test/java/org/codehaus/plexus/components/io/resources/proxy/ProxyFactoryTest.java b/src/test/java/org/codehaus/plexus/components/io/resources/proxy/ProxyFactoryTest.java index 152b633..3f235f9 100644 --- a/src/test/java/org/codehaus/plexus/components/io/resources/proxy/ProxyFactoryTest.java +++ b/src/test/java/org/codehaus/plexus/components/io/resources/proxy/ProxyFactoryTest.java @@ -1,7 +1,5 @@ package org.codehaus.plexus.components.io.resources.proxy; -import javax.annotation.Nonnull; - import java.io.ByteArrayInputStream; import java.io.File; import java.io.IOException; @@ -18,6 +16,7 @@ import org.codehaus.plexus.components.io.functions.SymlinkDestinationSupplier; import org.codehaus.plexus.components.io.resources.PlexusIoFileResource; import org.codehaus.plexus.components.io.resources.PlexusIoResource; +import org.jetbrains.annotations.NotNull; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.*; @@ -78,7 +77,7 @@ private PlexusIoFileResource getPomResource() throws IOException { } static class Dummy extends PlexusIoFileResource implements SymlinkDestinationSupplier { - public Dummy(@Nonnull File file, @Nonnull PlexusIoResourceAttributes attrs) throws IOException { + public Dummy(@NotNull File file, @NotNull PlexusIoResourceAttributes attrs) throws IOException { super(file, file.getName(), attrs); }