public final class PackagingURIHelper extends Object
Modifier and Type | Field and Description |
---|---|
static PackagePartName |
CORE_PROPERTIES_PART_NAME
Core properties partname.
|
static URI |
CORE_PROPERTIES_URI
Core properties part URI.
|
static char |
FORWARD_SLASH_CHAR
Forward slash URI separator.
|
static String |
FORWARD_SLASH_STRING
Forward slash URI separator.
|
static String |
PACKAGE_CORE_PROPERTIES_NAME
Core package properties art name.
|
static String |
PACKAGE_PROPERTIES_SEGMENT_NAME
Segment name of the package properties folder.
|
static PackagePartName |
PACKAGE_RELATIONSHIPS_ROOT_PART_NAME
Package relationships part name.
|
static URI |
PACKAGE_RELATIONSHIPS_ROOT_URI
Package relationships part URI
|
static PackagePartName |
PACKAGE_ROOT_PART_NAME
Root package part name.
|
static URI |
PACKAGE_ROOT_URI
Root package URI.
|
static String |
RELATIONSHIP_PART_EXTENSION_NAME
Extension name of a relationship part.
|
static String |
RELATIONSHIP_PART_SEGMENT_NAME
Segment name of a relationship part.
|
Constructor and Description |
---|
PackagingURIHelper() |
Modifier and Type | Method and Description |
---|---|
static String |
combine(String prefix,
String suffix)
Combine a string URI with a prefix and a suffix.
|
static URI |
combine(URI prefix,
URI suffix)
Combine two URIs.
|
static PackagePartName |
createPartName(String partName)
Create an OPC compliant part name.
|
static PackagePartName |
createPartName(String partName,
PackagePart relativePart)
Create an OPC compliant part name by resolving it using a base part.
|
static PackagePartName |
createPartName(URI partUri)
Create an OPC compliant part name by throwing an exception if the URI is
not valid.
|
static PackagePartName |
createPartName(URI partName,
PackagePart relativePart)
Create an OPC compliant part name by resolving it using a base part.
|
static String |
decodeURI(URI uri)
Decode a URI by converting all percent encoded character into a String
character.
|
static String |
encode(String s)
percent-encode white spaces and characters above 0x80.
|
static String |
getFilename(URI uri)
Get file name from the specified URI.
|
static String |
getFilenameWithoutExtension(URI uri)
Get the file name without the trailing extension.
|
static URI |
getPackageRootUri()
Gets the URI for the package root.
|
static URI |
getPath(URI uri)
Get the directory path from the specified URI.
|
static PackagePartName |
getRelationshipPartName(PackagePartName partName)
Build a part name where the relationship should be stored ((ex
/word/document.xml -> /word/_rels/document.xml.rels)
|
static URI |
getSourcePartUriFromRelationshipPartUri(URI relationshipPartUri)
Get the source part URI from a specified relationships part.
|
static URI |
getURIFromPath(String path)
Get URI from a string path.
|
static boolean |
isRelationshipPartURI(URI partUri)
Know if the specified URI is a relationship part name.
|
static boolean |
isValidPartName(URI partUri)
Validate a part URI by returning a boolean.
|
static URI |
relativizeURI(URI sourceURI,
URI targetURI)
Fully relativize the source part URI against the target part URI.
|
static URI |
relativizeURI(URI sourceURI,
URI targetURI,
boolean msCompatible)
Fully relativize the source part URI against the target part URI.
|
static URI |
resolvePartUri(URI sourcePartUri,
URI targetUri)
Resolve a source uri against a target.
|
static URI |
toURI(String value)
Convert a string to
URI
If part name is not a valid URI, it is resolved as follows: |
public static final String RELATIONSHIP_PART_EXTENSION_NAME
public static final String RELATIONSHIP_PART_SEGMENT_NAME
public static final String PACKAGE_PROPERTIES_SEGMENT_NAME
public static final String PACKAGE_CORE_PROPERTIES_NAME
public static final char FORWARD_SLASH_CHAR
public static final String FORWARD_SLASH_STRING
public static final URI PACKAGE_RELATIONSHIPS_ROOT_URI
public static final PackagePartName PACKAGE_RELATIONSHIPS_ROOT_PART_NAME
public static final URI CORE_PROPERTIES_URI
public static final PackagePartName CORE_PROPERTIES_PART_NAME
public static final URI PACKAGE_ROOT_URI
public static final PackagePartName PACKAGE_ROOT_PART_NAME
public static URI getPackageRootUri()
public static boolean isRelationshipPartURI(URI partUri)
partUri
- URI to check.public static String getFilenameWithoutExtension(URI uri)
public static URI combine(URI prefix, URI suffix)
prefix
- the prefix URIsuffix
- the suffix URIpublic static String combine(String prefix, String suffix)
public static URI relativizeURI(URI sourceURI, URI targetURI, boolean msCompatible)
sourceURI
- The source part URI.targetURI
- The target part URI.msCompatible
- if true then remove leading slash from the relativized URI.
This flag violates [M1.4]: A part name shall start with a forward slash ('/') character, but
allows generating URIs compatible with MS Office and OpenOffice.null
.public static URI relativizeURI(URI sourceURI, URI targetURI)
sourceURI
- The source part URI.targetURI
- The target part URI.null
.public static URI resolvePartUri(URI sourcePartUri, URI targetUri)
sourcePartUri
- The source URI.targetUri
- The target URI.public static URI getSourcePartUriFromRelationshipPartUri(URI relationshipPartUri)
relationshipPartUri
- The relationship part use to retrieve the source part.public static PackagePartName createPartName(URI partUri) throws InvalidFormatException
partUri
- The part name URI to validate.null
.InvalidFormatException
- Throws if the specified URI is not OPC compliant.public static PackagePartName createPartName(String partName) throws InvalidFormatException
partName
- The part name to validate.null
.InvalidFormatException
- Throws if the specified part name is not OPC compliant.createPartName(URI)
public static PackagePartName createPartName(String partName, PackagePart relativePart) throws InvalidFormatException
partName
- The part name to validate.relativePart
- The relative base part.null
.InvalidFormatException
- Throws if the specified part name is not OPC compliant.createPartName(URI)
public static PackagePartName createPartName(URI partName, PackagePart relativePart) throws InvalidFormatException
partName
- The part name URI to validate.relativePart
- The relative base part.null
.InvalidFormatException
- Throws if the specified part name is not OPC compliant.createPartName(URI)
public static boolean isValidPartName(URI partUri)
partUri
- The URI to validate.createPartName(URI)
public static String decodeURI(URI uri)
uri
- The URI to decode.public static PackagePartName getRelationshipPartName(PackagePartName partName)
partName
- Source part URIInvalidOperationException
- Throws if the specified URI is a relationshp part.public static URI toURI(String value) throws URISyntaxException
URI
If part name is not a valid URI, it is resolved as follows:
1. Percent-encode each open bracket ([) and close bracket (]).
value
- the string to be parsed into a URIURISyntaxException
Copyright © 2020. All rights reserved.