org.apache.poi.openxml4j.opc
Class PackagePartName

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

public final class PackagePartName
extends java.lang.Object
implements java.lang.Comparable<PackagePartName>

An immutable Open Packaging Convention compliant part name.

Author:
Julien Chable
See Also:
http://www.ietf.org/rfc/rfc3986.txt

Method Summary
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.
static int compare(java.lang.String str1, java.lang.String str2)
          A natural sort order for strings, consistent with the requirements of java.util.Comparator, but simply implemented as a static method.
 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.
 boolean equals(java.lang.Object other)
          Part name equivalence is determined by comparing part names as case-insensitive ASCII strings.
 java.lang.String getExtension()
          Retrieves the extension of the part name if any.
 java.lang.String getName()
          Get this part name.
 java.net.URI getURI()
          Part name property getter.
 int hashCode()
           
 boolean isRelationshipPartURI()
          Know if this part name is a relationship part name.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Method Detail

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 java.lang.Comparable<PackagePartName>

getExtension

public java.lang.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 java.lang.String getName()
Get this part name.

Returns:
The name of this part name.

equals

public boolean equals(java.lang.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 java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getURI

public java.net.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]


compare

public static int compare(java.lang.String str1,
                          java.lang.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)



Copyright 2017 The Apache Software Foundation or its licensors, as applicable.