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
Constructors Constructor Description DelegatorDownloadResourceManager()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PartialDownloadResourceReadergetPartialResourceReader(String userName, String resourcePath, Map parameters, String requestRange)Returns aDownloadResourceReaderfor part of a downloadable resource.DownloadResourceReadergetResourceReader(String userName, String resourcePath, Map parameters)Returns aDownloadResourceReaderfor a downloadable resource.booleanmatches(String resourcePath)Returns a boolean to indicate whether the current DownloadResourceManager will know how to handle the given resourcePath.voidsetDownloadResourceManagers(List<DownloadResourceManager> downloadResourceManagers)
-
-
-
Method Detail
-
matches
public boolean matches(String resourcePath)
Description copied from interface:DownloadResourceManagerReturns a boolean to indicate whether the current DownloadResourceManager will know how to handle the given resourcePath.- Specified by:
matchesin 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:DownloadResourceManagerReturns aDownloadResourceReaderfor 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:
getResourceReaderin 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:PartialDownloadResourceManagerReturns aDownloadResourceReaderfor part of a downloadable resource. Currently being used by attachment downloads Use this method only ifDownloadResourceManager.matches(String)returns true.- Specified by:
getPartialResourceReaderin 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
public void setDownloadResourceManagers(List<DownloadResourceManager> downloadResourceManagers)
-
-