Class AbstractConverter

java.lang.Object
org.apache.tika.xmp.convert.AbstractConverter
All Implemented Interfaces:
ITikaToXMPConverter
Direct Known Subclasses:
GenericConverter, MSOfficeBinaryConverter, MSOfficeXMLConverter, OpenDocumentConverter, RTFConverter

public abstract class AbstractConverter extends Object implements ITikaToXMPConverter
Base class for Tika Metadata to XMP converter which provides some needed common functionality.
  • Field Details

    • meta

      protected com.adobe.internal.xmp.XMPMeta meta
  • Constructor Details

  • Method Details

    • process

      public abstract com.adobe.internal.xmp.XMPMeta process(Metadata metadata) throws com.adobe.internal.xmp.XMPException
      Description copied from interface: ITikaToXMPConverter
      Converts a Tika Metadata-object into an XMPMeta containing the useful properties.
      Specified by:
      process in interface ITikaToXMPConverter
      Parameters:
      metadata - a Tika Metadata object
      Returns:
      Returns an XMPMeta object.
      Throws:
      com.adobe.internal.xmp.XMPException - If an error occurs during the creation of the XMP object.
    • getAdditionalNamespaces

      protected abstract Set<Namespace> getAdditionalNamespaces()
      Every Converter has to provide information about namespaces that are used additionally to the core set of XMP namespaces.
      Returns:
      the additional namespace information
    • setMetadata

      public void setMetadata(Metadata metadata)
    • getXMPMeta

      public com.adobe.internal.xmp.XMPMeta getXMPMeta()
    • registerNamespaces

      protected void registerNamespaces(Set<Namespace> namespaces) throws TikaException
      Registers a number Namespace information with XMPCore. Any already registered namespace is not registered again.
      Parameters:
      namespaces - the list of namespaces to be registered
      Throws:
      TikaException - in case a namespace oculd not be registered
    • createProperty

      protected void createProperty(Property metadataProperty, String ns, String propertyName) throws com.adobe.internal.xmp.XMPException
      Throws:
      com.adobe.internal.xmp.XMPException
      See Also:
    • createProperty

      protected void createProperty(String tikaKey, String ns, String propertyName) throws com.adobe.internal.xmp.XMPException
      Creates a simple property.
      Parameters:
      tikaKey - Key in the Tika metadata map
      ns - namespace the property should be created in
      propertyName - name of the property
      Throws:
      com.adobe.internal.xmp.XMPException - if the property could not be created
    • createLangAltProperty

      protected void createLangAltProperty(Property metadataProperty, String ns, String propertyName) throws com.adobe.internal.xmp.XMPException
      Throws:
      com.adobe.internal.xmp.XMPException
      See Also:
    • createLangAltProperty

      protected void createLangAltProperty(String tikaKey, String ns, String propertyName) throws com.adobe.internal.xmp.XMPException
      Creates a language alternative property in the x-default language
      Parameters:
      tikaKey - Key in the Tika metadata map
      ns - namespace the property should be created in
      propertyName - name of the property
      Throws:
      com.adobe.internal.xmp.XMPException - if the property could not be created
    • createArrayProperty

      protected void createArrayProperty(Property metadataProperty, String nsDc, String arrayProperty, int arrayType) throws com.adobe.internal.xmp.XMPException
      Throws:
      com.adobe.internal.xmp.XMPException
    • createArrayProperty

      protected void createArrayProperty(String tikaKey, String ns, String propertyName, int arrayType) throws com.adobe.internal.xmp.XMPException
      Creates an array property from a list of values.
      Parameters:
      tikaKey - Key in the Tika metadata map
      ns - namespace the property should be created in
      propertyName - name of the property
      arrayType - depicts which kind of array shall be created
      Throws:
      com.adobe.internal.xmp.XMPException - if the property could not be created
    • createCommaSeparatedArray

      protected void createCommaSeparatedArray(Property metadataProperty, String nsDc, String arrayProperty, int arrayType) throws com.adobe.internal.xmp.XMPException
      Throws:
      com.adobe.internal.xmp.XMPException
    • createCommaSeparatedArray

      protected void createCommaSeparatedArray(String tikaKey, String ns, String propertyName, int arrayType) throws com.adobe.internal.xmp.XMPException
      Creates an array property from a comma separated list.
      Parameters:
      tikaKey - Key in the Tika metadata map
      ns - namespace the property should be created in
      propertyName - name of the property
      arrayType - depicts which kind of array shall be created
      Throws:
      com.adobe.internal.xmp.XMPException - if the property could not be created