Class AttachmentDownloadResourceManager
java.lang.Object
com.atlassian.confluence.importexport.resource.AttachmentDownloadResourceManager
- All Implemented Interfaces:
DownloadResourceManager
,PartialDownloadResourceManager
- Direct Known Subclasses:
ThumbnailDownloadResourceManager
public class AttachmentDownloadResourceManager
extends Object
implements PartialDownloadResourceManager
-
Constructor Summary
ConstructorsConstructorDescriptionAttachmentDownloadResourceManager
(PermissionManager permissionManager, AttachmentManager attachmentManager, ConfluenceUserDao confluenceUserDao, AttachmentUrlParser attachmentUrlParser, ContextPathHolder contextPathHolder) -
Method Summary
Modifier and TypeMethodDescriptionprotected Attachment
getAttachment
(String userName, String resourcePath, Map parameters, String urlPrefix) getPartialResourceReader
(String userName, String resourcePath, Map parameters, String requestRange) Returns aDownloadResourceReader
for part of a downloadable resource.getResourceReader
(String userName, String resourcePath, Map parameters) Returns aAttachmentDownloadResourceReader
for retrieving attachment content.boolean
Returns a boolean to indicate whether the current DownloadResourceManager will know how to handle the given resourcePath.void
setAttachmentManager
(AttachmentManager attachmentManager) void
setAttachmentUrlParser
(AttachmentUrlParser attachmentUrlParser) void
setConfluenceUserDao
(ConfluenceUserDao confluenceUserDao) void
setContextPathHolder
(ContextPathHolder contextPathHolder) void
setPermissionManager
(PermissionManager permissionManager)
-
Constructor Details
-
AttachmentDownloadResourceManager
public AttachmentDownloadResourceManager(PermissionManager permissionManager, AttachmentManager attachmentManager, ConfluenceUserDao confluenceUserDao, AttachmentUrlParser attachmentUrlParser, ContextPathHolder contextPathHolder)
-
-
Method Details
-
matches
Description copied from interface:DownloadResourceManager
Returns a boolean to indicate whether the current DownloadResourceManager will know how to handle the given resourcePath.- Specified by:
matches
in interfaceDownloadResourceManager
- Parameters:
resourcePath
- the relative URL of the resource including the application context path. For example, "/confluence/download/attachments/12345/temp.png".- Returns:
- true if the manager can handle the given resource path
-
getResourceReader
public DownloadResourceReader getResourceReader(String userName, String resourcePath, Map parameters) throws UnauthorizedDownloadResourceException, DownloadResourceNotFoundException Returns aAttachmentDownloadResourceReader
for retrieving attachment content. Typically used by HTML/PDF export and attachment downloads.- Specified by:
getResourceReader
in interfaceDownloadResourceManager
- Parameters:
userName
- the user who is retrieving the attachment content.resourcePath
- the relative URL of the resource including the application context path. For example, "/confluence/download/thumbnails/12345/temp.png".parameters
- a map of url parameters for the resource- Returns:
- a DownloadResourceReader to read the resource content from
- Throws:
UnauthorizedDownloadResourceException
- if the user requesting the attachment content does not have the permissions to view itDownloadResourceNotFoundException
- if the attachment content associated with the resourcePath cannot be found
-
getAttachment
protected Attachment getAttachment(String userName, String resourcePath, Map parameters, String urlPrefix) throws DownloadResourceNotFoundException, UnauthorizedDownloadResourceException -
setAttachmentUrlParser
-
setAttachmentManager
-
setPermissionManager
-
setConfluenceUserDao
-
getContextPathHolder
-
setContextPathHolder
-
getPartialResourceReader
public PartialDownloadResourceReader getPartialResourceReader(String userName, String resourcePath, Map parameters, String requestRange) throws UnauthorizedDownloadResourceException, DownloadResourceNotFoundException, RangeNotSatisfiableException Description copied from interface:PartialDownloadResourceManager
Returns aDownloadResourceReader
for part of a downloadable resource. Currently being used by attachment downloadsUse this method only if
DownloadResourceManager.matches(String)
returns true.- Specified by:
getPartialResourceReader
in interfacePartialDownloadResourceManager
- Parameters:
userName
- the user who is retrieving the downloadable resource.resourcePath
- the relative URL of the resource including the application context path. For example, "/confluence/download/attachments/12345/temp.png".parameters
- a map of url paramaters for the resourcerequestRange
- range of the resource as defined in RFC-2616 http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.1- Returns:
- a DownloadResourceReader to read the resource content from
- Throws:
UnauthorizedDownloadResourceException
- if the user requesting the downloadable resource does not have the permissions to get itDownloadResourceNotFoundException
- if the downloadable resource associated with the resourcePath cannot be foundRangeNotSatisfiableException
- if the requested range cannot be served
-