Package org.ametys.cms.transformation
Class AttachmentURIResolver
- java.lang.Object
-
- org.apache.avalon.framework.logger.AbstractLogEnabled
-
- org.ametys.cms.transformation.AbstractURIResolver
-
- org.ametys.cms.transformation.AttachmentURIResolver
-
- All Implemented Interfaces:
URIResolver,Contextualizable,LogEnabled,Serviceable
- Direct Known Subclasses:
AttachmentURIResolver
public class AttachmentURIResolver extends AbstractURIResolver implements Serviceable, Contextualizable
URIResolverfor type "attachment".
These links point to a file from the attachments of the current Content.
-
-
Field Summary
Fields Modifier and Type Field Description protected static Pattern__PLUGIN_CONTENT_PATTERNRegular expression for contents stored under pluginsprotected Context_contextThe avalon contextprotected URIPrefixHandler_prefixHandlerThe URI prefix handlerprotected AmetysObjectResolver_resolverThe ametys resolver
-
Constructor Summary
Constructors Constructor Description AttachmentURIResolver()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String_resolve(String uri, String uriArgument, boolean download, boolean absolute, boolean internal)Resolves a link URI for rendering.
The output must be a properly encoded path, relative to the webapp context, accessible from a browser.ConsistencyChecker.CHECKcheckLink(String uri, boolean shortTest)Tests if the URI is not broken.voidcontextualize(Context context)I18nizableTextgetLabel(String uri)Get an URI label.StringgetType()Returns the type of links handled by thisURIResolver.protected StringgetUriPrefix(AmetysObject object, boolean download, boolean internal, boolean absolute)Get the URI prefixprotected StringresolveImageAsBase64(String uri, int height, int width, int maxHeight, int maxWidth, int cropHeight, int cropWidth)Get an image's bytes encoded as base64, optionally resized.voidservice(ServiceManager manager)-
Methods inherited from class org.ametys.cms.transformation.AbstractURIResolver
resolve, resolveBoundedImage, resolveBoundedImageAsBase64, resolveCroppedImage, resolveCroppedImageAsBase64, resolveImage, resolveImageAsBase64
-
Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
-
-
-
-
Field Detail
-
__PLUGIN_CONTENT_PATTERN
protected static final Pattern __PLUGIN_CONTENT_PATTERN
Regular expression for contents stored under plugins
-
_resolver
protected AmetysObjectResolver _resolver
The ametys resolver
-
_prefixHandler
protected URIPrefixHandler _prefixHandler
The URI prefix handler
-
-
Constructor Detail
-
AttachmentURIResolver
public AttachmentURIResolver()
-
-
Method Detail
-
contextualize
public void contextualize(Context context) throws ContextException
- Specified by:
contextualizein interfaceContextualizable- Throws:
ContextException
-
service
public void service(ServiceManager manager) throws ServiceException
- Specified by:
servicein interfaceServiceable- Throws:
ServiceException
-
getType
public String getType()
Description copied from interface:URIResolverReturns the type of links handled by thisURIResolver.- Specified by:
getTypein interfaceURIResolver- Returns:
- the type of links handled by this
URIResolver.
-
_resolve
public String _resolve(String uri, String uriArgument, boolean download, boolean absolute, boolean internal)
Description copied from class:AbstractURIResolverResolves a link URI for rendering.
The output must be a properly encoded path, relative to the webapp context, accessible from a browser.- Specified by:
_resolvein classAbstractURIResolver- Parameters:
uri- the link URI.uriArgument- the argument to append to the uridownload- true if the pointed resource is to be downloaded.absolute- true if the url must be absoluteinternal- true to get an internal URI.- Returns:
- the path to the image.
-
getUriPrefix
protected String getUriPrefix(AmetysObject object, boolean download, boolean internal, boolean absolute)
Get the URI prefix- Parameters:
object- The objectdownload- true if the pointed resource is to be downloaded.absolute- true if the url must be absoluteinternal- true to get an internal URI.- Returns:
- the URI prefix
-
resolveImageAsBase64
protected String resolveImageAsBase64(String uri, int height, int width, int maxHeight, int maxWidth, int cropHeight, int cropWidth)
Description copied from class:AbstractURIResolverGet an image's bytes encoded as base64, optionally resized.- Specified by:
resolveImageAsBase64in classAbstractURIResolver- Parameters:
uri- the image URI.height- the specified height. Ignored if negative.width- the specified width. Ignored if negative.maxHeight- the maximum image height. Ignored if height or width is specified.maxWidth- the maximum image width. Ignored if height or width is specified.cropHeight- The cropping height. Ignored if negative.cropWidth- The cropping width. Ignored if negative.- Returns:
- the image bytes encoded as base64.
-
checkLink
public ConsistencyChecker.CHECK checkLink(String uri, boolean shortTest)
Description copied from interface:URIResolverTests if the URI is not broken.- Specified by:
checkLinkin interfaceURIResolver- Parameters:
uri- The uri to testshortTest- If shortTest is to true, only fast check should be done. If false, complete test (even if long) should be done.- Returns:
- SUCCESS if the test was done and ok, FAILURE if the test was done and ko, UNKNOWN if the test was not done (because too long). UNKNOWN can not be returned when shortTest is set to false
-
getLabel
public I18nizableText getLabel(String uri)
Description copied from interface:URIResolverGet an URI label.- Specified by:
getLabelin interfaceURIResolver- Parameters:
uri- the uri which label to get.- Returns:
- the label.
-
-