Class XJarFileResource

java.lang.Object
org.eclipse.jetty.util.resource.Resource
com.iizix.server.app.XJarFileResource
All Implemented Interfaces:
Closeable, 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
  • Field Summary

    Fields inherited from class org.eclipse.jetty.util.resource.Resource

    __defaultUseCaches
  • Constructor Summary

    Constructors
    Constructor
    Description
    XJarFileResource(URL url, byte[] data, long lastModified)
    Constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    org.eclipse.jetty.util.resource.Resource
    Returns the resource contained inside the current resource with the given name.
    void
    Release any temporary resources held by the resource.
    boolean
    Deletes the given resource
    boolean
    Checks if two are equal.
    boolean
     
    protected void
     
    File representing the given resource.
    Input stream to the resource
    The name of the resource.
    Readable ByteChannel for the resource.
    URI representing the resource.
    int
    Hash code.
    boolean
    isContainedIn(org.eclipse.jetty.util.resource.Resource r)
     
    boolean
     
    long
    Time resource was last modified.
    long
    Length of the resource.
    list of resource names contained in the given resource.
    boolean
    renameTo(org.eclipse.jetty.util.resource.Resource dest)
    Rename the given resource

    Methods 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, resolveAlias, setAssociate, setDefaultUseCaches, toURL

    Methods inherited from class java.lang.Object

    clone, getClass, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • XJarFileResource

      public XJarFileResource(URL url, byte[] data, long lastModified)
      Constructor.
      Parameters:
      url - The URL.
      data - The byte array.
      lastModified - Last modified.
  • Method Details

    • finalize

      protected void finalize()
      Overrides:
      finalize in class Object
    • isContainedIn

      public boolean isContainedIn(org.eclipse.jetty.util.resource.Resource r)
      Specified by:
      isContainedIn in class org.eclipse.jetty.util.resource.Resource
    • close

      public void close()
      Release any temporary resources held by the resource.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in class org.eclipse.jetty.util.resource.Resource
    • exists

      public boolean exists()
      Specified by:
      exists in class org.eclipse.jetty.util.resource.Resource
      Returns:
      true if the represented resource exists.
    • isDirectory

      public boolean isDirectory()
      Specified by:
      isDirectory in class org.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 class org.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 class org.eclipse.jetty.util.resource.Resource
      Returns:
      the length of the resource
    • getURI

      public URI getURI()
      URI representing the resource.
      Specified by:
      getURI in class org.eclipse.jetty.util.resource.Resource
      Returns:
      an URI representing the given resource
    • getFile

      public File getFile()
      File representing the given resource.
      Specified by:
      getFile in class org.eclipse.jetty.util.resource.Resource
      Returns:
      an File representing the given resource or NULL if this is not possible.
    • getName

      public String getName()
      The name of the resource.
      Specified by:
      getName in class org.eclipse.jetty.util.resource.Resource
      Returns:
      the name of the resource
    • getInputStream

      public InputStream getInputStream()
      Input stream to the resource
      Specified by:
      getInputStream in class org.eclipse.jetty.util.resource.Resource
      Returns:
      an input stream to the resource
    • getReadableByteChannel

      public ReadableByteChannel getReadableByteChannel()
      Readable ByteChannel for the resource.
      Specified by:
      getReadableByteChannel in class org.eclipse.jetty.util.resource.Resource
      Returns:
      an readable bytechannel to the resource or null if one is not available.
    • delete

      public boolean delete() throws SecurityException
      Deletes the given resource
      Specified by:
      delete in class org.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:
      SecurityException - Always: Delete not supported.
    • renameTo

      public boolean renameTo(org.eclipse.jetty.util.resource.Resource dest) throws SecurityException
      Rename the given resource
      Specified by:
      renameTo in class org.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:
      SecurityException - Always: RenameTo not supported.
    • list

      public String[] list()
      list of resource names contained in the given resource.
      Specified by:
      list in class org.eclipse.jetty.util.resource.Resource
      Returns:
      null: not supported.
    • addPath

      public org.eclipse.jetty.util.resource.Resource addPath(String path) throws IOException
      Returns the resource contained inside the current resource with the given name.
      Specified by:
      addPath in class org.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:
      IOException - if unable to resolve the path
    • hashCode

      public int hashCode()
      Hash code.
      Overrides:
      hashCode in class Object
      Returns:
      The hash code.
    • equals

      public boolean equals(Object o)
      Checks if two are equal.
      Overrides:
      equals in class Object
      Parameters:
      o - The other resource?
      Returns:
      true for equality, false otherwise.