diff --git a/docs/interpreter/markdown.md b/docs/interpreter/markdown.md
index 36543d1142..30fd1a54a0 100644
--- a/docs/interpreter/markdown.md
+++ b/docs/interpreter/markdown.md
@@ -47,9 +47,10 @@ The markdown interpreter provides github flavored markdown.
-### Supproted Plugins
+### Supported Plugins
-`pegdown` parser provides [YUML](http://yuml.me/) and [Websequence](https://www.websequencediagrams.com/) extensions
+- [YUML](http://yuml.me/)
+- [Websequence](https://www.websequencediagrams.com/)
diff --git a/markdown/src/main/java/org/apache/zeppelin/markdown/PegdownWebSequencelPlugin.java b/markdown/src/main/java/org/apache/zeppelin/markdown/PegdownWebSequencelPlugin.java
index 7df5d23262..e207e1eceb 100644
--- a/markdown/src/main/java/org/apache/zeppelin/markdown/PegdownWebSequencelPlugin.java
+++ b/markdown/src/main/java/org/apache/zeppelin/markdown/PegdownWebSequencelPlugin.java
@@ -42,17 +42,17 @@ import java.nio.charset.StandardCharsets;
*/
public class PegdownWebSequencelPlugin extends Parser implements BlockPluginParser {
+ private static final String URL_WEBSEQUENCE = "http://www.websequencediagrams.com";
+
public PegdownWebSequencelPlugin() {
super(PegdownParser.OPTIONS,
PegdownParser.PARSING_TIMEOUT_AS_MILLIS,
DefaultParseRunnerProvider);
}
- public PegdownWebSequencelPlugin(Integer options,
- Long maxParsingTimeInMillis,
- ParseRunnerProvider parseRunnerProvider,
+ public PegdownWebSequencelPlugin(Integer options, Long millis, ParseRunnerProvider provider,
PegDownPlugins plugins) {
- super(options, maxParsingTimeInMillis, parseRunnerProvider, plugins);
+ super(options, millis, provider, plugins);
}
public static final String TAG = "%%%";
@@ -86,14 +86,15 @@ public class PegdownWebSequencelPlugin extends Parser implements BlockPluginPars
new TextNode(""))));
}
- public static String createWebsequenceUrl(String style,
- String content) {
+ public static String createWebsequenceUrl(String style, String content) {
style = StringUtils.defaultString(style, "default");
OutputStreamWriter writer = null;
BufferedReader reader = null;
+ String apiUrl = "";
+
try {
String query = new StringBuilder()
.append("style=")
@@ -103,7 +104,7 @@ public class PegdownWebSequencelPlugin extends Parser implements BlockPluginPars
.append("&apiVersion=1")
.toString();
- URL url = new URL("http://www.websequencediagrams.com");
+ URL url = new URL(URL_WEBSEQUENCE);
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
writer = new OutputStreamWriter(conn.getOutputStream(), StandardCharsets.UTF_8);
@@ -128,16 +129,16 @@ public class PegdownWebSequencelPlugin extends Parser implements BlockPluginPars
int end = json.indexOf("\"", start);
if (start != -1 && end != -1) {
- return "http://www.websequencediagrams.com/" + json.substring(start, end);
+ apiUrl = URL_WEBSEQUENCE + "/" + json.substring(start, end);
}
} catch (IOException e) {
- throw new RuntimeException("Failed to get proper response from websequencediagrams.com");
+ throw new RuntimeException("Failed to get proper response from websequencediagrams.com", e);
} finally {
IOUtils.closeQuietly(writer);
IOUtils.closeQuietly(reader);
}
- return "";
+ return apiUrl;
}
@Override