try {
String resolvedPartUri = URIHelper.resolvePartUri(rp.getSourceURI(), new URI(r.getTarget() ) ).toString();
resolvedPartUri = resolvedPartUri.substring(1);
Part part = rp.getPart(r);
// Or could have done:
// Part part = wordMLPackage.getParts().get(new PartName("/" + resolvedPartUri));
if (part!=null) {
printInfo(part, sb, indent);
}
if (part==null) {
sb.append("Part " + resolvedPartUri + " not found! \n");
} else if ( part instanceof org.docx4j.openpackaging.parts.ThemePart
|| part instanceof org.docx4j.openpackaging.parts.WordprocessingML.NumberingDefinitionsPart
|| part instanceof org.docx4j.openpackaging.parts.WordprocessingML.FontTablePart) {
deletions.add(r );
sb.append(".. DELETED" );
} else if (part instanceof org.docx4j.openpackaging.parts.WordprocessingML.StyleDefinitionsPart) {
if (!keepStyles) {
deletions.add(r );
sb.append(".. DELETED" );
} else {
sb.append(".. KEEPING" );
}
} else {
if (stripPropertiesParts
&& ( part instanceof org.docx4j.openpackaging.parts.DocPropsExtendedPart
|| part instanceof org.docx4j.openpackaging.parts.DocPropsCorePart
|| part instanceof org.docx4j.openpackaging.parts.DocPropsCustomPart
|| part instanceof org.docx4j.openpackaging.parts.WordprocessingML.WebSettingsPart
|| part instanceof org.docx4j.openpackaging.parts.WordprocessingML.DocumentSettingsPart)) {
deletions.add(r );
sb.append(".. DELETED" );
} else if ( part instanceof org.docx4j.openpackaging.parts.WordprocessingML.MainDocumentPart
|| part instanceof org.docx4j.openpackaging.parts.WordprocessingML.StyleDefinitionsPart
|| part instanceof org.docx4j.openpackaging.parts.WordprocessingML.HeaderPart) {
sb.append(".. KEEPING" );
if (part.getRelationshipsPart()==null) {
sb.append(".. no rels" );
} else {
traverseRelationships(wordMLPackage, part.getRelationshipsPart(), sb, indent + " ");
}
}
else if (defaultToDelete) {
// Delete it
deletions.add(r );