Package org.jfree.io

Class IOUtils

java.lang.Object
org.jfree.io.IOUtils

public class IOUtils extends Object
The IOUtils provide some IO related helper methods.
  • Field Details

    • instance

      private static IOUtils instance
      the singleton instance of the utility package.
  • Constructor Details

    • IOUtils

      private IOUtils()
      DefaultConstructor.
  • Method Details

    • getInstance

      public static IOUtils getInstance()
      Gets the singleton instance of the utility package.
      Returns:
      the singleton instance.
    • isFileStyleProtocol

      private boolean isFileStyleProtocol(URL url)
      Checks, whether the URL uses a file based protocol.
      Parameters:
      url - the url.
      Returns:
      true, if the url is file based.
    • parseName

      private List parseName(String name)
      Parses the given name and returns the name elements as List of Strings.
      Parameters:
      name - the name, that should be parsed.
      Returns:
      the parsed name.
    • formatName

      private String formatName(List name, String query)
      Transforms the name list back into a single string, separated with "/".
      Parameters:
      name - the name list.
      query - the (optional) query for the URL.
      Returns:
      the constructed name.
    • startsWithUntil

      private int startsWithUntil(List baseName, List urlName)
      Compares both name lists, and returns the last common index shared between the two lists.
      Parameters:
      baseName - the name created using the base url.
      urlName - the target url name.
      Returns:
      the number of shared elements.
    • isSameService

      private boolean isSameService(URL url, URL baseUrl)
      Checks, whether the URL points to the same service. A service is equal if the protocol, host and port are equal.
      Parameters:
      url - a url
      baseUrl - an other url, that should be compared.
      Returns:
      true, if the urls point to the same host and port and use the same protocol, false otherwise.
    • createRelativeURL

      public String createRelativeURL(URL url, URL baseURL)
      Creates a relative url by stripping the common parts of the the url.
      Parameters:
      url - the to be stripped url
      baseURL - the base url, to which the url is relative to.
      Returns:
      the relative url, or the url unchanged, if there is no relation beween both URLs.
    • isPath

      private boolean isPath(URL baseURL)
      Returns true if the URL represents a path, and false otherwise.
      Parameters:
      baseURL - the URL.
      Returns:
      A boolean.
    • getQuery

      private String getQuery(URL url)
      Implements the JDK 1.3 method URL.getPath(). The path is defined as URL.getFile() minus the (optional) query.
      Parameters:
      url - the URL
      Returns:
      the path
    • getPath

      private String getPath(URL url)
      Implements the JDK 1.3 method URL.getPath(). The path is defined as URL.getFile() minus the (optional) query.
      Parameters:
      url - the URL
      Returns:
      the path
    • copyStreams

      public void copyStreams(InputStream in, OutputStream out) throws IOException
      Copies the InputStream into the OutputStream, until the end of the stream has been reached. This method uses a buffer of 4096 kbyte.
      Parameters:
      in - the inputstream from which to read.
      out - the outputstream where the data is written to.
      Throws:
      IOException - if a IOError occurs.
    • copyStreams

      public void copyStreams(InputStream in, OutputStream out, int buffersize) throws IOException
      Copies the InputStream into the OutputStream, until the end of the stream has been reached.
      Parameters:
      in - the inputstream from which to read.
      out - the outputstream where the data is written to.
      buffersize - the buffer size.
      Throws:
      IOException - if a IOError occurs.
    • copyWriter

      public void copyWriter(Reader in, Writer out) throws IOException
      Copies the contents of the Reader into the Writer, until the end of the stream has been reached. This method uses a buffer of 4096 kbyte.
      Parameters:
      in - the reader from which to read.
      out - the writer where the data is written to.
      Throws:
      IOException - if a IOError occurs.
    • copyWriter

      public void copyWriter(Reader in, Writer out, int buffersize) throws IOException
      Copies the contents of the Reader into the Writer, until the end of the stream has been reached.
      Parameters:
      in - the reader from which to read.
      out - the writer where the data is written to.
      buffersize - the buffer size.
      Throws:
      IOException - if a IOError occurs.
    • getFileName

      public String getFileName(URL url)
      Extracts the file name from the URL.
      Parameters:
      url - the url.
      Returns:
      the extracted filename.
    • stripFileExtension

      public String stripFileExtension(String file)
      Removes the file extension from the given file name.
      Parameters:
      file - the file name.
      Returns:
      the file name without the file extension.
    • getFileExtension

      public String getFileExtension(String file)
      Returns the file extension of the given file name. The returned value will contain the dot.
      Parameters:
      file - the file name.
      Returns:
      the file extension.
    • isSubDirectory

      public boolean isSubDirectory(File base, File child) throws IOException
      Checks, whether the child directory is a subdirectory of the base directory.
      Parameters:
      base - the base directory.
      child - the suspected child directory.
      Returns:
      true, if the child is a subdirectory of the base directory.
      Throws:
      IOException - if an IOError occured during the test.