Class CmsHtmlConverter

java.lang.Object
org.opencms.util.CmsHtmlConverter

public class CmsHtmlConverter extends Object
HTML cleaner and pretty printer.

Used to clean up HTML code (e.g. remove word tags) and optionally create XHTML from HTML.

Since:
6.0.0
  • Field Details

  • Constructor Details

    • CmsHtmlConverter

      Constructor, creates a new CmsHtmlConverter.

      The encoding used by default is CmsEncoder.ENCODING_UTF_8.

    • CmsHtmlConverter

      public CmsHtmlConverter(String encoding, String mode)
      Constructor, creates a new CmsHtmlConverter.

      Possible values for the default conversion mode are:

      • PARAM_DISABLED: The conversion is disabled.
      • PARAM_ENABLED: Conversion is enabled without transformation, so HTML is pretty printed only.
      • PARAM_XHTML: Conversion from HTML to XHTML is enabled.
      • PARAM_WORD: Cleanup of word like HTML tags is enabled.
      • Other values can be used by the implementing converter class.
      Values can be combined with the ; separator, so it is e.g. possible to convert to XHTML and clean from word at the same time.

      Parameters:
      encoding - the encoding used for the HTML code conversion
      mode - the conversion mode to use
  • Method Details

    • getConversionSettings

      public static String getConversionSettings(CmsObject cms, CmsResource resource)
      Reads the content conversion property of a given resource and returns its value.

      A default value (disabled) is returned if the property could not be read.

      Parameters:
      cms - the CmsObject
      resource - the resource in the VFS
      Returns:
      the content conversion property value
    • isConversionEnabled

      public static boolean isConversionEnabled(String conversionMode)
      Tests if the content conversion is enabled.

      Parameters:
      conversionMode - the content conversion mode string
      Returns:
      true or false
    • convertToByte

      public byte[] convertToByte(byte[] htmlInput) throws UnsupportedEncodingException
      Converts the given HTML code according to the settings of this converter.

      Parameters:
      htmlInput - HTML input stored in an array of bytes
      Returns:
      array of bytes containing the converted HTML
      Throws:
      UnsupportedEncodingException - if the encoding set for the conversion is not supported
    • convertToByte

      public byte[] convertToByte(String htmlInput) throws UnsupportedEncodingException
      Converts the given HTML code according to the settings of this converter.

      Parameters:
      htmlInput - HTML input stored in a string
      Returns:
      array of bytes containing the converted HTML
      Throws:
      UnsupportedEncodingException - if the encoding set for the conversion is not supported
    • convertToByteSilent

      public byte[] convertToByteSilent(byte[] htmlInput)
      Converts the given HTML code according to the settings of this converter.

      If an any error occurs during the conversion process, the original input is returned unmodified.

      Parameters:
      htmlInput - HTML input stored in an array of bytes
      Returns:
      array of bytes containing the converted HTML
    • convertToByteSilent

      public byte[] convertToByteSilent(String htmlInput)
      Converts the given HTML code according to the settings of this converter.

      If an any error occurs during the conversion process, the original input is returned unmodified.

      Parameters:
      htmlInput - HTML input stored in a string
      Returns:
      array of bytes containing the converted HTML
    • convertToString

      public String convertToString(byte[] htmlInput) throws UnsupportedEncodingException
      Converts the given HTML code according to the settings of this converter.

      Parameters:
      htmlInput - HTML input stored in an array of bytes
      Returns:
      string containing the converted HTML
      Throws:
      UnsupportedEncodingException - if the encoding set for the conversion is not supported
    • convertToString

      Converts the given HTML code according to the settings of the converter.

      Parameters:
      htmlInput - HTML input stored in a string
      Returns:
      string containing the converted HTML
      Throws:
      UnsupportedEncodingException - if the encoding set for the conversion is not supported
    • convertToStringSilent

      public String convertToStringSilent(byte[] htmlInput)
      Converts the given HTML code according to the settings of this converter.

      If an any error occurs during the conversion process, the original input is returned unmodified.

      Parameters:
      htmlInput - HTML input stored in an array of bytes
      Returns:
      string containing the converted HTML
    • convertToStringSilent

      public String convertToStringSilent(String htmlInput)
      Converts the given HTML code according to the settings of this converter.

      If an any error occurs during the conversion process, the original input is returned unmodified.

      Parameters:
      htmlInput - HTML input stored in string
      Returns:
      string containing the converted HTML
    • getEncoding

      public String getEncoding()
      Returns the encoding used for the HTML code conversion.

      Returns:
      the encoding used for the HTML code conversion
    • getMode

      public String getMode()
      Returns the conversion mode to use.

      Returns:
      the conversion mode to use