diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-02-14 19:02:08 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-02-14 19:02:08 +0000 |
| commit | 22c3592fb5fa5d79bd4cb6285a7fd8c61a493e9f (patch) | |
| tree | c90bf071df63763744f3388207bad946ef087839 /src/main/java/org/zwobble | |
| parent | d5b3447ec8832e893e096085052bd857649898ed (diff) | |
Add force write to bookmarks
Diffstat (limited to 'src/main/java/org/zwobble')
5 files changed, 21 insertions, 1 deletions
diff --git a/src/main/java/org/zwobble/mammoth/DocumentConverter.java b/src/main/java/org/zwobble/mammoth/DocumentConverter.java index a8d90f9..090b27b 100644 --- a/src/main/java/org/zwobble/mammoth/DocumentConverter.java +++ b/src/main/java/org/zwobble/mammoth/DocumentConverter.java @@ -159,7 +159,7 @@ public class DocumentConverter { @Override public List<HtmlNode> visit(Bookmark bookmark) { - return list(Html.element("a", map("id", generateId(bookmark.getName())))); + return list(Html.element("a", map("id", generateId(bookmark.getName())), list(Html.FORCE_WRITE))); } @Override diff --git a/src/main/java/org/zwobble/mammoth/html/Html.java b/src/main/java/org/zwobble/mammoth/html/Html.java index c22911d..ca9597a 100644 --- a/src/main/java/org/zwobble/mammoth/html/Html.java +++ b/src/main/java/org/zwobble/mammoth/html/Html.java @@ -7,6 +7,8 @@ import static org.zwobble.mammoth.util.MammothLists.list; import static org.zwobble.mammoth.util.MammothMaps.map; public class Html { + public static final HtmlNode FORCE_WRITE = HtmlForceWrite.FORCE_WRITE; + public static String write(List<HtmlNode> nodes) { StringBuilder builder = new StringBuilder(); nodes.forEach(node -> HtmlWriter.write(node, builder)); diff --git a/src/main/java/org/zwobble/mammoth/html/HtmlForceWrite.java b/src/main/java/org/zwobble/mammoth/html/HtmlForceWrite.java new file mode 100644 index 0000000..484be34 --- /dev/null +++ b/src/main/java/org/zwobble/mammoth/html/HtmlForceWrite.java @@ -0,0 +1,13 @@ +package org.zwobble.mammoth.html; + +public class HtmlForceWrite implements HtmlNode { + public static final HtmlForceWrite FORCE_WRITE = new HtmlForceWrite(); + + private HtmlForceWrite() { + } + + @Override + public void visit(Visitor visitor) { + visitor.visit(this); + } +} diff --git a/src/main/java/org/zwobble/mammoth/html/HtmlNode.java b/src/main/java/org/zwobble/mammoth/html/HtmlNode.java index a5fc622..823e362 100644 --- a/src/main/java/org/zwobble/mammoth/html/HtmlNode.java +++ b/src/main/java/org/zwobble/mammoth/html/HtmlNode.java @@ -7,5 +7,6 @@ public interface HtmlNode { void visit(HtmlElement element); void visit(HtmlSelfClosingElement element); void visit(HtmlTextNode node); + void visit(HtmlForceWrite forceWrite); } } diff --git a/src/main/java/org/zwobble/mammoth/html/HtmlWriter.java b/src/main/java/org/zwobble/mammoth/html/HtmlWriter.java index 35e763a..4174918 100644 --- a/src/main/java/org/zwobble/mammoth/html/HtmlWriter.java +++ b/src/main/java/org/zwobble/mammoth/html/HtmlWriter.java @@ -34,6 +34,10 @@ public class HtmlWriter { public void visit(HtmlTextNode node) { builder.append(HtmlWriter.escapeText(node.getValue())); } + + @Override + public void visit(HtmlForceWrite forceWrite) { + } }); } |
