Class GridFSUploadStream

  • All Implemented Interfaces:
    java.io.Closeable, java.io.Flushable, java.lang.AutoCloseable

    @NotThreadSafe
    public abstract class GridFSUploadStream
    extends java.io.OutputStream
    A GridFS OutputStream for uploading data into GridFS

    Provides the id for the file to be uploaded as well as the write methods of a OutputStream

    This implementation of a OutputStream will not throw IOExceptions. However, it will throw a MongoException if there is an error writing to MongoDB.

    Since:
    3.1
    • Constructor Detail

      • GridFSUploadStream

        public GridFSUploadStream()
    • Method Detail

      • getFileId

        @Deprecated
        public abstract ObjectId getFileId()
        Deprecated.
        use getObjectId() instead.
        Gets the ObjectId for the file to be uploaded Throws a MongoGridFSException if the file id is not an ObjectId.
        Returns:
        the ObjectId for the file to be uploaded
      • getObjectId

        public abstract ObjectId getObjectId()
        Gets the ObjectId for the file to be uploaded or throws an error if an alternative BsonType has been used for the id. Throws a MongoGridFSException if the file id is not an ObjectId.
        Returns:
        the ObjectId for the file to be uploaded
      • getId

        public abstract BsonValue getId()
        Gets the BsonValue for the file to be uploaded
        Returns:
        the BsonValue for the file to be uploaded
      • abort

        public abstract void abort()
        Aborts the upload and deletes any data.
      • write

        public abstract void write​(int b)
        Specified by:
        write in class java.io.OutputStream
      • write

        public abstract void write​(byte[] b)
        Overrides:
        write in class java.io.OutputStream
      • write

        public abstract void write​(byte[] b,
                                   int off,
                                   int len)
        Overrides:
        write in class java.io.OutputStream
      • flush

        public void flush()
        Specified by:
        flush in interface java.io.Flushable
        Overrides:
        flush in class java.io.OutputStream
      • close

        public abstract void close()
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class java.io.OutputStream