Interface GridFSBucket
- Since:
- 3.1
-
Method Summary
Modifier and TypeMethodDescriptionvoid
delete
(ClientSession clientSession, BsonValue id) Given aid
, delete this stored file's files collection document and associated chunks from a GridFS bucket.void
delete
(ClientSession clientSession, ObjectId id) Given aid
, delete this stored file's files collection document and associated chunks from a GridFS bucket.void
Given aid
, delete this stored file's files collection document and associated chunks from a GridFS bucket.void
Given aid
, delete this stored file's files collection document and associated chunks from a GridFS bucket.void
downloadToStream
(ClientSession clientSession, String filename, OutputStream destination) Downloads the contents of the latest version of the stored file specified byfilename
and writes the contents to thedestination
Stream.void
downloadToStream
(ClientSession clientSession, String filename, OutputStream destination, GridFSDownloadOptions options) Downloads the contents of the stored file specified byfilename
and by the revision inoptions
and writes the contents to thedestination
Stream.void
downloadToStream
(ClientSession clientSession, BsonValue id, OutputStream destination) Downloads the contents of the stored file specified byid
and writes the contents to thedestination
Stream.void
downloadToStream
(ClientSession clientSession, ObjectId id, OutputStream destination) Downloads the contents of the stored file specified byid
and writes the contents to thedestination
Stream.void
downloadToStream
(String filename, OutputStream destination) Downloads the contents of the latest version of the stored file specified byfilename
and writes the contents to thedestination
Stream.void
downloadToStream
(String filename, OutputStream destination, GridFSDownloadOptions options) Downloads the contents of the stored file specified byfilename
and by the revision inoptions
and writes the contents to thedestination
Stream.void
downloadToStream
(BsonValue id, OutputStream destination) Downloads the contents of the stored file specified byid
and writes the contents to thedestination
Stream.void
downloadToStream
(ObjectId id, OutputStream destination) Downloads the contents of the stored file specified byid
and writes the contents to thedestination
Stream.void
drop()
Drops the data associated with this bucket from the database.void
drop
(ClientSession clientSession) Drops the data associated with this bucket from the database.find()
Finds all documents in the files collection.find
(ClientSession clientSession) Finds all documents in the files collection.find
(ClientSession clientSession, Bson filter) Finds all documents in the collection that match the filter.Finds all documents in the collection that match the filter.The bucket name.int
Sets the chunk size in bytes.Get the read concern for the GridFSBucket.Get the read preference for the GridFSBucket.Get the write concern for the GridFSBucket.openDownloadStream
(ClientSession clientSession, String filename) Opens a Stream from which the application can read the contents of the latest version of the stored file specified by thefilename
.openDownloadStream
(ClientSession clientSession, String filename, GridFSDownloadOptions options) Opens a Stream from which the application can read the contents of the stored file specified byfilename
and the revision inoptions
.openDownloadStream
(ClientSession clientSession, BsonValue id) Opens a Stream from which the application can read the contents of the stored file specified byid
.openDownloadStream
(ClientSession clientSession, ObjectId id) Opens a Stream from which the application can read the contents of the stored file specified byid
.openDownloadStream
(String filename) Opens a Stream from which the application can read the contents of the latest version of the stored file specified by thefilename
.openDownloadStream
(String filename, GridFSDownloadOptions options) Opens a Stream from which the application can read the contents of the stored file specified byfilename
and the revision inoptions
.Opens a Stream from which the application can read the contents of the stored file specified byid
.Opens a Stream from which the application can read the contents of the stored file specified byid
.openUploadStream
(ClientSession clientSession, String filename) Opens a Stream that the application can write the contents of the file to.openUploadStream
(ClientSession clientSession, String filename, GridFSUploadOptions options) Opens a Stream that the application can write the contents of the file to.openUploadStream
(ClientSession clientSession, BsonValue id, String filename) Opens a Stream that the application can write the contents of the file to.openUploadStream
(ClientSession clientSession, BsonValue id, String filename, GridFSUploadOptions options) Opens a Stream that the application can write the contents of the file to.openUploadStream
(ClientSession clientSession, ObjectId id, String filename) Opens a Stream that the application can write the contents of the file to.openUploadStream
(String filename) Opens a Stream that the application can write the contents of the file to.openUploadStream
(String filename, GridFSUploadOptions options) Opens a Stream that the application can write the contents of the file to.openUploadStream
(BsonValue id, String filename) Opens a Stream that the application can write the contents of the file to.openUploadStream
(BsonValue id, String filename, GridFSUploadOptions options) Opens a Stream that the application can write the contents of the file to.void
rename
(ClientSession clientSession, BsonValue id, String newFilename) Renames the stored file with the specifiedid
.void
rename
(ClientSession clientSession, ObjectId id, String newFilename) Renames the stored file with the specifiedid
.void
Renames the stored file with the specifiedid
.void
Renames the stored file with the specifiedid
.uploadFromStream
(ClientSession clientSession, String filename, InputStream source) Uploads the contents of the givenInputStream
to a GridFS bucket.uploadFromStream
(ClientSession clientSession, String filename, InputStream source, GridFSUploadOptions options) Uploads the contents of the givenInputStream
to a GridFS bucket.void
uploadFromStream
(ClientSession clientSession, BsonValue id, String filename, InputStream source) Uploads the contents of the givenInputStream
to a GridFS bucket.void
uploadFromStream
(ClientSession clientSession, BsonValue id, String filename, InputStream source, GridFSUploadOptions options) Uploads the contents of the givenInputStream
to a GridFS bucket.uploadFromStream
(String filename, InputStream source) Uploads the contents of the givenInputStream
to a GridFS bucket.uploadFromStream
(String filename, InputStream source, GridFSUploadOptions options) Uploads the contents of the givenInputStream
to a GridFS bucket.void
uploadFromStream
(BsonValue id, String filename, InputStream source) Uploads the contents of the givenInputStream
to a GridFS bucket.void
uploadFromStream
(BsonValue id, String filename, InputStream source, GridFSUploadOptions options) Uploads the contents of the givenInputStream
to a GridFS bucket.withChunkSizeBytes
(int chunkSizeBytes) Create a new GridFSBucket instance with a new chunk size in bytes.withReadConcern
(ReadConcern readConcern) Create a new GridFSBucket instance with a different read concern.withReadPreference
(ReadPreference readPreference) Create a new GridFSBucket instance with a different read preference.withWriteConcern
(WriteConcern writeConcern) Create a new GridFSBucket instance with a different write concern.
-
Method Details
-
getBucketName
String getBucketName()The bucket name.- Returns:
- the bucket name
-
getChunkSizeBytes
int getChunkSizeBytes()Sets the chunk size in bytes. Defaults to 255.- Returns:
- the chunk size in bytes.
-
getWriteConcern
WriteConcern getWriteConcern()Get the write concern for the GridFSBucket.- Returns:
- the
WriteConcern
-
getReadPreference
ReadPreference getReadPreference()Get the read preference for the GridFSBucket.- Returns:
- the
ReadPreference
-
getReadConcern
ReadConcern getReadConcern()Get the read concern for the GridFSBucket.- Returns:
- the
ReadConcern
- Since:
- 3.2
- MongoDB documentation
- Read Concern
- Since server release
- 3.2
-
withChunkSizeBytes
Create a new GridFSBucket instance with a new chunk size in bytes.- Parameters:
chunkSizeBytes
- the new chunk size in bytes.- Returns:
- a new GridFSBucket instance with the different chunk size in bytes
-
withReadPreference
Create a new GridFSBucket instance with a different read preference.- Parameters:
readPreference
- the newReadPreference
for the GridFSBucket- Returns:
- a new GridFSBucket instance with the different readPreference
-
withWriteConcern
Create a new GridFSBucket instance with a different write concern.- Parameters:
writeConcern
- the newWriteConcern
for the GridFSBucket- Returns:
- a new GridFSBucket instance with the different writeConcern
-
withReadConcern
Create a new GridFSBucket instance with a different read concern.- Parameters:
readConcern
- the newReadConcern
for the GridFSBucket- Returns:
- a new GridFSBucket instance with the different ReadConcern
- Since:
- 3.2
- MongoDB documentation
- Read Concern
- Since server release
- 3.2
-
openUploadStream
Opens a Stream that the application can write the contents of the file to.As the application writes the contents to the returned Stream, the contents are uploaded as chunks in the chunks collection. When the application signals it is done writing the contents of the file by calling close on the returned Stream, a files collection document is created in the files collection.
- Parameters:
filename
- the filename for the stream- Returns:
- the GridFSUploadStream that provides the ObjectId for the file to be uploaded and the Stream to which the application will write the contents.
-
openUploadStream
Opens a Stream that the application can write the contents of the file to.As the application writes the contents to the returned Stream, the contents are uploaded as chunks in the chunks collection. When the application signals it is done writing the contents of the file by calling close on the returned Stream, a files collection document is created in the files collection.
- Parameters:
filename
- the filename for the streamoptions
- the GridFSUploadOptions- Returns:
- the GridFSUploadStream that provides the ObjectId for the file to be uploaded and the Stream to which the application will write the contents.
-
openUploadStream
Opens a Stream that the application can write the contents of the file to.As the application writes the contents to the returned Stream, the contents are uploaded as chunks in the chunks collection. When the application signals it is done writing the contents of the file by calling close on the returned Stream, a files collection document is created in the files collection.
- Parameters:
id
- the custom id value of the filefilename
- the filename for the stream- Returns:
- the GridFSUploadStream that provides the ObjectId for the file to be uploaded and the Stream to which the application will write the contents.
- Since:
- 3.3
-
openUploadStream
Opens a Stream that the application can write the contents of the file to.As the application writes the contents to the returned Stream, the contents are uploaded as chunks in the chunks collection. When the application signals it is done writing the contents of the file by calling close on the returned Stream, a files collection document is created in the files collection.
- Parameters:
id
- the custom id value of the filefilename
- the filename for the streamoptions
- the GridFSUploadOptions- Returns:
- the GridFSUploadStream that includes the _id for the file to be uploaded and the Stream to which the application will write the contents.
- Since:
- 3.3
-
openUploadStream
Opens a Stream that the application can write the contents of the file to.As the application writes the contents to the returned Stream, the contents are uploaded as chunks in the chunks collection. When the application signals it is done writing the contents of the file by calling close on the returned Stream, a files collection document is created in the files collection.
- Parameters:
clientSession
- the client session with which to associate this operationfilename
- the filename for the stream- Returns:
- the GridFSUploadStream that provides the ObjectId for the file to be uploaded and the Stream to which the application will write the contents.
- Since:
- 3.6
- Since server release
- 3.6
-
openUploadStream
GridFSUploadStream openUploadStream(ClientSession clientSession, String filename, GridFSUploadOptions options) Opens a Stream that the application can write the contents of the file to.As the application writes the contents to the returned Stream, the contents are uploaded as chunks in the chunks collection. When the application signals it is done writing the contents of the file by calling close on the returned Stream, a files collection document is created in the files collection.
- Parameters:
clientSession
- the client session with which to associate this operationfilename
- the filename for the streamoptions
- the GridFSUploadOptions- Returns:
- the GridFSUploadStream that provides the ObjectId for the file to be uploaded and the Stream to which the application will write the contents.
- Since:
- 3.6
- Since server release
- 3.6
-
openUploadStream
Opens a Stream that the application can write the contents of the file to.As the application writes the contents to the returned Stream, the contents are uploaded as chunks in the chunks collection. When the application signals it is done writing the contents of the file by calling close on the returned Stream, a files collection document is created in the files collection.
- Parameters:
clientSession
- the client session with which to associate this operationid
- the custom id value of the filefilename
- the filename for the stream- Returns:
- the GridFSUploadStream that provides the ObjectId for the file to be uploaded and the Stream to which the application will write the contents.
- Since:
- 3.6
- Since server release
- 3.6
-
openUploadStream
Opens a Stream that the application can write the contents of the file to.As the application writes the contents to the returned Stream, the contents are uploaded as chunks in the chunks collection. When the application signals it is done writing the contents of the file by calling close on the returned Stream, a files collection document is created in the files collection.
- Parameters:
clientSession
- the client session with which to associate this operationid
- the custom id value of the filefilename
- the filename for the stream- Returns:
- the GridFSUploadStream that provides the ObjectId for the file to be uploaded and the Stream to which the application will write the contents.
- Since:
- 3.6
- Since server release
- 3.6
-
openUploadStream
GridFSUploadStream openUploadStream(ClientSession clientSession, BsonValue id, String filename, GridFSUploadOptions options) Opens a Stream that the application can write the contents of the file to.As the application writes the contents to the returned Stream, the contents are uploaded as chunks in the chunks collection. When the application signals it is done writing the contents of the file by calling close on the returned Stream, a files collection document is created in the files collection.
- Parameters:
clientSession
- the client session with which to associate this operationid
- the custom id value of the filefilename
- the filename for the streamoptions
- the GridFSUploadOptions- Returns:
- the GridFSUploadStream that includes the _id for the file to be uploaded and the Stream to which the application will write the contents.
- Since:
- 3.6
- Since server release
- 3.6
-
uploadFromStream
Uploads the contents of the givenInputStream
to a GridFS bucket.Reads the contents of the user file from the
Stream
and uploads it as chunks in the chunks collection. After all the chunks have been uploaded, it creates a files collection document forfilename
in the files collection.- Parameters:
filename
- the filename for the streamsource
- the Stream providing the file data- Returns:
- the ObjectId of the uploaded file.
-
uploadFromStream
Uploads the contents of the givenInputStream
to a GridFS bucket.Reads the contents of the user file from the
Stream
and uploads it as chunks in the chunks collection. After all the chunks have been uploaded, it creates a files collection document forfilename
in the files collection.- Parameters:
filename
- the filename for the streamsource
- the Stream providing the file dataoptions
- the GridFSUploadOptions- Returns:
- the ObjectId of the uploaded file.
-
uploadFromStream
Uploads the contents of the givenInputStream
to a GridFS bucket.Reads the contents of the user file from the
Stream
and uploads it as chunks in the chunks collection. After all the chunks have been uploaded, it creates a files collection document forfilename
in the files collection.- Parameters:
id
- the custom id value of the filefilename
- the filename for the streamsource
- the Stream providing the file data- Since:
- 3.3
-
uploadFromStream
void uploadFromStream(BsonValue id, String filename, InputStream source, GridFSUploadOptions options) Uploads the contents of the givenInputStream
to a GridFS bucket.Reads the contents of the user file from the
Stream
and uploads it as chunks in the chunks collection. After all the chunks have been uploaded, it creates a files collection document forfilename
in the files collection.- Parameters:
id
- the custom id value of the filefilename
- the filename for the streamsource
- the Stream providing the file dataoptions
- the GridFSUploadOptions- Since:
- 3.3
-
uploadFromStream
Uploads the contents of the givenInputStream
to a GridFS bucket.Reads the contents of the user file from the
Stream
and uploads it as chunks in the chunks collection. After all the chunks have been uploaded, it creates a files collection document forfilename
in the files collection.- Parameters:
clientSession
- the client session with which to associate this operationfilename
- the filename for the streamsource
- the Stream providing the file data- Returns:
- the ObjectId of the uploaded file.
- Since:
- 3.6
- Since server release
- 3.6
-
uploadFromStream
ObjectId uploadFromStream(ClientSession clientSession, String filename, InputStream source, GridFSUploadOptions options) Uploads the contents of the givenInputStream
to a GridFS bucket.Reads the contents of the user file from the
Stream
and uploads it as chunks in the chunks collection. After all the chunks have been uploaded, it creates a files collection document forfilename
in the files collection.- Parameters:
clientSession
- the client session with which to associate this operationfilename
- the filename for the streamsource
- the Stream providing the file dataoptions
- the GridFSUploadOptions- Returns:
- the ObjectId of the uploaded file.
- Since:
- 3.6
- Since server release
- 3.6
-
uploadFromStream
void uploadFromStream(ClientSession clientSession, BsonValue id, String filename, InputStream source) Uploads the contents of the givenInputStream
to a GridFS bucket.Reads the contents of the user file from the
Stream
and uploads it as chunks in the chunks collection. After all the chunks have been uploaded, it creates a files collection document forfilename
in the files collection.- Parameters:
clientSession
- the client session with which to associate this operationid
- the custom id value of the filefilename
- the filename for the streamsource
- the Stream providing the file data- Since:
- 3.6
- Since server release
- 3.6
-
uploadFromStream
void uploadFromStream(ClientSession clientSession, BsonValue id, String filename, InputStream source, GridFSUploadOptions options) Uploads the contents of the givenInputStream
to a GridFS bucket.Reads the contents of the user file from the
Stream
and uploads it as chunks in the chunks collection. After all the chunks have been uploaded, it creates a files collection document forfilename
in the files collection.- Parameters:
clientSession
- the client session with which to associate this operationid
- the custom id value of the filefilename
- the filename for the streamsource
- the Stream providing the file dataoptions
- the GridFSUploadOptions- Since:
- 3.6
- Since server release
- 3.6
-
openDownloadStream
Opens a Stream from which the application can read the contents of the stored file specified byid
.- Parameters:
id
- the ObjectId of the file to be put into a stream.- Returns:
- the stream
-
openDownloadStream
Opens a Stream from which the application can read the contents of the stored file specified byid
.- Parameters:
id
- the custom id value of the file, to be put into a stream.- Returns:
- the stream
-
openDownloadStream
Opens a Stream from which the application can read the contents of the latest version of the stored file specified by thefilename
.- Parameters:
filename
- the name of the file to be downloaded- Returns:
- the stream
- Since:
- 3.3
-
openDownloadStream
Opens a Stream from which the application can read the contents of the stored file specified byfilename
and the revision inoptions
.- Parameters:
filename
- the name of the file to be downloadedoptions
- the download options- Returns:
- the stream
- Since:
- 3.3
-
openDownloadStream
Opens a Stream from which the application can read the contents of the stored file specified byid
.- Parameters:
clientSession
- the client session with which to associate this operationid
- the ObjectId of the file to be put into a stream.- Returns:
- the stream
- Since:
- 3.6
- Since server release
- 3.6
-
openDownloadStream
Opens a Stream from which the application can read the contents of the stored file specified byid
.- Parameters:
clientSession
- the client session with which to associate this operationid
- the custom id value of the file, to be put into a stream.- Returns:
- the stream
- Since:
- 3.6
- Since server release
- 3.6
-
openDownloadStream
Opens a Stream from which the application can read the contents of the latest version of the stored file specified by thefilename
.- Parameters:
clientSession
- the client session with which to associate this operationfilename
- the name of the file to be downloaded- Returns:
- the stream
- Since:
- 3.6
- Since server release
- 3.6
-
openDownloadStream
GridFSDownloadStream openDownloadStream(ClientSession clientSession, String filename, GridFSDownloadOptions options) Opens a Stream from which the application can read the contents of the stored file specified byfilename
and the revision inoptions
.- Parameters:
clientSession
- the client session with which to associate this operationfilename
- the name of the file to be downloadedoptions
- the download options- Returns:
- the stream
- Since:
- 3.6
- Since server release
- 3.6
-
downloadToStream
Downloads the contents of the stored file specified byid
and writes the contents to thedestination
Stream.- Parameters:
id
- the ObjectId of the file to be written to the destination streamdestination
- the destination stream. ItsOutputStream.flush()
is not guaranteed to be called by this method.
-
downloadToStream
Downloads the contents of the stored file specified byid
and writes the contents to thedestination
Stream.- Parameters:
id
- the custom id of the file, to be written to the destination streamdestination
- the destination stream. ItsOutputStream.flush()
is not guaranteed to be called by this method.
-
downloadToStream
Downloads the contents of the latest version of the stored file specified byfilename
and writes the contents to thedestination
Stream.- Parameters:
filename
- the name of the file to be downloadeddestination
- the destination stream. ItsOutputStream.flush()
is not guaranteed to be called by this method.- Since:
- 3.3
-
downloadToStream
Downloads the contents of the stored file specified byfilename
and by the revision inoptions
and writes the contents to thedestination
Stream.- Parameters:
filename
- the name of the file to be downloadeddestination
- the destination streamoptions
- the download options. ItsOutputStream.flush()
is not guaranteed to be called by this method.- Since:
- 3.3
-
downloadToStream
Downloads the contents of the stored file specified byid
and writes the contents to thedestination
Stream.- Parameters:
clientSession
- the client session with which to associate this operationid
- the ObjectId of the file to be written to the destination streamdestination
- the destination stream. ItsOutputStream.flush()
is not guaranteed to be called by this method.- Since:
- 3.6
- Since server release
- 3.6
-
downloadToStream
Downloads the contents of the stored file specified byid
and writes the contents to thedestination
Stream.- Parameters:
clientSession
- the client session with which to associate this operationid
- the custom id of the file, to be written to the destination streamdestination
- the destination stream. ItsOutputStream.flush()
is not guaranteed to be called by this method.- Since:
- 3.6
- Since server release
- 3.6
-
downloadToStream
Downloads the contents of the latest version of the stored file specified byfilename
and writes the contents to thedestination
Stream.- Parameters:
clientSession
- the client session with which to associate this operationfilename
- the name of the file to be downloadeddestination
- the destination stream. ItsOutputStream.flush()
is not guaranteed to be called by this method.- Since:
- 3.6
- Since server release
- 3.6
-
downloadToStream
void downloadToStream(ClientSession clientSession, String filename, OutputStream destination, GridFSDownloadOptions options) Downloads the contents of the stored file specified byfilename
and by the revision inoptions
and writes the contents to thedestination
Stream.- Parameters:
clientSession
- the client session with which to associate this operationfilename
- the name of the file to be downloadeddestination
- the destination stream. ItsOutputStream.flush()
is not guaranteed to be called by this method.options
- the download options- Since:
- 3.6
- Since server release
- 3.6
-
find
GridFSFindIterable find()Finds all documents in the files collection.- Returns:
- the GridFS find iterable interface
- MongoDB documentation
- Find
-
find
Finds all documents in the collection that match the filter.Below is an example of filtering against the filename and some nested metadata that can also be stored along with the file data:
Filters.and(Filters.eq("filename", "mongodb.png"), Filters.eq("metadata.contentType", "image/png"));
- Parameters:
filter
- the query filter- Returns:
- the GridFS find iterable interface
- See Also:
-
find
Finds all documents in the files collection. -
find
Finds all documents in the collection that match the filter.Below is an example of filtering against the filename and some nested metadata that can also be stored along with the file data:
Filters.and(Filters.eq("filename", "mongodb.png"), Filters.eq("metadata.contentType", "image/png"));
-
delete
Given aid
, delete this stored file's files collection document and associated chunks from a GridFS bucket.- Parameters:
id
- the ObjectId of the file to be deleted
-
delete
Given aid
, delete this stored file's files collection document and associated chunks from a GridFS bucket.- Parameters:
id
- the id of the file to be deleted- Since:
- 3.3
-
delete
Given aid
, delete this stored file's files collection document and associated chunks from a GridFS bucket.- Parameters:
clientSession
- the client session with which to associate this operationid
- the ObjectId of the file to be deleted- Since:
- 3.6
- Since server release
- 3.6
-
delete
Given aid
, delete this stored file's files collection document and associated chunks from a GridFS bucket.- Parameters:
clientSession
- the client session with which to associate this operationid
- the id of the file to be deleted- Since:
- 3.6
- Since server release
- 3.6
-
rename
Renames the stored file with the specifiedid
.- Parameters:
id
- the id of the file in the files collection to renamenewFilename
- the new filename for the file
-
rename
Renames the stored file with the specifiedid
.- Parameters:
id
- the id of the file in the files collection to renamenewFilename
- the new filename for the file- Since:
- 3.3
-
rename
Renames the stored file with the specifiedid
.- Parameters:
clientSession
- the client session with which to associate this operationid
- the id of the file in the files collection to renamenewFilename
- the new filename for the file- Since:
- 3.6
- Since server release
- 3.6
-
rename
Renames the stored file with the specifiedid
.- Parameters:
clientSession
- the client session with which to associate this operationid
- the id of the file in the files collection to renamenewFilename
- the new filename for the file- Since:
- 3.6
- Since server release
- 3.6
-
drop
void drop()Drops the data associated with this bucket from the database. -
drop
Drops the data associated with this bucket from the database.- Parameters:
clientSession
- the client session with which to associate this operation- Since:
- 3.6
- Since server release
- 3.6
-