diff options
| author | Michael Williamson <mike@zwobble.org> | 2017-03-27 22:38:32 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2017-03-27 22:38:32 +0100 |
| commit | ef7e872738fc9afdd4315797454257563b3014fe (patch) | |
| tree | afeb54aaac2b07bdc45e8499d1991d40568d612a /src/main/java/org/zwobble/mammoth/internal/docx/EmbeddedStyleMap.java | |
| parent | ba33e7b1e5aa6e72f1155cf6d091ba711e69cf90 (diff) | |
Return OptionalInt from findIndex
Diffstat (limited to 'src/main/java/org/zwobble/mammoth/internal/docx/EmbeddedStyleMap.java')
| -rw-r--r-- | src/main/java/org/zwobble/mammoth/internal/docx/EmbeddedStyleMap.java | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/docx/EmbeddedStyleMap.java b/src/main/java/org/zwobble/mammoth/internal/docx/EmbeddedStyleMap.java index 4acce3f..fc8bfb1 100644 --- a/src/main/java/org/zwobble/mammoth/internal/docx/EmbeddedStyleMap.java +++ b/src/main/java/org/zwobble/mammoth/internal/docx/EmbeddedStyleMap.java @@ -11,6 +11,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.Optional; +import java.util.OptionalInt; import static org.zwobble.mammoth.internal.util.Casts.tryCast; import static org.zwobble.mammoth.internal.util.Iterables.findIndex; @@ -64,7 +65,7 @@ public class EmbeddedStyleMap { } private static XmlElement updateOrAddElement(XmlElement parent, XmlElement element, String identifyingAttribute) { - int index = findIndex(parent.getChildren(), child -> + OptionalInt index = findIndex(parent.getChildren(), child -> tryCast(XmlElement.class, child) .map(childElement -> childElement.getName().equals(element.getName()) && @@ -74,10 +75,10 @@ public class EmbeddedStyleMap { ); List<XmlNode> children = new ArrayList<>(parent.getChildren()); - if (index == -1) { - children.add(element); + if (index.isPresent()) { + children.set(index.getAsInt(), element); } else { - children.set(index, element); + children.add(element); } return new XmlElement(parent.getName(), parent.getAttributes(), children); } |
