Package org.ametys.cms.transformation
Class AbstractURIResolver
java.lang.Object
org.apache.avalon.framework.logger.AbstractLogEnabled
org.ametys.cms.transformation.AbstractURIResolver
- All Implemented Interfaces:
URIResolver
,LogEnabled
- Direct Known Subclasses:
AttachmentURIResolver
,AttributeURIResolver
,LinkMetadataURIResolver
,ResourceURIResolver
,SiteParameterUriResolver
Abstract superclass for simple
URIResolver
.-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected abstract String
Resolves a link URI for rendering.
The output must be a properly encoded path, relative to the webapp context, accessible from a browser.Resolves a link URI for rendering purposes.
The output must be a properly encoded path, relative to the webapp context, accessible from a browser.resolveBoundedImage
(String uri, int maxHeight, int maxWidth, boolean download, boolean absolute, boolean internal) Resolves a link URI for rendering image.
The output must be a properly encoded path, relative to the webapp context, accessible from a browser.resolveBoundedImageAsBase64
(String uri, int maxHeight, int maxWidth) Resolve an image and return it as a base64-encoded string.resolveCroppedImage
(String uri, int cropHeight, int cropWidth, boolean download, boolean absolute, boolean internal) Resolves a link URI for rendering image.
The output must be a properly encoded path, relative to the webapp context, accessible from a browser.resolveCroppedImageAsBase64
(String uri, int cropHeight, int cropWidth) Resolve an image and return it as a base64-encoded string.resolveImage
(String uri, int height, int width, boolean download, boolean absolute, boolean internal) Resolves a link URI for rendering image.
The output must be a properly encoded path, relative to the webapp context, accessible from a browser.resolveImageAsBase64
(String uri, int height, int width) Resolve an image and return it as a base64-encoded string.protected abstract String
resolveImageAsBase64
(String uri, int height, int width, int maxHeight, int maxWidth, int cropHeight, int cropWidth) Get an image's bytes encoded as base64, optionally resized.Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.ametys.cms.transformation.URIResolver
checkLink, getLabel, getMimeType, getType
-
Constructor Details
-
AbstractURIResolver
public AbstractURIResolver()
-
-
Method Details
-
resolve
Description copied from interface:URIResolver
Resolves a link URI for rendering purposes.
The output must be a properly encoded path, relative to the webapp context, accessible from a browser.- Specified by:
resolve
in interfaceURIResolver
- Parameters:
uri
- the link URI.download
- 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 resource.
-
resolveImage
public String resolveImage(String uri, int height, int width, boolean download, boolean absolute, boolean internal) Description copied from interface:URIResolver
Resolves a link URI for rendering image.
The output must be a properly encoded path, relative to the webapp context, accessible from a browser.- Specified by:
resolveImage
in interfaceURIResolver
- Parameters:
uri
- the link URI.height
- the height of the image.width
- the width of the imagedownload
- 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.
-
resolveBoundedImage
public String resolveBoundedImage(String uri, int maxHeight, int maxWidth, boolean download, boolean absolute, boolean internal) Description copied from interface:URIResolver
Resolves a link URI for rendering image.
The output must be a properly encoded path, relative to the webapp context, accessible from a browser.- Specified by:
resolveBoundedImage
in interfaceURIResolver
- Parameters:
uri
- the link URI.maxHeight
- the max heightmaxWidth
- the max widthdownload
- 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.
-
resolveCroppedImage
public String resolveCroppedImage(String uri, int cropHeight, int cropWidth, boolean download, boolean absolute, boolean internal) Description copied from interface:URIResolver
Resolves a link URI for rendering image.
The output must be a properly encoded path, relative to the webapp context, accessible from a browser.- Specified by:
resolveCroppedImage
in interfaceURIResolver
- Parameters:
uri
- the link URI.cropHeight
- the crop heightcropWidth
- the crop widthdownload
- 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.
-
resolveImageAsBase64
Description copied from interface:URIResolver
Resolve an image and return it as a base64-encoded string.- Specified by:
resolveImageAsBase64
in interfaceURIResolver
- Parameters:
uri
- the link URI.height
- the height of the image.width
- the width of the image- Returns:
- a base64-encoded string representing the image.
-
resolveBoundedImageAsBase64
Description copied from interface:URIResolver
Resolve an image and return it as a base64-encoded string.- Specified by:
resolveBoundedImageAsBase64
in interfaceURIResolver
- Parameters:
uri
- the link URI.maxHeight
- the max heightmaxWidth
- the max width- Returns:
- a base64-encoded string representing the image.
-
resolveCroppedImageAsBase64
Description copied from interface:URIResolver
Resolve an image and return it as a base64-encoded string.- Specified by:
resolveCroppedImageAsBase64
in interfaceURIResolver
- Parameters:
uri
- the link URI.cropHeight
- the crop heightcropWidth
- the crop width- Returns:
- a base64-encoded string representing the image.
-
_resolve
protected abstract 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.- 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.
-
resolveImageAsBase64
protected abstract String resolveImageAsBase64(String uri, int height, int width, int maxHeight, int maxWidth, int cropHeight, int cropWidth) Get an image's bytes encoded as base64, optionally resized.- 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.
-