@ThreadSafe public interface GridFSBucket
Modifier and Type | Method | Description |
---|---|---|
void |
delete(ClientSession clientSession,
BsonValue id,
SingleResultCallback<Void> callback) |
Given a
id , delete this stored file's files collection document and associated chunks from a GridFS bucket. |
void |
delete(ClientSession clientSession,
ObjectId id,
SingleResultCallback<Void> callback) |
Given a
id , delete this stored file's files collection document and associated chunks from a GridFS bucket. |
void |
delete(BsonValue id,
SingleResultCallback<Void> callback) |
Given a
id , delete this stored file's files collection document and associated chunks from a GridFS bucket. |
void |
delete(ObjectId id,
SingleResultCallback<Void> callback) |
Given a
id , delete this stored file's files collection document and associated chunks from a GridFS bucket. |
void |
downloadToStream(ClientSession clientSession,
String filename,
AsyncOutputStream destination,
SingleResultCallback<Long> callback) |
Downloads the contents of the latest version of the stored file specified by
filename and writes the contents to
the destination Stream. |
void |
downloadToStream(ClientSession clientSession,
String filename,
AsyncOutputStream destination,
GridFSDownloadOptions options,
SingleResultCallback<Long> callback) |
Downloads the contents of the stored file specified by
filename and by the revision in options and writes the
contents to the destination Stream. |
void |
downloadToStream(ClientSession clientSession,
BsonValue id,
AsyncOutputStream destination,
SingleResultCallback<Long> callback) |
Downloads the contents of the stored file specified by
id and writes the contents to the destination
AsyncOutputStream. |
void |
downloadToStream(ClientSession clientSession,
ObjectId id,
AsyncOutputStream destination,
SingleResultCallback<Long> callback) |
Downloads the contents of the stored file specified by
id and writes the contents to the destination
AsyncOutputStream. |
void |
downloadToStream(String filename,
AsyncOutputStream destination,
SingleResultCallback<Long> callback) |
Downloads the contents of the latest version of the stored file specified by
filename and writes the contents to
the destination Stream. |
void |
downloadToStream(String filename,
AsyncOutputStream destination,
GridFSDownloadOptions options,
SingleResultCallback<Long> callback) |
Downloads the contents of the stored file specified by
filename and by the revision in options and writes the
contents to the destination Stream. |
void |
downloadToStream(BsonValue id,
AsyncOutputStream destination,
SingleResultCallback<Long> callback) |
Downloads the contents of the stored file specified by
id and writes the contents to the destination
AsyncOutputStream. |
void |
downloadToStream(ObjectId id,
AsyncOutputStream destination,
SingleResultCallback<Long> callback) |
Downloads the contents of the stored file specified by
id and writes the contents to the destination
AsyncOutputStream. |
void |
drop(SingleResultCallback<Void> callback) |
Drops the data associated with this bucket from the database.
|
void |
drop(ClientSession clientSession,
SingleResultCallback<Void> callback) |
Drops the data associated with this bucket from the database.
|
GridFSFindIterable |
find() |
Finds all documents in the files collection.
|
GridFSFindIterable |
find(ClientSession clientSession) |
Finds all documents in the files collection.
|
GridFSFindIterable |
find(ClientSession clientSession,
Bson filter) |
Finds all documents in the collection that match the filter.
|
GridFSFindIterable |
find(Bson filter) |
Finds all documents in the collection that match the filter.
|
String |
getBucketName() |
The bucket name.
|
int |
getChunkSizeBytes() |
Sets the chunk size in bytes.
|
ReadConcern |
getReadConcern() |
Get the read concern for the GridFSBucket.
|
ReadPreference |
getReadPreference() |
Get the read preference for the GridFSBucket.
|
WriteConcern |
getWriteConcern() |
Get the write concern for the GridFSBucket.
|
GridFSDownloadStream |
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 the
filename . |
GridFSDownloadStream |
openDownloadStream(ClientSession clientSession,
String filename,
GridFSDownloadOptions options) |
Opens a Stream from which the application can read the contents of the stored file specified by
filename and the revision
in options . |
GridFSDownloadStream |
openDownloadStream(ClientSession clientSession,
BsonValue id) |
Opens a AsyncInputStream from which the application can read the contents of the stored file specified by
id . |
GridFSDownloadStream |
openDownloadStream(ClientSession clientSession,
ObjectId id) |
Opens a AsyncInputStream from which the application can read the contents of the stored file specified by
id . |
GridFSDownloadStream |
openDownloadStream(String filename) |
Opens a Stream from which the application can read the contents of the latest version of the stored file specified by the
filename . |
GridFSDownloadStream |
openDownloadStream(String filename,
GridFSDownloadOptions options) |
Opens a Stream from which the application can read the contents of the stored file specified by
filename and the revision
in options . |
GridFSDownloadStream |
openDownloadStream(BsonValue id) |
Opens a AsyncInputStream from which the application can read the contents of the stored file specified by
id . |
GridFSDownloadStream |
openDownloadStream(ObjectId id) |
Opens a AsyncInputStream from which the application can read the contents of the stored file specified by
id . |
GridFSUploadStream |
openUploadStream(ClientSession clientSession,
String filename) |
Opens a AsyncOutputStream that the application can write the contents of the file to.
|
GridFSUploadStream |
openUploadStream(ClientSession clientSession,
String filename,
GridFSUploadOptions options) |
Opens a AsyncOutputStream that the application can write the contents of the file to.
|
GridFSUploadStream |
openUploadStream(ClientSession clientSession,
BsonValue id,
String filename) |
Opens a AsyncOutputStream that the application can write the contents of the file to.
|
GridFSUploadStream |
openUploadStream(ClientSession clientSession,
BsonValue id,
String filename,
GridFSUploadOptions options) |
Opens a AsyncOutputStream that the application can write the contents of the file to.
|
GridFSUploadStream |
openUploadStream(String filename) |
Opens a AsyncOutputStream that the application can write the contents of the file to.
|
GridFSUploadStream |
openUploadStream(String filename,
GridFSUploadOptions options) |
Opens a AsyncOutputStream that the application can write the contents of the file to.
|
GridFSUploadStream |
openUploadStream(BsonValue id,
String filename) |
Opens a AsyncOutputStream that the application can write the contents of the file to.
|
GridFSUploadStream |
openUploadStream(BsonValue id,
String filename,
GridFSUploadOptions options) |
Opens a AsyncOutputStream that the application can write the contents of the file to.
|
void |
rename(ClientSession clientSession,
BsonValue id,
String newFilename,
SingleResultCallback<Void> callback) |
Renames the stored file with the specified
id . |
void |
rename(ClientSession clientSession,
ObjectId id,
String newFilename,
SingleResultCallback<Void> callback) |
Renames the stored file with the specified
id . |
void |
rename(BsonValue id,
String newFilename,
SingleResultCallback<Void> callback) |
Renames the stored file with the specified
id . |
void |
rename(ObjectId id,
String newFilename,
SingleResultCallback<Void> callback) |
Renames the stored file with the specified
id . |
void |
uploadFromStream(ClientSession clientSession,
String filename,
AsyncInputStream source,
SingleResultCallback<ObjectId> callback) |
Uploads the contents of the given
AsyncInputStream to a GridFS bucket. |
void |
uploadFromStream(ClientSession clientSession,
String filename,
AsyncInputStream source,
GridFSUploadOptions options,
SingleResultCallback<ObjectId> callback) |
Uploads the contents of the given
AsyncInputStream to a GridFS bucket. |
void |
uploadFromStream(ClientSession clientSession,
BsonValue id,
String filename,
AsyncInputStream source,
SingleResultCallback<Void> callback) |
Uploads the contents of the given
AsyncInputStream to a GridFS bucket. |
void |
uploadFromStream(ClientSession clientSession,
BsonValue id,
String filename,
AsyncInputStream source,
GridFSUploadOptions options,
SingleResultCallback<Void> callback) |
Uploads the contents of the given
AsyncInputStream to a GridFS bucket. |
void |
uploadFromStream(String filename,
AsyncInputStream source,
SingleResultCallback<ObjectId> callback) |
Uploads the contents of the given
AsyncInputStream to a GridFS bucket. |
void |
uploadFromStream(String filename,
AsyncInputStream source,
GridFSUploadOptions options,
SingleResultCallback<ObjectId> callback) |
Uploads the contents of the given
AsyncInputStream to a GridFS bucket. |
void |
uploadFromStream(BsonValue id,
String filename,
AsyncInputStream source,
SingleResultCallback<Void> callback) |
Uploads the contents of the given
AsyncInputStream to a GridFS bucket. |
void |
uploadFromStream(BsonValue id,
String filename,
AsyncInputStream source,
GridFSUploadOptions options,
SingleResultCallback<Void> callback) |
Uploads the contents of the given
AsyncInputStream to a GridFS bucket. |
GridFSBucket |
withChunkSizeBytes(int chunkSizeBytes) |
Create a new GridFSBucket instance with a new chunk size in bytes.
|
GridFSBucket |
withReadConcern(ReadConcern readConcern) |
Create a new MongoDatabase instance with a different read concern.
|
GridFSBucket |
withReadPreference(ReadPreference readPreference) |
Create a new GridFSBucket instance with a different read preference.
|
GridFSBucket |
withWriteConcern(WriteConcern writeConcern) |
Create a new GridFSBucket instance with a different write concern.
|
String getBucketName()
int getChunkSizeBytes()
WriteConcern getWriteConcern()
WriteConcern
ReadPreference getReadPreference()
ReadPreference
ReadConcern getReadConcern()
ReadConcern
GridFSBucket withChunkSizeBytes(int chunkSizeBytes)
chunkSizeBytes
- the new chunk size in bytes.GridFSBucket withReadPreference(ReadPreference readPreference)
readPreference
- the new ReadPreference
for the databaseGridFSBucket withWriteConcern(WriteConcern writeConcern)
writeConcern
- the new WriteConcern
for the databaseGridFSBucket withReadConcern(ReadConcern readConcern)
readConcern
- the new ReadConcern
for the databaseGridFSUploadStream openUploadStream(String filename)
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.
filename
- the filename for the streamGridFSUploadStream openUploadStream(String filename, GridFSUploadOptions options)
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.
filename
- the filename for the streamoptions
- the GridFSUploadOptionsGridFSUploadStream openUploadStream(BsonValue id, String filename)
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.
id
- the custom id value of the filefilename
- the filename for the streamGridFSUploadStream openUploadStream(BsonValue id, String filename, GridFSUploadOptions options)
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.
id
- the custom id value of the filefilename
- the filename for the streamoptions
- the GridFSUploadOptionsGridFSUploadStream openUploadStream(ClientSession clientSession, String filename)
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.
clientSession
- the client session with which to associate this operationfilename
- the filename for the streamGridFSUploadStream openUploadStream(ClientSession clientSession, String filename, GridFSUploadOptions options)
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.
clientSession
- the client session with which to associate this operationfilename
- the filename for the streamoptions
- the GridFSUploadOptionsGridFSUploadStream openUploadStream(ClientSession clientSession, BsonValue id, String filename)
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.
clientSession
- the client session with which to associate this operationid
- the custom id value of the filefilename
- the filename for the streamGridFSUploadStream openUploadStream(ClientSession clientSession, BsonValue id, String filename, GridFSUploadOptions options)
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.
clientSession
- the client session with which to associate this operationid
- the custom id value of the filefilename
- the filename for the streamoptions
- the GridFSUploadOptionsvoid uploadFromStream(String filename, AsyncInputStream source, SingleResultCallback<ObjectId> callback)
AsyncInputStream
to a GridFS bucket.
Reads the contents of the user file from the source
and uploads it as chunks in the chunks collection. After all the
chunks have been uploaded, it creates a files collection document for filename
in the files collection.
filename
- the filename for the streamsource
- the Stream providing the file datacallback
- with the ObjectId of the uploaded file.void uploadFromStream(String filename, AsyncInputStream source, GridFSUploadOptions options, SingleResultCallback<ObjectId> callback)
AsyncInputStream
to a GridFS bucket.
Reads the contents of the user file from the source
and uploads it as chunks in the chunks collection. After all the
chunks have been uploaded, it creates a files collection document for filename
in the files collection.
filename
- the filename for the streamsource
- the Stream providing the file dataoptions
- the GridFSUploadOptionscallback
- with the ObjectId of the uploaded file.void uploadFromStream(BsonValue id, String filename, AsyncInputStream source, SingleResultCallback<Void> callback)
AsyncInputStream
to a GridFS bucket.
Reads the contents of the user file from the source
and uploads it as chunks in the chunks collection. After all the
chunks have been uploaded, it creates a files collection document for filename
in the files collection.
id
- the custom id value of the filefilename
- the filename for the streamsource
- the Stream providing the file datacallback
- with the ObjectId of the uploaded file.void uploadFromStream(BsonValue id, String filename, AsyncInputStream source, GridFSUploadOptions options, SingleResultCallback<Void> callback)
AsyncInputStream
to a GridFS bucket.
Reads the contents of the user file from the source
and uploads it as chunks in the chunks collection. After all the
chunks have been uploaded, it creates a files collection document for filename
in the files collection.
id
- the custom id value of the filefilename
- the filename for the streamsource
- the Stream providing the file dataoptions
- the GridFSUploadOptionscallback
- with the ObjectId of the uploaded file.void uploadFromStream(ClientSession clientSession, String filename, AsyncInputStream source, SingleResultCallback<ObjectId> callback)
AsyncInputStream
to a GridFS bucket.
Reads the contents of the user file from the source
and uploads it as chunks in the chunks collection. After all the
chunks have been uploaded, it creates a files collection document for filename
in the files collection.
clientSession
- the client session with which to associate this operationfilename
- the filename for the streamsource
- the Stream providing the file datacallback
- with the ObjectId of the uploaded file.void uploadFromStream(ClientSession clientSession, String filename, AsyncInputStream source, GridFSUploadOptions options, SingleResultCallback<ObjectId> callback)
AsyncInputStream
to a GridFS bucket.
Reads the contents of the user file from the source
and uploads it as chunks in the chunks collection. After all the
chunks have been uploaded, it creates a files collection document for filename
in the files collection.
clientSession
- the client session with which to associate this operationfilename
- the filename for the streamsource
- the Stream providing the file dataoptions
- the GridFSUploadOptionscallback
- with the ObjectId of the uploaded file.void uploadFromStream(ClientSession clientSession, BsonValue id, String filename, AsyncInputStream source, SingleResultCallback<Void> callback)
AsyncInputStream
to a GridFS bucket.
Reads the contents of the user file from the source
and uploads it as chunks in the chunks collection. After all the
chunks have been uploaded, it creates a files collection document for filename
in the files collection.
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 datacallback
- with the ObjectId of the uploaded file.void uploadFromStream(ClientSession clientSession, BsonValue id, String filename, AsyncInputStream source, GridFSUploadOptions options, SingleResultCallback<Void> callback)
AsyncInputStream
to a GridFS bucket.
Reads the contents of the user file from the source
and uploads it as chunks in the chunks collection. After all the
chunks have been uploaded, it creates a files collection document for filename
in the files collection.
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 GridFSUploadOptionscallback
- with the ObjectId of the uploaded file.GridFSDownloadStream openDownloadStream(ObjectId id)
id
.id
- the ObjectId of the file to be put into a stream.GridFSDownloadStream openDownloadStream(BsonValue id)
id
.id
- the custom id value of the file, to be put into a stream.GridFSDownloadStream openDownloadStream(String filename)
filename
.filename
- the name of the file to be downloadedGridFSDownloadStream openDownloadStream(String filename, GridFSDownloadOptions options)
filename
and the revision
in options
.filename
- the name of the file to be downloadedoptions
- the download optionsGridFSDownloadStream openDownloadStream(ClientSession clientSession, ObjectId id)
id
.clientSession
- the client session with which to associate this operationid
- the ObjectId of the file to be put into a stream.GridFSDownloadStream openDownloadStream(ClientSession clientSession, BsonValue id)
id
.clientSession
- the client session with which to associate this operationid
- the custom id value of the file, to be put into a stream.GridFSDownloadStream openDownloadStream(ClientSession clientSession, String filename)
filename
.clientSession
- the client session with which to associate this operationfilename
- the name of the file to be downloadedGridFSDownloadStream openDownloadStream(ClientSession clientSession, String filename, GridFSDownloadOptions options)
filename
and the revision
in options
.clientSession
- the client session with which to associate this operationfilename
- the name of the file to be downloadedoptions
- the download optionsvoid downloadToStream(ObjectId id, AsyncOutputStream destination, SingleResultCallback<Long> callback)
id
and writes the contents to the destination
AsyncOutputStream.id
- the ObjectId of the file to be written to the destination streamdestination
- the destination streamcallback
- the callback that is completed once the file has been downloadedvoid downloadToStream(BsonValue id, AsyncOutputStream destination, SingleResultCallback<Long> callback)
id
and writes the contents to the destination
AsyncOutputStream.id
- the custom id of the file, to be written to the destination streamdestination
- the destination streamcallback
- the callback that is completed once the file has been downloadedvoid downloadToStream(String filename, AsyncOutputStream destination, SingleResultCallback<Long> callback)
filename
and writes the contents to
the destination
Stream.filename
- the name of the file to be downloadeddestination
- the destination streamcallback
- the callback that is completed once the file has been downloadedvoid downloadToStream(String filename, AsyncOutputStream destination, GridFSDownloadOptions options, SingleResultCallback<Long> callback)
filename
and by the revision in options
and writes the
contents to the destination
Stream.filename
- the name of the file to be downloadeddestination
- the destination streamoptions
- the download optionscallback
- the callback that is completed once the file has been downloadedvoid downloadToStream(ClientSession clientSession, ObjectId id, AsyncOutputStream destination, SingleResultCallback<Long> callback)
id
and writes the contents to the destination
AsyncOutputStream.clientSession
- the client session with which to associate this operationid
- the ObjectId of the file to be written to the destination streamdestination
- the destination streamcallback
- the callback that is completed once the file has been downloadedvoid downloadToStream(ClientSession clientSession, BsonValue id, AsyncOutputStream destination, SingleResultCallback<Long> callback)
id
and writes the contents to the destination
AsyncOutputStream.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 streamcallback
- the callback that is completed once the file has been downloadedvoid downloadToStream(ClientSession clientSession, String filename, AsyncOutputStream destination, SingleResultCallback<Long> callback)
filename
and writes the contents to
the destination
Stream.clientSession
- the client session with which to associate this operationfilename
- the name of the file to be downloadeddestination
- the destination streamcallback
- the callback that is completed once the file has been downloadedvoid downloadToStream(ClientSession clientSession, String filename, AsyncOutputStream destination, GridFSDownloadOptions options, SingleResultCallback<Long> callback)
filename
and by the revision in options
and writes the
contents to the destination
Stream.clientSession
- the client session with which to associate this operationfilename
- the name of the file to be downloadeddestination
- the destination streamoptions
- the download optionscallback
- the callback that is completed once the file has been downloadedGridFSFindIterable find()
GridFSFindIterable find(Bson 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"));
filter
- the query filterFilters
GridFSFindIterable find(ClientSession clientSession)
GridFSFindIterable find(ClientSession clientSession, Bson 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"));
void delete(ObjectId id, SingleResultCallback<Void> callback)
id
, delete this stored file's files collection document and associated chunks from a GridFS bucket.id
- the ObjectId of the file to be deletedcallback
- the callback that is completed once the file has been deletedvoid delete(BsonValue id, SingleResultCallback<Void> callback)
id
, delete this stored file's files collection document and associated chunks from a GridFS bucket.id
- the ObjectId of the file to be deletedcallback
- the callback that is completed once the file has been deletedvoid delete(ClientSession clientSession, ObjectId id, SingleResultCallback<Void> callback)
id
, delete this stored file's files collection document and associated chunks from a GridFS bucket.clientSession
- the client session with which to associate this operationid
- the ObjectId of the file to be deletedcallback
- the callback that is completed once the file has been deletedvoid delete(ClientSession clientSession, BsonValue id, SingleResultCallback<Void> callback)
id
, delete this stored file's files collection document and associated chunks from a GridFS bucket.clientSession
- the client session with which to associate this operationid
- the ObjectId of the file to be deletedcallback
- the callback that is completed once the file has been deletedvoid rename(ObjectId id, String newFilename, SingleResultCallback<Void> callback)
id
.id
- the id of the file in the files collection to renamenewFilename
- the new filename for the filecallback
- the callback that is completed once the file has been renamedvoid rename(BsonValue id, String newFilename, SingleResultCallback<Void> callback)
id
.id
- the id of the file in the files collection to renamenewFilename
- the new filename for the filecallback
- the callback that is completed once the file has been renamedvoid rename(ClientSession clientSession, ObjectId id, String newFilename, SingleResultCallback<Void> callback)
id
.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 filecallback
- the callback that is completed once the file has been renamedvoid rename(ClientSession clientSession, BsonValue id, String newFilename, SingleResultCallback<Void> callback)
id
.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 filecallback
- the callback that is completed once the file has been renamedvoid drop(SingleResultCallback<Void> callback)
callback
- the callback that is completed once the collection has been droppedvoid drop(ClientSession clientSession, SingleResultCallback<Void> callback)
clientSession
- the client session with which to associate this operationcallback
- the callback that is completed once the collection has been dropped