From 62d9bacd9450e506a1f01f51a442fa33cb84389e Mon Sep 17 00:00:00 2001 From: Sascha Wunderlich Date: Tue, 15 Nov 2016 12:51:28 +0100 Subject: [PATCH] common: interface for DOT-file generation --- prism/src/common/Dottable.java | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 prism/src/common/Dottable.java diff --git a/prism/src/common/Dottable.java b/prism/src/common/Dottable.java new file mode 100644 index 00000000..9bde9fab --- /dev/null +++ b/prism/src/common/Dottable.java @@ -0,0 +1,27 @@ +package common; + +import prism.PrismException; +import prism.PrismFileLog; +import prism.PrismLog; + +public interface Dottable { + public default void exportToDotFile(String filename) throws PrismException { + try (PrismFileLog log = PrismFileLog.create(filename)) { + exportToDotFile(log); + } + } + + public default void exportToDotFile(PrismLog out) { + out.print(toDot()); + } + + public static String quoteForDot(String original) { + String result = original; + result = result.replaceAll("&", "&"); + result = result.replaceAll("<", "<"); + result = result.replaceAll(">", ">"); + return result; + } + + public String toDot(); +}