Package org.apache.poi.openxml4j.opc
Interface RelationshipSource
- All Known Implementing Classes:
MemoryPackagePart
,OPCPackage
,PackagePart
,PackagePropertiesPart
,ZipPackage
,ZipPackagePart
public interface RelationshipSource
-
Method Summary
Modifier and TypeMethodDescriptionaddExternalRelationship
(String target, String relationshipType) Adds an external relationship to a part (except relationships part).addExternalRelationship
(String target, String relationshipType, String id) Adds an external relationship to a part (except relationships part).addRelationship
(PackagePartName targetPartName, TargetMode targetMode, String relationshipType) Add a relationship to a part (except relationships part).addRelationship
(PackagePartName targetPartName, TargetMode targetMode, String relationshipType, String id) Add a relationship to a part (except relationships part).void
Delete all the relationships attached to this.Retrieves a package relationship from its id.Retrieve all the relationships attached to this.getRelationshipsByType
(String relationshipType) Retrieve all relationships attached to this part which have the specified type.boolean
Knows if the part have any relationships.boolean
Checks if the specified relationship is part of this package part.void
Delete the relationship specified by its id.
-
Method Details
-
addRelationship
PackageRelationship addRelationship(PackagePartName targetPartName, TargetMode targetMode, String relationshipType) Add a relationship to a part (except relationships part).- Parameters:
targetPartName
- Name of the target part. This one must be relative to the source root directory of the part.targetMode
- Mode [Internal|External].relationshipType
- Type of relationship.- Returns:
- The newly created and added relationship
-
addRelationship
PackageRelationship addRelationship(PackagePartName targetPartName, TargetMode targetMode, String relationshipType, String id) Add a relationship to a part (except relationships part).Check rule M1.25: The Relationships part shall not have relationships to any other part. Package implementers shall enforce this requirement upon the attempt to create such a relationship and shall treat any such relationship as invalid.
- Parameters:
targetPartName
- Name of the target part. This one must be relative to the source root directory of the part.targetMode
- Mode [Internal|External].relationshipType
- Type of relationship.id
- Relationship unique id.- Returns:
- The newly created and added relationship
- Throws:
InvalidFormatException
- If the URI point to a relationship part URI.
-
addExternalRelationship
Adds an external relationship to a part (except relationships part). The targets of external relationships are not subject to the same validity checks that internal ones are, as the contents is potentially any file, URL or similar.- Parameters:
target
- External target of the relationshiprelationshipType
- Type of relationship.- Returns:
- The newly created and added relationship
- See Also:
-
addExternalRelationship
Adds an external relationship to a part (except relationships part). The targets of external relationships are not subject to the same validity checks that internal ones are, as the contents is potentially any file, URL or similar.- Parameters:
target
- External target of the relationshiprelationshipType
- Type of relationship.id
- Relationship unique id.- Returns:
- The newly created and added relationship
- See Also:
-
clearRelationships
void clearRelationships()Delete all the relationships attached to this. -
removeRelationship
Delete the relationship specified by its id.- Parameters:
id
- The ID identified the part to delete.
-
getRelationships
Retrieve all the relationships attached to this.- Returns:
- This part's relationships.
- Throws:
OpenXML4JException
InvalidFormatException
-
getRelationship
Retrieves a package relationship from its id.- Parameters:
id
- ID of the package relationship to retrieve.- Returns:
- The package relationship
-
getRelationshipsByType
PackageRelationshipCollection getRelationshipsByType(String relationshipType) throws InvalidFormatException, IllegalArgumentException, OpenXML4JException Retrieve all relationships attached to this part which have the specified type.- Parameters:
relationshipType
- Relationship type filter.- Returns:
- All relationships from this part that have the specified type.
- Throws:
InvalidFormatException
- If an error occurs while parsing the part.InvalidOperationException
- If the package is open in write only mode.IllegalArgumentException
OpenXML4JException
-
hasRelationships
boolean hasRelationships()Knows if the part have any relationships.- Returns:
- true if the part have at least one relationship else false.
-
isRelationshipExists
Checks if the specified relationship is part of this package part.- Parameters:
rel
- The relationship to check.- Returns:
- true if the specified relationship exists in this part, else returns false
-