Class DelegatorDownloadResourceManager
java.lang.Object
com.atlassian.confluence.importexport.resource.DelegatorDownloadResourceManager
- All Implemented Interfaces:
DownloadResourceManager
,PartialDownloadResourceManager
public class DelegatorDownloadResourceManager
extends Object
implements PartialDownloadResourceManager
Delegates to the appropriate download resource manager for resource retrievals.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetPartialResourceReader
(String userName, String resourcePath, Map parameters, String requestRange) Returns aDownloadResourceReader
for part of a downloadable resource.getResourceReader
(String userName, String resourcePath, Map parameters) Returns aDownloadResourceReader
for a downloadable resource.boolean
Returns a boolean to indicate whether the current DownloadResourceManager will know how to handle the given resourcePath.void
setDownloadResourceManagers
(List<DownloadResourceManager> downloadResourceManagers)
-
Constructor Details
-
DelegatorDownloadResourceManager
public DelegatorDownloadResourceManager()
-
-
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 DownloadResourceNotFoundException, UnauthorizedDownloadResourceException Description copied from interface:DownloadResourceManager
Returns aDownloadResourceReader
for a downloadable resource. Typically used by HTML/PDF export and resource content downloads.Use this method only if
DownloadResourceManager.matches(String)
returns true.- Specified by:
getResourceReader
in interfaceDownloadResourceManager
- 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 resource- Returns:
- a DownloadResourceReader to read the resource content from
- Throws:
DownloadResourceNotFoundException
- if the downloadable resource associated with the resourcePath cannot be foundUnauthorizedDownloadResourceException
- if the user requesting the downloadable resource does not have the permissions to get it
-
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 downloads Use this method only ifDownloadResourceManager.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
-
setDownloadResourceManagers
-