diff options
author | Brian de Alwis | 2016-03-10 22:02:37 +0000 |
---|---|---|
committer | Brian de Alwis | 2016-11-21 17:06:23 +0000 |
commit | a5b2e9430aa6276fd39d33b3b337c0e2520859e3 (patch) | |
tree | 3ab0465ca67e9625717e9d938ba01b11e0c9c6d2 /org.eclipse.help.webapp | |
parent | 47dca3655d8d8228703066e63ee7e8c25b731a9a (diff) | |
download | eclipse.platform.ua-a5b2e9430aa6276fd39d33b3b337c0e2520859e3.tar.gz eclipse.platform.ua-a5b2e9430aa6276fd39d33b3b337c0e2520859e3.tar.xz eclipse.platform.ua-a5b2e9430aa6276fd39d33b3b337c0e2520859e3.zip |
[Help] Fix JSON generation to create conformant JSONY20161229-1000Y20161223-1030Y20161222-1000Y20161215-1200Y20161208-1000Y20161201-1000Y20161124-1000S4_7_0_M4I20170101-2000I20161231-2000I20161230-2000I20161229-2000I20161228-2000I20161227-2000I20161226-2000I20161225-2000I20161224-2000I20161223-2000I20161223-0615I20161222-2000I20161221-2000I20161221-0400I20161220-2000I20161220-0530I20161219-2000I20161219-0145I20161218-2000I20161217-2000I20161216-2000I20161215-2000I20161215-0915I20161215-0830I20161215-0730I20161215-0130I20161214-2000I20161214-1005I20161213-2000I20161213-0600I20161213-0300I20161212-2000I20161211-2000I20161210-2000I20161208-0830I20161208-0730I20161207-2000I20161207-1340I20161207-0800I20161207-0515I20161206-2000I20161206-0800I20161205-2000I20161205-0800I20161204-2000I20161203-2000I20161202-2000I20161201-2000I20161201-0800I20161130-2000I20161129-2330I20161129-2000I20161128-2000I20161128-0600I20161128-0330I20161127-2000I20161127-1300I20161126-2000I20161126-0815I20161125-2000I20161124-2000I20161123-2000I20161122-2000
Change-Id: I5ac232360beff296d1c256a14a759912d9218cb7
Diffstat (limited to 'org.eclipse.help.webapp')
5 files changed, 20 insertions, 14 deletions
diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/AboutParser.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/AboutParser.java index d0c21f958..d24570b07 100644 --- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/AboutParser.java +++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/AboutParser.java @@ -102,13 +102,13 @@ public class AboutParser extends ResultParser { buf.append(JSonHelper.BEGIN_BRACE); buf.append(JSonHelper.NEWLINE + JSonHelper.SPACE); - buf.append(JSonHelper.IDENTIFIER); + buf.append(JSonHelper.getQuotes(JSonHelper.IDENTIFIER)); buf.append(JSonHelper.COLON); buf.append(JSonHelper.getQuotes(id)); buf.append(JSonHelper.COMMA); buf.append(JSonHelper.NEWLINE + JSonHelper.SPACE); - buf.append(JSonHelper.LABEL); + buf.append(JSonHelper.getQuotes(JSonHelper.LABEL)); buf.append(JSonHelper.COLON); buf.append(JSonHelper.getQuotes(label)); buf.append(JSonHelper.COMMA); diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/NavParser.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/NavParser.java index 0dcab04e8..c1446fa65 100644 --- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/NavParser.java +++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/NavParser.java @@ -60,13 +60,13 @@ public class NavParser extends ResultParser { buf.append(JSonHelper.BEGIN_BRACE); buf.append(JSonHelper.NEWLINE + JSonHelper.SPACE); - buf.append(JSonHelper.IDENTIFIER); + buf.append(JSonHelper.getQuotes(JSonHelper.IDENTIFIER)); buf.append(JSonHelper.COLON); buf.append(JSonHelper.getQuotes(id)); buf.append(JSonHelper.COMMA); buf.append(JSonHelper.NEWLINE + JSonHelper.SPACE); - buf.append(JSonHelper.LABEL); + buf.append(JSonHelper.getQuotes(JSonHelper.LABEL)); buf.append(JSonHelper.COLON); buf.append(JSonHelper.getQuotes(label)); buf.append(JSonHelper.COMMA); diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/ParseElement.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/ParseElement.java index 2e72fca8b..909d3839a 100644 --- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/ParseElement.java +++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/ParseElement.java @@ -82,7 +82,7 @@ public class ParseElement { String val = props.getProperty(key); buff.append(JSonHelper.NEWLINE + space + JSonHelper.SPACE); - buff.append(key); + buff.append(JSonHelper.getQuotes(key)); buff.append(JSonHelper.COLON); try { val = URLEncoder.encode(val, "UTF-8"); //$NON-NLS-1$ @@ -105,7 +105,7 @@ public class ParseElement { } else { buff.append(JSonHelper.NEWLINE + space + JSonHelper.SPACE); - buff.append(JSonHelper.CHILDREN); + buff.append(JSonHelper.getQuotes(JSonHelper.CHILDREN)); buff.append(JSonHelper.COLON); buff.append(JSonHelper.BEGIN_BRACKET); @@ -141,7 +141,7 @@ public class ParseElement { String val = props.getProperty(key); buff.append(JSonHelper.NEWLINE + JSonHelper.SPACE); - buff.append(key); + buff.append(JSonHelper.getQuotes(key)); buff.append(JSonHelper.COLON); try { val = URLEncoder.encode(val, "UTF-8"); //$NON-NLS-1$ @@ -164,7 +164,7 @@ public class ParseElement { } else { buff.append(JSonHelper.NEWLINE + JSonHelper.SPACE); - buff.append(JSonHelper.ITEMS); + buff.append(JSonHelper.getQuotes(JSonHelper.ITEMS)); buff.append(JSonHelper.COLON); buff.append(JSonHelper.BEGIN_BRACKET); diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/ResultParser.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/ResultParser.java index 48c905c6d..cd3829553 100644 --- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/ResultParser.java +++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/parser/ResultParser.java @@ -77,19 +77,19 @@ public class ResultParser extends DefaultHandler { buf.append(JSonHelper.BEGIN_BRACE); buf.append(JSonHelper.NEWLINE + JSonHelper.SPACE); - buf.append(JSonHelper.IDENTIFIER); + buf.append(JSonHelper.getQuotes(JSonHelper.IDENTIFIER)); buf.append(JSonHelper.COLON); buf.append(JSonHelper.getQuotes(id)); buf.append(JSonHelper.COMMA); buf.append(JSonHelper.NEWLINE + JSonHelper.SPACE); - buf.append(JSonHelper.LABEL); + buf.append(JSonHelper.getQuotes(JSonHelper.LABEL)); buf.append(JSonHelper.COLON); buf.append(JSonHelper.getQuotes(label)); buf.append(JSonHelper.COMMA); buf.append(JSonHelper.NEWLINE + JSonHelper.SPACE); - buf.append(JSonHelper.ITEMS); + buf.append(JSonHelper.getQuotes(JSonHelper.ITEMS)); buf.append(JSonHelper.COLON); buf.append(JSonHelper.BEGIN_BRACKET); diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/utils/JSonHelper.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/utils/JSonHelper.java index 225573048..1043d559f 100644 --- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/utils/JSonHelper.java +++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/utils/JSonHelper.java @@ -15,7 +15,7 @@ public final class JSonHelper { //JSON Characters public static final String BEGIN_BRACE = "{"; //$NON-NLS-1$ public static final String END_BRACE = "}"; //$NON-NLS-1$ - public static final String QUOTE = "\'"; //$NON-NLS-1$ + public static final String DOUBLEQUOTE = "\""; //$NON-NLS-1$ public static final String COLON = ":"; //$NON-NLS-1$ public static final String BEGIN_BRACKET = "["; //$NON-NLS-1$ public static final String END_BRACKET = "]"; //$NON-NLS-1$ @@ -52,8 +52,14 @@ public final class JSonHelper { public static final String TOPIC = "Topic"; //$NON-NLS-1$ public static final String NUMERIC_PATH = "NumericPath"; //$NON-NLS-1$ - public static String getQuotes(String str){ - return ((str != null)?QUOTE + str + QUOTE:""); //$NON-NLS-1$ + public static String getQuotes(String str) { + if (str == null) { + return ""; //$NON-NLS-1$ + } + if (str.indexOf(DOUBLEQUOTE) < 0) { + return DOUBLEQUOTE + str + DOUBLEQUOTE; + } + return DOUBLEQUOTE + str.replaceAll(DOUBLEQUOTE, "\\\\" + DOUBLEQUOTE) + DOUBLEQUOTE; //$NON-NLS-1$ } } |