Class URIHelper

java.lang.Object
org.docx4j.openpackaging.URIHelper

public final class URIHelper extends Object
Helper for part and pack URI.
Version:
0.3
Author:
Julien Chable, CDubet
  • Field Details

    • RELATIONSHIP_PART_EXTENSION_NAME

      public static final String RELATIONSHIP_PART_EXTENSION_NAME
      Extension name of a relationship part.
    • RELATIONSHIP_PART_SEGMENT_NAME

      public static final String RELATIONSHIP_PART_SEGMENT_NAME
      Segment name of a relationship part.
    • PACKAGE_PROPERTIES_SEGMENT_NAME

      public static final String PACKAGE_PROPERTIES_SEGMENT_NAME
      Segment name of the package properties folder.
    • PACKAGE_CORE_PROPERTIES_NAME

      public static final String PACKAGE_CORE_PROPERTIES_NAME
      Core package properties art name.
    • FORWARD_SLASH_CHAR

      public static final char FORWARD_SLASH_CHAR
      Forward slash URI separator.
    • FORWARD_SLASH_STRING

      public static final String FORWARD_SLASH_STRING
      Forward slash URI separator.
    • PACKAGE_RELATIONSHIPS_ROOT_URI

      public static final URI PACKAGE_RELATIONSHIPS_ROOT_URI
      Package relationships part URI
    • PACKAGE_RELATIONSHIPS_ROOT_PART_NAME

      public static final PartName PACKAGE_RELATIONSHIPS_ROOT_PART_NAME
      Package relationships part name.
    • CORE_PROPERTIES_URI

      public static final URI CORE_PROPERTIES_URI
      Core properties part URI.
    • CORE_PROPERTIES_PART_NAME

      public static final PartName CORE_PROPERTIES_PART_NAME
      Core properties partname.
    • PACKAGE_ROOT_URI

      public static final URI PACKAGE_ROOT_URI
      Root package URI.
    • PACKAGE_ROOT_PART_NAME

      public static final PartName PACKAGE_ROOT_PART_NAME
      Root package part name.
  • Constructor Details

    • URIHelper

      public URIHelper()
  • Method Details

    • getPackageRootUri

      public static URI getPackageRootUri()
      Gets the URI for the package root.
      Returns:
      URI of the package root.
    • getFilename

      public static String getFilename(URI uri)
      Get file name from the specified URI.
    • getFilenameWithoutExtension

      public static String getFilenameWithoutExtension(URI uri)
      Get the file name without the trailing extension.
    • getPath

      public static URI getPath(URI uri)
      Get the directory path from the specified URI.
    • combine

      public static URI combine(URI prefix, URI suffix)
      Combine two URI.
      Parameters:
      prefix -
      suffix -
      Returns:
    • combine

      public static String combine(String prefix, String suffix)
      Combine a string URI with a prefix and a suffix.
    • relativizeURI

      public static URI relativizeURI(URI sourceURI, URI targetURI)
      Fully relativize the target part URI against the source part URI.
      Parameters:
      sourceURI - The source part URI.
      targetURI - The target part URI.
      Returns:
      A fully relativize part name URI ('word/media/image1.gif', '/word/document.xml' => 'media/image1.gif') else null.
    • resolvePartUri

      public static URI resolvePartUri(URI sourcePartUri, URI targetUri)
      Resolve a target uri against a source.
      Parameters:
      sourcePartUri - The source URI.
      targetUri - The target URI.
      Returns:
      The resolved URI.
    • getURIFromPath

      public static URI getURIFromPath(String path)
      Get URI from a string path.
    • getSourcePartUriFromRelationshipPartUri

      public static URI getSourcePartUriFromRelationshipPartUri(URI relationshipPartUri)
    • createPartName

      public static PartName createPartName(URI partUri) throws InvalidFormatException
      Create an OPC compliant part name by throwing an exception if the URI is not valid.
      Parameters:
      partUri - The part name URI to validate.
      Returns:
      A valid part name object, else null.
      Throws:
      InvalidFormatException - Throws if the specified URI is not OPC compliant.
    • createPartName

      public static PartName createPartName(String partName) throws InvalidFormatException
      Create an OPC compliant part name by throwing an exception if the specified name is not valid.
      Parameters:
      partName - The part name to validate.
      Returns:
      The correspondant part name if valid, else null.
      Throws:
      InvalidFormatException - Throws if the specified part name is not OPC compliant.
      See Also:
    • isValidPartName

      public static boolean isValidPartName(URI partUri)
      Validate a part URI by returning a boolean. ([M1.1],[M1.3],[M1.4],[M1.5],[M1.6]) (OPC Specifications 8.1.1 Part names) : Part Name Syntax The part name grammar is defined as follows: part_name = 1*( "/" segment ) segment = 1*( pchar ) (pchar is defined in RFC 3986)
      Parameters:
      partUri - The URI to validate.
      Returns:
      true if the URI is valid to the OPC Specifications, else false
      See Also:
    • decodeURI

      public static String decodeURI(URI uri)
      Decode a URI by converting all percent encoded character into a String character.
      Parameters:
      uri - The URI to decode.
      Returns:
      The specified URI in a String with converted percent encoded characters.