Class LinkMetadataURIResolver

All Implemented Interfaces:
URIResolver, PluginAware, Contextualizable, LogEnabled, Serviceable

URIResolver for type "link-data".
These links or images point to a file from the data of a Link.
  • Constructor Details

  • Method Details

    • setPluginInfo

      public void setPluginInfo(String pluginName, String featureName, String id)
      Description copied from interface: PluginAware
      Sets the plugin info relative to the current component.
      Note : The feature name may be null if the targeted component in declared at plugin level.
      Specified by:
      setPluginInfo in interface PluginAware
      Parameters:
      pluginName - Unique identifier for the plugin hosting the extension
      featureName - Unique feature identifier (unique for a given pluginName)
      id - Unique identifier of this component
    • contextualize

      public void contextualize(Context context) throws ContextException
      Specified by:
      contextualize in interface Contextualizable
      Throws:
      ContextException
    • service

      public void service(ServiceManager manager) throws ServiceException
      Specified by:
      service in interface Serviceable
      Throws:
      ServiceException
    • getType

      public String getType()
      Description copied from interface: URIResolver
      Returns the type of links handled by this URIResolver.
      Specified by:
      getType in interface URIResolver
      Returns:
      the type of links handled by this URIResolver.
    • _resolve

      protected String _resolve(String uri, String uriArgument, boolean download, boolean absolute, boolean internal)
      Description copied from class: AbstractURIResolver
      Resolves a link URI for rendering.
      The output must be a properly encoded path, relative to the webapp context, accessible from a browser.
      Specified by:
      _resolve in class AbstractURIResolver
      Parameters:
      uri - the link URI.
      uriArgument - the argument to append to the uri
      download - true if the pointed resource is to be downloaded.
      absolute - true if the url must be absolute
      internal - true to get an internal URI.
      Returns:
      the path to the image.
    • resolveImageAsBase64

      protected String resolveImageAsBase64(String uri, int height, int width, int maxHeight, int maxWidth, int cropHeight, int cropWidth)
      Description copied from class: AbstractURIResolver
      Get an image's bytes encoded as base64, optionally resized.
      Specified by:
      resolveImageAsBase64 in class AbstractURIResolver
      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.
    • getMimeType

      public String getMimeType(String uri)
      Description copied from interface: URIResolver
      Get the mime type for the targeted URI.
      Specified by:
      getMimeType in interface URIResolver
      Parameters:
      uri - the link URI.
      Returns:
      the mime type, can be empty or null.
    • checkLink

      public ConsistencyChecker.CHECK checkLink(String uri, boolean shortTest)
      Description copied from interface: URIResolver
      Tests if the URI is not broken.
      Specified by:
      checkLink in interface URIResolver
      Parameters:
      uri - The uri to test
      shortTest - 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

      Description copied from interface: URIResolver
      Get an URI label.
      Specified by:
      getLabel in interface URIResolver
      Parameters:
      uri - the uri which label to get.
      Returns:
      the label.