@ParametersAreNonnullByDefault public final class BlobStoreAttachmentStore extends Object implements RemoteAttachmentStore
StreamAttachmentStore.Factory| Constructor and Description |
|---|
BlobStoreAttachmentStore(UniqueIdentifierGenerator uniqueIdentifierGenerator) |
| Modifier and Type | Method and Description |
|---|---|
com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> |
copyAttachment(AttachmentKey sourceAttachmentKey,
AttachmentKey newAttachmentKey)
Copies attachment identified by
oldAttachmentKey to be identified also by newAttachmentKey. |
com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> |
deleteAttachment(AttachmentKey attachmentKey)
Delete the attachment identified by provided attachmentKey.
|
com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> |
deleteBlob(String id) |
com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> |
deleteTemporaryAttachment(TemporaryAttachmentId temporaryAttachmentId)
Deletes temporary attachment created previously by
StreamAttachmentStore.putTemporaryAttachment(java.io.InputStream, long). |
com.atlassian.fugue.Option<ErrorCollection> |
errors()
Health status for this component.
|
com.atlassian.util.concurrent.Promise<Boolean> |
exists(AttachmentKey attachmentKey)
Checks if attachment exists.
|
<A> com.atlassian.util.concurrent.Promise<A> |
getAttachment(AttachmentKey attachmentKey,
com.atlassian.util.concurrent.Function<InputStream,A> inputStreamProcessor)
Retrieve data for a given attachment.
|
<A> com.atlassian.util.concurrent.Promise<A> |
getAttachmentData(AttachmentKey attachmentKey,
com.atlassian.util.concurrent.Function<AttachmentGetData,A> attachmentGetDataProcessor)
Retrieve data for a given attachment.
|
com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> |
moveAttachment(AttachmentKey oldAttachmentKey,
AttachmentKey newAttachmentKey)
Move attachment identified by
oldAttachmentKey to be identified by newAttachmentKey and will be not
reachable under oldAttachmentKey anymore. |
com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> |
moveTemporaryToAttachment(TemporaryAttachmentId temporaryAttachmentId,
AttachmentKey destinationKey)
Moving temporary attachment created by
StreamAttachmentStore.putTemporaryAttachment(java.io.InputStream, long) to real attachment. |
com.atlassian.util.concurrent.Promise<StoreAttachmentResult> |
putAttachment(StoreAttachmentBean storeAttachmentBean)
Store attachment data for a given attachment.
|
com.atlassian.util.concurrent.Promise<TemporaryAttachmentId> |
putTemporaryAttachment(InputStream inputStream,
long size)
Creates temporaryAttachment in store which can be later moved to attachment via
StreamAttachmentStore.moveTemporaryToAttachment(TemporaryAttachmentId, AttachmentKey) |
public BlobStoreAttachmentStore(UniqueIdentifierGenerator uniqueIdentifierGenerator)
@Nonnull public <A> com.atlassian.util.concurrent.Promise<A> getAttachment(AttachmentKey attachmentKey, com.atlassian.util.concurrent.Function<InputStream,A> inputStreamProcessor)
StreamAttachmentStoregetAttachment in interface StreamAttachmentStoreA - The class that the inputStreamProcessor returns when run.attachmentKey - The key of attachment used to identify attachment datainputStreamProcessor - Function that processes the attachment data.AttachmentRuntimeException in case of error.public <A> com.atlassian.util.concurrent.Promise<A> getAttachmentData(AttachmentKey attachmentKey, com.atlassian.util.concurrent.Function<AttachmentGetData,A> attachmentGetDataProcessor)
StreamAttachmentStoregetAttachmentData in interface StreamAttachmentStoreA - The class that the attachmentGetDataProcessor returns when run.attachmentKey - The key of attachment used to identify attachment dataattachmentGetDataProcessor - Function that processes the attachment data.AttachmentRuntimeException in case of error.@Nonnull public com.atlassian.util.concurrent.Promise<StoreAttachmentResult> putAttachment(@Nonnull StoreAttachmentBean storeAttachmentBean)
StreamAttachmentStoreputAttachment in interface StreamAttachmentStorestoreAttachmentBean - attachment metadata, used to determine the logical key under which to store the
attachment dataAttachmentRuntimeException in case of error.@Nonnull public com.atlassian.util.concurrent.Promise<Boolean> exists(AttachmentKey attachmentKey)
StreamAttachmentStoreexists in interface StreamAttachmentStoreattachmentKey - key of attachment to check for existencePromise to boolean result, true if attachment exists and false
otherwise@Nonnull public com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> deleteAttachment(AttachmentKey attachmentKey)
StreamAttachmentStoredeleteAttachment in interface StreamAttachmentStorepublic com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> deleteBlob(String id)
@Nonnull public com.atlassian.fugue.Option<ErrorCollection> errors()
AttachmentHealtherrors in interface AttachmentHealthpublic com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> moveAttachment(AttachmentKey oldAttachmentKey, AttachmentKey newAttachmentKey)
StreamAttachmentStoreoldAttachmentKey to be identified by newAttachmentKey and will be not
reachable under oldAttachmentKey anymore.moveAttachment in interface StreamAttachmentStoreoldAttachmentKey - the old AttachmentKeynewAttachmentKey - the new AttachmentKeypublic com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> copyAttachment(AttachmentKey sourceAttachmentKey, AttachmentKey newAttachmentKey)
StreamAttachmentStoreoldAttachmentKey to be identified also by newAttachmentKey.copyAttachment in interface StreamAttachmentStoresourceAttachmentKey - attachmentKey of existing attachment which should be copiednewAttachmentKey - attachmentKey under which copied@Nonnull public com.atlassian.util.concurrent.Promise<TemporaryAttachmentId> putTemporaryAttachment(InputStream inputStream, long size)
StreamAttachmentStoreStreamAttachmentStore.moveTemporaryToAttachment(TemporaryAttachmentId, AttachmentKey)putTemporaryAttachment in interface StreamAttachmentStoreinputStream - stream to temporary attachment datasize - the size of provided streampublic com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> moveTemporaryToAttachment(TemporaryAttachmentId temporaryAttachmentId, AttachmentKey destinationKey)
StreamAttachmentStoreStreamAttachmentStore.putTemporaryAttachment(java.io.InputStream, long) to real attachment.moveTemporaryToAttachment in interface StreamAttachmentStoretemporaryAttachmentId - id of temporary attachment, returned by StreamAttachmentStore.putTemporaryAttachment(java.io.InputStream, long)destinationKey - destination key of under which attachment will be identifiedpublic com.atlassian.util.concurrent.Promise<com.atlassian.fugue.Unit> deleteTemporaryAttachment(TemporaryAttachmentId temporaryAttachmentId)
StreamAttachmentStoreStreamAttachmentStore.putTemporaryAttachment(java.io.InputStream, long).deleteTemporaryAttachment in interface StreamAttachmentStoretemporaryAttachmentId - id of temporary attachmentCopyright © 2002-2015 Atlassian. All Rights Reserved.