Class ByteArrayDataSource

java.lang.Object
com.groiss.util.ByteArrayDataSource
All Implemented Interfaces:
javax.activation.DataSource

public class ByteArrayDataSource extends Object implements javax.activation.DataSource
A DataSource that can be created out of a byte array, a String or an input stream.
  • Constructor Details

    • ByteArrayDataSource

      public ByteArrayDataSource(InputStream is, String type)
      Create a DataSoruce from an input stream.
      Parameters:
      is - InputStream from which the data will be read.
      type - Mime-Type of the data (e.g., "application/pdf").
    • ByteArrayDataSource

      public ByteArrayDataSource(byte[] data, String type)
      Create a DataSource from a byte array.
      Parameters:
      data - byte array holding the data for this data source. The byte array will not be copied but used directly.
      type - Mime-Type of the data (e.g., "application/pdf").
    • ByteArrayDataSource

      public ByteArrayDataSource(String data, String type)
      Create a DataSource from a String.
      Parameters:
      data - String holding the data for this data source.
      type - Mime-Type of the data (e.g., "application/pdf").
  • Method Details

    • getInputStream

      public InputStream getInputStream() throws IOException
      Returns an InputStream for reading from this data source.
      Specified by:
      getInputStream in interface javax.activation.DataSource
      Throws:
      IOException
    • getOutputStream

      public OutputStream getOutputStream() throws IOException
      This operation is not supported! If you call it, an IOException will be thrown.
      Specified by:
      getOutputStream in interface javax.activation.DataSource
      Throws:
      IOException
    • getContentType

      public String getContentType()
      Returns the content type for this data source.
      Specified by:
      getContentType in interface javax.activation.DataSource
    • getName

      public String getName()
      Returns the name of the data source. Current implementation returns always "dummy", because there is no need for a name.
      Specified by:
      getName in interface javax.activation.DataSource