From 3e2786a004eddf968a5fa7d5a92dff5b1b5f7734 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Wed, 24 Feb 2016 08:16:16 +0000 Subject: Create internal package --- .../mammoth/internal/documents/Hyperlink.java | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 src/main/java/org/zwobble/mammoth/internal/documents/Hyperlink.java (limited to 'src/main/java/org/zwobble/mammoth/internal/documents/Hyperlink.java') diff --git a/src/main/java/org/zwobble/mammoth/internal/documents/Hyperlink.java b/src/main/java/org/zwobble/mammoth/internal/documents/Hyperlink.java new file mode 100644 index 0000000..ceb558f --- /dev/null +++ b/src/main/java/org/zwobble/mammoth/internal/documents/Hyperlink.java @@ -0,0 +1,42 @@ +package org.zwobble.mammoth.internal.documents; + +import java.util.List; +import java.util.Optional; + +public class Hyperlink implements DocumentElement, HasChildren { + public static Hyperlink href(String href, List children) { + return new Hyperlink(Optional.of(href), Optional.empty(), children); + } + + public static Hyperlink anchor(String anchor, List children) { + return new Hyperlink(Optional.empty(), Optional.of(anchor), children); + } + + private final Optional href; + private final Optional anchor; + private final List children; + + private Hyperlink(Optional href, Optional anchor, List children) { + this.href = href; + this.anchor = anchor; + this.children = children; + } + + public Optional getHref() { + return href; + } + + public Optional getAnchor() { + return anchor; + } + + @Override + public List getChildren() { + return children; + } + + @Override + public T accept(DocumentElementVisitor visitor) { + return visitor.visit(this); + } +} -- cgit v1.2.3