Class PlexusIoFileResource
- java.lang.Object
-
- org.codehaus.plexus.components.io.resources.AbstractPlexusIoResource
-
- org.codehaus.plexus.components.io.resources.PlexusIoFileResource
-
- All Implemented Interfaces:
FileInfo,ContentSupplier,FileSupplier,NameSupplier,ResourceAttributeSupplier,SizeSupplier,PlexusIoResource
- Direct Known Subclasses:
PlexusIoSymlinkResource
public class PlexusIoFileResource extends AbstractPlexusIoResource implements ResourceAttributeSupplier, FileSupplier
Implementation ofPlexusIoResourcefor files.
-
-
Field Summary
-
Fields inherited from interface org.codehaus.plexus.components.io.resources.PlexusIoResource
UNKNOWN_MODIFICATION_DATE, UNKNOWN_RESOURCE_SIZE
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedPlexusIoFileResource(File file, String name, PlexusIoResourceAttributes attrs)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description PlexusIoResourceAttributesgetAttributes()InputStreamgetContents()Creates anInputStream, which may be used to read the files contents.protected org.apache.commons.io.output.DeferredFileOutputStreamgetDfos()FilegetFile()Returns the resource file.FileAttributesgetFileAttributes()longgetLastModified()Returns the date, when the resource was last modified, if known.static StringgetName(File file)longgetSize()Returns the resources size, if known.URLgetURL()Returns anURL, which may be used to reference the resource, if possible.booleanisDirectory()Returns, whether theFileInforefers to a directory.booleanisExisting()Returns, whether the resource exists.booleanisFile()Returns, whether theFileInforefers to a file.booleanisSymbolicLink()Returns, whether theFileInforefers to a symlink.-
Methods inherited from class org.codehaus.plexus.components.io.resources.AbstractPlexusIoResource
getName
-
-
-
-
Constructor Detail
-
PlexusIoFileResource
protected PlexusIoFileResource(@Nonnull File file, @Nonnull String name, @Nonnull PlexusIoResourceAttributes attrs) throws IOException
- Throws:
IOException
-
-
Method Detail
-
getFile
@Nonnull public File getFile()
Returns the resource file.- Specified by:
getFilein interfaceFileSupplier- Returns:
- The file
-
getContents
@Nonnull public InputStream getContents() throws IOException
Description copied from interface:PlexusIoResourceCreates anInputStream, which may be used to read the files contents. This is useful, if the file selector comes to a decision based on the files contents. Please note that this InputStream is unbuffered. Clients should wrap this in a BufferedInputStream or attempt reading reasonably large chunks (8K+).- Specified by:
getContentsin interfaceContentSupplier- Specified by:
getContentsin interfaceFileInfo- Specified by:
getContentsin interfacePlexusIoResource- Throws:
IOException
-
getURL
@Nonnull public URL getURL() throws IOException
Description copied from interface:PlexusIoResourceReturns anURL, which may be used to reference the resource, if possible.- Specified by:
getURLin interfacePlexusIoResource- Returns:
- An URL referencing the resource, if possible, or null.
In the latter case, you are forced to use
PlexusIoResource.getContents(). - Throws:
IOException
-
getSize
public long getSize()
Description copied from interface:PlexusIoResourceReturns the resources size, if known. Otherwise returnsPlexusIoResource.UNKNOWN_RESOURCE_SIZE.- Specified by:
getSizein interfacePlexusIoResource- Specified by:
getSizein interfaceSizeSupplier- Overrides:
getSizein classAbstractPlexusIoResource
-
isDirectory
public boolean isDirectory()
Description copied from interface:PlexusIoResourceReturns, whether theFileInforefers to a directory.- Specified by:
isDirectoryin interfaceFileInfo- Specified by:
isDirectoryin interfacePlexusIoResource- Overrides:
isDirectoryin classAbstractPlexusIoResource
-
isExisting
public boolean isExisting()
Description copied from interface:PlexusIoResourceReturns, whether the resource exists.- Specified by:
isExistingin interfacePlexusIoResource- Overrides:
isExistingin classAbstractPlexusIoResource
-
isFile
public boolean isFile()
Description copied from interface:PlexusIoResourceReturns, whether theFileInforefers to a file.- Specified by:
isFilein interfaceFileInfo- Specified by:
isFilein interfacePlexusIoResource- Overrides:
isFilein classAbstractPlexusIoResource
-
getAttributes
@Nonnull public PlexusIoResourceAttributes getAttributes()
- Specified by:
getAttributesin interfaceResourceAttributeSupplier
-
getFileAttributes
@Nonnull public FileAttributes getFileAttributes()
-
getLastModified
public long getLastModified()
Description copied from interface:PlexusIoResourceReturns the date, when the resource was last modified, if known. Otherwise, returnsPlexusIoResource.UNKNOWN_MODIFICATION_DATE.- Specified by:
getLastModifiedin interfacePlexusIoResource- Overrides:
getLastModifiedin classAbstractPlexusIoResource- See Also:
File.lastModified()
-
isSymbolicLink
public boolean isSymbolicLink()
Description copied from interface:FileInfoReturns, whether theFileInforefers to a symlink. This does not necessarily mean that the underlying representation *is* a symlink on disk, but that this resource represents a symlink. This method will return "false" for java versions prior to java7.- Specified by:
isSymbolicLinkin interfaceFileInfo- Overrides:
isSymbolicLinkin classAbstractPlexusIoResource
-
getDfos
protected org.apache.commons.io.output.DeferredFileOutputStream getDfos()
-
-