Package com.iizix.server.app
Class XJarFileResource
- java.lang.Object
- org.eclipse.jetty.util.resource.Resource
- com.iizix.server.app.XJarFileResource
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,org.eclipse.jetty.util.resource.ResourceFactory
public class XJarFileResource extends org.eclipse.jetty.util.resource.Resource
Jetty resource located inside an XJarFile that already is loaded into memory.- Author:
- Christopher Mindus
Constructor Summary
Constructors Constructor Description XJarFileResource(java.net.URL url, byte[] data, long lastModified)
Constructor.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.eclipse.jetty.util.resource.Resource
addPath(java.lang.String path)
Returns the resource contained inside the current resource with the given name.void
close()
Release any temporary resources held by the resource.boolean
delete()
Deletes the given resourceboolean
equals(java.lang.Object o)
Checks if two are equal.boolean
exists()
protected void
finalize()
java.io.File
getFile()
File representing the given resource.java.io.InputStream
getInputStream()
Input stream to the resourcejava.lang.String
getName()
The name of the resource.java.nio.channels.ReadableByteChannel
getReadableByteChannel()
Readable ByteChannel for the resource.java.net.URI
getURI()
URI representing the resource.int
hashCode()
Hash code.boolean
isContainedIn(org.eclipse.jetty.util.resource.Resource r)
boolean
isDirectory()
long
lastModified()
Time resource was last modified.long
length()
Length of the resource.java.lang.String[]
list()
list of resource names contained in the given resource.boolean
renameTo(org.eclipse.jetty.util.resource.Resource dest)
Rename the given resourceMethods inherited from class org.eclipse.jetty.util.resource.Resource
copyTo, fromList, fromList, getAlias, getAllResources, getAssociate, getDefaultUseCaches, getListHTML, getResource, getWeakETag, getWeakETag, isAlias, isContainedIn, isSame, newClassPathResource, newClassPathResource, newResource, newResource, newResource, newResource, newResource, newResource, newSystemResource, setAssociate, setDefaultUseCaches, toURL
Method Detail
finalize
protected void finalize()
- Overrides:
finalize
in classjava.lang.Object
isContainedIn
public boolean isContainedIn(org.eclipse.jetty.util.resource.Resource r)
- Specified by:
isContainedIn
in classorg.eclipse.jetty.util.resource.Resource
close
public void close()
Release any temporary resources held by the resource.- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in classorg.eclipse.jetty.util.resource.Resource
exists
public boolean exists()
- Specified by:
exists
in classorg.eclipse.jetty.util.resource.Resource
- Returns:
- true if the represented resource exists.
isDirectory
public boolean isDirectory()
- Specified by:
isDirectory
in classorg.eclipse.jetty.util.resource.Resource
- Returns:
- true if the represented resource is a container/directory. if the resource is not a file, resources ending with "/" are considered directories.
lastModified
public long lastModified()
Time resource was last modified.- Specified by:
lastModified
in classorg.eclipse.jetty.util.resource.Resource
- Returns:
- the last modified time as milliseconds since unix epoch
length
public long length()
Length of the resource.- Specified by:
length
in classorg.eclipse.jetty.util.resource.Resource
- Returns:
- the length of the resource
getURI
public java.net.URI getURI()
URI representing the resource.- Specified by:
getURI
in classorg.eclipse.jetty.util.resource.Resource
- Returns:
- an URI representing the given resource
getFile
public java.io.File getFile()
File representing the given resource.- Specified by:
getFile
in classorg.eclipse.jetty.util.resource.Resource
- Returns:
- an File representing the given resource or NULL if this is not possible.
getName
public java.lang.String getName()
The name of the resource.- Specified by:
getName
in classorg.eclipse.jetty.util.resource.Resource
- Returns:
- the name of the resource
getInputStream
public java.io.InputStream getInputStream()
Input stream to the resource- Specified by:
getInputStream
in classorg.eclipse.jetty.util.resource.Resource
- Returns:
- an input stream to the resource
getReadableByteChannel
public java.nio.channels.ReadableByteChannel getReadableByteChannel()
Readable ByteChannel for the resource.- Specified by:
getReadableByteChannel
in classorg.eclipse.jetty.util.resource.Resource
- Returns:
- an readable bytechannel to the resource or null if one is not available.
delete
public boolean delete() throws java.lang.SecurityException
Deletes the given resource- Specified by:
delete
in classorg.eclipse.jetty.util.resource.Resource
- Returns:
- true if resource was found and successfully deleted, false if resource didn't exist or was unable to be deleted.
- Throws:
java.lang.SecurityException
- Always: Delete not supported.
renameTo
public boolean renameTo(org.eclipse.jetty.util.resource.Resource dest) throws java.lang.SecurityException
Rename the given resource- Specified by:
renameTo
in classorg.eclipse.jetty.util.resource.Resource
- Parameters:
dest
- the destination name for the resource- Returns:
- true if the resource was renamed, false if the resource didn't exist or was unable to be renamed.
- Throws:
java.lang.SecurityException
- Always: RenameTo not supported.
list
public java.lang.String[] list()
list of resource names contained in the given resource.- Specified by:
list
in classorg.eclipse.jetty.util.resource.Resource
- Returns:
- null: not supported.
addPath
public org.eclipse.jetty.util.resource.Resource addPath(java.lang.String path) throws java.io.IOException
Returns the resource contained inside the current resource with the given name.- Specified by:
addPath
in classorg.eclipse.jetty.util.resource.Resource
- Parameters:
path
- The path segment to add, which is not encoded- Returns:
- the Resource for the resolved path within this Resource.
- Throws:
java.io.IOException
- if unable to resolve the path
hashCode
public int hashCode()
Hash code.- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- The hash code.
equals
public boolean equals(java.lang.Object o)
Checks if two are equal.- Overrides:
equals
in classjava.lang.Object
- Parameters:
o
- The other resource?- Returns:
- true for equality, false otherwise.