]> source.dussan.org Git - poi.git/commitdiff
make hyperlink duplicatable
authorPJ Fanning <fanningpj@apache.org>
Sun, 19 Sep 2021 22:38:59 +0000 (22:38 +0000)
committerPJ Fanning <fanningpj@apache.org>
Sun, 19 Sep 2021 22:38:59 +0000 (22:38 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1893456 13f79535-47bb-0310-9956-ffa450edef68

poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFHyperlink.java

index 58ccde183e8cd52598007970a5fd9569fda69887..dca5a130e96e41dfe701ae18f189a837cd2241c4 100644 (file)
@@ -19,6 +19,7 @@ package org.apache.poi.xssf.usermodel;
 import java.net.URI;
 import java.net.URISyntaxException;
 
+import org.apache.poi.common.Duplicatable;
 import org.apache.poi.common.usermodel.HyperlinkType;
 import org.apache.poi.openxml4j.opc.PackagePart;
 import org.apache.poi.openxml4j.opc.PackageRelationship;
@@ -34,7 +35,7 @@ import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTHyperlink;
  * Note - unlike with HSSF, many kinds of hyperlink
  * are largely stored as relations of the sheet
  */
-public class XSSFHyperlink implements Hyperlink {
+public class XSSFHyperlink implements Hyperlink, Duplicatable {
     final private HyperlinkType _type;
     final private PackageRelationship _externalRel;
     final private CTHyperlink _ctHyperlink; //contains a reference to the cell where the hyperlink is anchored, getRef()
@@ -412,4 +413,13 @@ public class XSSFHyperlink implements Hyperlink {
     public void setTooltip(String text) {
         _ctHyperlink.setTooltip(text);
     }
+
+    /**
+     * @return a new XSSFHyperlink based on this
+     * @since POI 5.1.0
+     */
+    @Override
+    public Duplicatable copy() {
+        return new XSSFHyperlink(this);
+    }
 }