blob: 1740ec2022bf85f5c56420d42434b4cea0606fa9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
package org.zwobble.mammoth.internal.docx;
import org.zwobble.mammoth.internal.documents.Comment;
import org.zwobble.mammoth.internal.results.InternalResult;
import org.zwobble.mammoth.internal.xml.XmlElement;
import java.util.List;
import java.util.Optional;
public class CommentXmlReader {
private final BodyXmlReader bodyReader;
public CommentXmlReader(BodyXmlReader bodyReader) {
this.bodyReader = bodyReader;
}
public InternalResult<List<Comment>> readElement(XmlElement element) {
return InternalResult.flatMap(
element.findChildren("w:comment"),
this::readCommentElement
);
}
private InternalResult<Comment> readCommentElement(XmlElement element) {
String commentId = element.getAttribute("w:id");
return bodyReader.readElements(element.getChildren())
.toResult()
.map(children -> new Comment(
commentId,
children,
Optional.empty(),
Optional.empty()
));
}
}
|