add javadoc

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1917140 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
PJ Fanning 2024-04-19 10:59:30 +00:00
parent ff7f1ea721
commit 6948f9031d
1 changed files with 56 additions and 27 deletions

View File

@ -739,6 +739,62 @@ public class POIXMLDocumentPart {
part.onDocumentRead(); part.onDocumentRead();
} }
/**
* Remove the reference relationship to the specified part in this package.
*
* @param relId the part which is to be removed
* @return true, if the relation was removed
* @since POI 5.2.6
*/
public boolean removeReferenceRelationship(String relId) {
ReferenceRelationship existing = referenceRelationships.remove(relId);
if (existing != null) {
packagePart.removeRelationship(relId);
return true;
}
return false;
}
/**
* Get the reference relationship with the specified id.
*
* @param relId the relation id
* @return the reference relationship or {@code null} if not found
* @since POI 5.2.6
*/
public ReferenceRelationship getReferenceRelationship(String relId) {
return referenceRelationships.get(relId);
}
/**
* Create a new reference relationship for this POIXMLDocumentPart.
*
* @param uri the URI of the target part
* @param isExternal true, if the target is an external resource
* @param relId the relation id
* @return the created reference relationship
* @since POI 5.2.6
*/
public HyperlinkRelationship createHyperlink(URI uri, boolean isExternal, String relId) {
PackageRelationship pr = packagePart.addRelationship(uri, isExternal ? TargetMode.EXTERNAL : TargetMode.INTERNAL,
PackageRelationshipTypes.HYPERLINK_PART, relId);
HyperlinkRelationship hyperlink = new HyperlinkRelationship(this, uri, isExternal, relId);
referenceRelationships.put(relId, hyperlink);
return hyperlink;
}
/**
* Returns an unmodifiable list of reference relationships for this POIXMLDocumentPart.
*
* @return reference relationships
* @since POI 5.2.6
*/
public List<ReferenceRelationship> getReferenceRelationships() {
List<ReferenceRelationship> list = new ArrayList<>(referenceRelationships.values());
return Collections.unmodifiableList(list);
}
/** /**
* Retrieves the core document part * Retrieves the core document part
* *
@ -772,31 +828,4 @@ public class POIXMLDocumentPart {
throw new POIXMLException("OOXML file structure broken/invalid", e); throw new POIXMLException("OOXML file structure broken/invalid", e);
} }
} }
public boolean removeReferenceRelationship(String relId) {
ReferenceRelationship existing = referenceRelationships.remove(relId);
if (existing != null) {
packagePart.removeRelationship(relId);
return true;
}
return false;
}
public ReferenceRelationship getReferenceRelationship(String relId) {
return referenceRelationships.get(relId);
}
public HyperlinkRelationship createHyperlink(URI uri, boolean isExternal, String relId) {
PackageRelationship pr = packagePart.addRelationship(uri, isExternal ? TargetMode.EXTERNAL : TargetMode.INTERNAL,
PackageRelationshipTypes.HYPERLINK_PART, relId);
HyperlinkRelationship hyperlink = new HyperlinkRelationship(this, uri, isExternal, relId);
referenceRelationships.put(relId, hyperlink);
return hyperlink;
}
public List<ReferenceRelationship> getReferenceRelationships() {
List<ReferenceRelationship> list = new ArrayList<>(referenceRelationships.values());
return Collections.unmodifiableList(list);
}
} }