Class PackagePartName

java.lang.Object
org.apache.poi.openxml4j.opc.PackagePartName
All Implemented Interfaces:
Comparable<PackagePartName>

public final class PackagePartName extends Object implements Comparable<PackagePartName>
An immutable Open Packaging Convention compliant part name.
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    static int
    compare(String str1, String str2)
    A natural sort order for strings, consistent with the requirements of java.util.Comparator, but simply implemented as a static method.
    static int
    A natural sort order for package part names, consistent with the requirements of java.util.Comparator, but simply implemented as a static method.
    int
    Compare two part names following the rule M1.12 : Part name equivalence is determined by comparing part names as case-insensitive ASCII strings.
    boolean
    equals(Object other)
    Part name equivalence is determined by comparing part names as case-insensitive ASCII strings.
    Retrieves the extension of the part name if any.
    Get this part name.
    Part name property getter.
    int
     
    boolean
    Know if this part name is a relationship part name.
     

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Method Details

    • isRelationshipPartURI

      public boolean isRelationshipPartURI()
      Know if this part name is a relationship part name.
      Returns:
      true if this part name respect the relationship part naming convention else false.
    • compareTo

      public int compareTo(PackagePartName other)
      Compare two part names following the rule M1.12 : Part name equivalence is determined by comparing part names as case-insensitive ASCII strings. Packages shall not contain equivalent part names and package implementers shall neither create nor recognize packages with equivalent part names. [M1.12]
      Specified by:
      compareTo in interface Comparable<PackagePartName>
    • getExtension

      public String getExtension()
      Retrieves the extension of the part name if any. If there is no extension returns an empty String. Example : '/document/content.xml' => 'xml'
      Returns:
      The extension of the part name.
    • getName

      public String getName()
      Get this part name.
      Returns:
      The name of this part name.
    • equals

      public boolean equals(Object other)
      Part name equivalence is determined by comparing part names as case-insensitive ASCII strings. Packages shall not contain equivalent part names and package implementers shall neither create nor recognize packages with equivalent part names. [M1.12]
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getURI

      public URI getURI()
      Part name property getter.
      Returns:
      This part name URI.
    • compare

      public static int compare(PackagePartName obj1, PackagePartName obj2)
      A natural sort order for package part names, consistent with the requirements of java.util.Comparator, but simply implemented as a static method.

      For example, this sorts "file10.png" after "file2.png" (comparing the numerical portion), but sorts "File10.png" before "file2.png" (lexigraphical sort)

      When comparing part names, the rule M1.12 is followed: Part name equivalence is determined by comparing part names as case-insensitive ASCII strings. Packages shall not contain equivalent part names and package implementers shall neither create nor recognize packages with equivalent part names. [M1.12]

      Parameters:
      obj1 - first PackagePartName to compare
      obj2 - second PackagePartName to compare
      Returns:
      a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.
    • compare

      public static int compare(String str1, String str2)
      A natural sort order for strings, consistent with the requirements of java.util.Comparator, but simply implemented as a static method.

      For example, this sorts "file10.png" after "file2.png" (comparing the numerical portion), but sorts "File10.png" before "file2.png" (lexigraphical sort)

      Parameters:
      str1 - first string to compare
      str1 - second string to compare
      Returns:
      a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.