diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-02-13 21:31:19 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-02-13 21:31:19 +0000 |
| commit | 573ad1b23218f872ec34311812a76ce4a9951e11 (patch) | |
| tree | 31ebdda5fef77bb4a45109154b7de90cb623899c /src/main/java/org | |
| parent | ed074b78dbb2a0d15ccb985b1e9531aace0fd4ea (diff) | |
Read endnote references
Diffstat (limited to 'src/main/java/org')
3 files changed, 19 insertions, 5 deletions
diff --git a/src/main/java/org/zwobble/mammoth/documents/NoteReference.java b/src/main/java/org/zwobble/mammoth/documents/NoteReference.java index 05311c0..01fff95 100644 --- a/src/main/java/org/zwobble/mammoth/documents/NoteReference.java +++ b/src/main/java/org/zwobble/mammoth/documents/NoteReference.java @@ -2,12 +2,18 @@ package org.zwobble.mammoth.documents; public class NoteReference implements DocumentElement { public static NoteReference footnoteReference(String noteId) { - return new NoteReference(noteId); + return new NoteReference(NoteType.FOOTNOTE, noteId); } + public static NoteReference endnoteReference(String noteId) { + return new NoteReference(NoteType.ENDNOTE, noteId); + } + + private final NoteType noteType; private final String noteId; - public NoteReference(String noteId) { + public NoteReference(NoteType noteType, String noteId) { + this.noteType = noteType; this.noteId = noteId; } diff --git a/src/main/java/org/zwobble/mammoth/documents/NoteType.java b/src/main/java/org/zwobble/mammoth/documents/NoteType.java new file mode 100644 index 0000000..02549d8 --- /dev/null +++ b/src/main/java/org/zwobble/mammoth/documents/NoteType.java @@ -0,0 +1,6 @@ +package org.zwobble.mammoth.documents; + +public enum NoteType { + FOOTNOTE, + ENDNOTE +} diff --git a/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java b/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java index 5fe6f80..c8e1785 100644 --- a/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java +++ b/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java @@ -55,7 +55,9 @@ public class BodyXmlReader { case "w:bookmarkStart": return readBookmark(element); case "w:footnoteReference": - return readNoteReference(element); + return readNoteReference(NoteType.FOOTNOTE, element); + case "w:endnoteReference": + return readNoteReference(NoteType.ENDNOTE, element); case "w:ins": case "w:smartTag": @@ -214,9 +216,9 @@ public class BodyXmlReader { } } - private ReadResult readNoteReference(XmlElement element) { + private ReadResult readNoteReference(NoteType noteType, XmlElement element) { String noteId = element.getAttribute("w:id"); - return success(new NoteReference(noteId)); + return success(new NoteReference(noteType, noteId)); } private Optional<String> readVal(XmlElementLike element, String name) { |
