public class RevisionGroupCollection
extends java.lang.Object
implements java.lang.Iterable
RevisionGroup objects that represent revision groups in the document.
To learn more, visit the Track Changes in a Document documentation article.
Remarks:
You do not create instances of this class directly. Use the RevisionCollection.getGroups() property to get revision groups present in a document.
Examples:
Shows how to get a group of revisions in a document.
Document doc = new Document(getMyDir() + "Revisions.docx");
RevisionGroup revisionGroup = doc.getRevisions().getGroups().get(0);
Shows how to print info about a group of revisions in a document.
Document doc = new Document(getMyDir() + "Revisions.docx");
Assert.assertEquals(7, doc.getRevisions().getGroups().getCount());
for (RevisionGroup group : doc.getRevisions().getGroups()) {
System.out.println(MessageFormat.format("Revision author: {0}; Revision type: {1} \n\tRevision text: {2}", group.getAuthor(), group.getRevisionType(), group.getText()));
}
| Modifier and Type | Method and Description |
|---|---|
RevisionGroup |
get(int index)
Returns a revision group at the specified index.
|
int |
getCount()
Returns the number of revision groups in the collection.
|
java.util.Iterator |
iterator()
Returns an enumerator object.
|
public java.util.Iterator iterator()
Examples:
Shows how to work with a document's collection of revisions.
Document doc = new Document(getMyDir() + "Revisions.docx");
RevisionCollection revisions = doc.getRevisions();
// This collection itself has a collection of revision groups.
// Each group is a sequence of adjacent revisions.
System.out.println(MessageFormat.format("{0} revision groups:", revisions.getGroups().getCount()));
// Iterate over the collection of groups and print the text that the revision concerns.
Iterator<RevisionGroup> e = revisions.getGroups().iterator();
while (e.hasNext()) {
RevisionGroup revisionGroup = e.next();
System.out.println(MessageFormat.format("\tGroup type \"{0}\", ", revisionGroup.getRevisionType()) +
MessageFormat.format("author: {0}, contents: [{1}]", revisionGroup.getAuthor(), revisionGroup.getText().trim()));
}
// Each Run that a revision affects gets a corresponding Revision object.
// The revisions' collection is considerably larger than the condensed form we printed above,
// depending on how many Runs we have segmented the document into during Microsoft Word editing.
System.out.println("\n{revisions.Count} revisions:");
Iterator<Revision> e1 = revisions.iterator();
while (e1.hasNext()) {
Revision revision = e1.next();
// A StyleDefinitionChange strictly affects styles and not document nodes. This means the "ParentStyle"
// property will always be in use, while the ParentNode will always be null.
// Since all other changes affect nodes, ParentNode will conversely be in use, and ParentStyle will be null.
if (revision.getRevisionType() == RevisionType.STYLE_DEFINITION_CHANGE) {
System.out.println(MessageFormat.format("\tRevision type \"{0}\", ", revision.getRevisionType()) +
MessageFormat.format("author: {0}, style: [{1}]", revision.getAuthor(), revision.getParentStyle().getName()));
} else {
System.out.println(MessageFormat.format("\tRevision type \"{0}\", ", revision.getRevisionType()) +
MessageFormat.format("author: {0}, contents: [{1}]", revision.getAuthor(), revision.getParentNode().getText().trim()));
}
}
// Reject all revisions via the collection, reverting the document to its original form.
revisions.rejectAll();
Assert.assertEquals(0, revisions.getCount());
iterator in interface java.lang.Iterablepublic RevisionGroup get(int index)
Examples:
Shows how to get a group of revisions in a document.
Document doc = new Document(getMyDir() + "Revisions.docx");
RevisionGroup revisionGroup = doc.getRevisions().getGroups().get(0);
public int getCount()
Examples:
Shows how to print info about a group of revisions in a document.
Document doc = new Document(getMyDir() + "Revisions.docx");
Assert.assertEquals(7, doc.getRevisions().getGroups().getCount());
for (RevisionGroup group : doc.getRevisions().getGroups()) {
System.out.println(MessageFormat.format("Revision author: {0}; Revision type: {1} \n\tRevision text: {2}", group.getAuthor(), group.getRevisionType(), group.getText()));
}