- From: Sijtsche Smeman <sijtsche@dev.w3.org>
- Date: Thu, 25 Nov 2004 13:23:27 +0000
- To: www-validator-cvs@w3.org
Update of /sources/public/2002/css-validator/org/w3c/css/css
In directory hutz:/tmp/cvs-serv10053/css
Modified Files:
StyleSheetGeneratorHTML2.java
Log Message:
HTML output escaped
Index: StyleSheetGeneratorHTML2.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/css/StyleSheetGeneratorHTML2.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- StyleSheetGeneratorHTML2.java 6 Oct 2004 10:03:19 -0000 1.9
+++ StyleSheetGeneratorHTML2.java 25 Nov 2004 13:23:25 -0000 1.10
@@ -74,523 +74,524 @@
* (-1 means no warnings)
*/
public StyleSheetGeneratorHTML2(ApplContext ac,
- String title,
- StyleSheet style,
- String document,
- int warningLevel) {
+ String title,
+ StyleSheet style,
+ String document,
+ int warningLevel) {
- if (document == null) {
- document = "html.en";
- }
- if (Util.onDebug) {
- System.err.println( "document format is " + document );
- }
- this.ac = ac;
- this.style = style;
- general = new Properties(setDocumentBase(getDocumentName(ac, document)));
- general.put("file-title", title);
- warnings = style.getWarnings();
- errors = style.getErrors();
- items = style.newGetRules();
+ if (document == null) {
+ document = "html.en";
+ }
+ if (Util.onDebug) {
+ System.err.println( "document format is " + document );
+ }
+ this.ac = ac;
+ this.style = style;
+ general = new Properties(setDocumentBase(getDocumentName(ac, document)));
+ general.put("file-title", title);
+ warnings = style.getWarnings();
+ errors = style.getErrors();
+ items = style.newGetRules();
- this.warningLevel = warningLevel;
-
- general.put("errors-count",
- Integer.toString(errors.getErrorCount()));
- general.put("warnings-count",
- Integer.toString(warnings.getWarningCount()));
- general.put("rules-count",
- Integer.toString(items.size()));
-
- if (errors.getErrorCount() == 0) {
- desactivateError();
- }
- if ((errors.getErrorCount() != 0)
- || (!title.startsWith("http://"))) {
- general.put("no-errors", "");
- }
- if (style.charset == null) {
- general.put("charset-rule", "");
- }
- if (warnings.getWarningCount() == 0 || warningLevel == -1) {
- general.put("go-warnings", ""); // remove go-warnings
- general.put("warnings", ""); // remove warnings
- }
- if (items.size() == 0) {
- general.put("go-rules", ""); // remove go-rules
- general.put("rules", ""); // remove rules
- general.put("no-errors", "");
- } else {
- general.put("no-rules", ""); // remove no-rules
- }
-
- if (errors.getErrorCount() != 0 || warnings.getWarningCount() != 0) {
- // remove no-error-or-warning
- general.put("no-error-or-warning", "");
- }
+ this.warningLevel = warningLevel;
+
+ general.put("errors-count",
+ Integer.toString(errors.getErrorCount()));
+ general.put("warnings-count",
+ Integer.toString(warnings.getWarningCount()));
+ general.put("rules-count",
+ Integer.toString(items.size()));
+
+ if (errors.getErrorCount() == 0) {
+ desactivateError();
+ }
+ if ((errors.getErrorCount() != 0)
+ || (!title.startsWith("http://"))) {
+ general.put("no-errors", "");
+ }
+ if (style.charset == null) {
+ general.put("charset-rule", "");
+ }
+ if (warnings.getWarningCount() == 0 || warningLevel == -1) {
+ general.put("go-warnings", ""); // remove go-warnings
+ general.put("warnings", ""); // remove warnings
+ }
+ if (items.size() == 0) {
+ general.put("go-rules", ""); // remove go-rules
+ general.put("rules", ""); // remove rules
+ general.put("no-errors", "");
+ } else {
+ general.put("no-rules", ""); // remove no-rules
+ }
+
+ if (errors.getErrorCount() != 0 || warnings.getWarningCount() != 0) {
+ // remove no-error-or-warning
+ general.put("no-error-or-warning", "");
+ }
- if (Util.onDebug) general.list(System.err);
+ if (Util.onDebug) general.list(System.err);
- DateFormat df = null;
+ DateFormat df = null;
- if (ac.getLang() != null) {
- try {
- df = DateFormat
- .getDateTimeInstance(DateFormat.FULL,
- DateFormat.FULL,
- new Locale(ac.getLang().substring(0, 2),
- "US"));
- } catch (Exception e) {
- df = DateFormat.getDateTimeInstance(DateFormat.FULL,
- DateFormat.FULL,
- Locale.US);
- }
- }
- if (df != null) {
- general.put("today", df.format(new Date()));
- } else {
- general.put("today", new Date().toString());
- }
+ if (ac.getLang() != null) {
+ try {
+ df = DateFormat
+ .getDateTimeInstance(DateFormat.FULL,
+ DateFormat.FULL,
+ new Locale(ac.getLang().substring(0, 2),
+ "US"));
+ } catch (Exception e) {
+ df = DateFormat.getDateTimeInstance(DateFormat.FULL,
+ DateFormat.FULL,
+ Locale.US);
+ }
+ }
+ if (df != null) {
+ general.put("today", df.format(new Date()));
+ } else {
+ general.put("today", new Date().toString());
+ }
}
public void desactivateError() {
- general.put("go-errors", ""); // remove go-errors
- general.put("errors", ""); // remove errors
+ general.put("go-errors", ""); // remove go-errors
+ general.put("errors", ""); // remove errors
}
/**
* Returns a string representation of the object.
*/
public void print(PrintWriter out) {
- this.out = out; // must be in first !
- String output = processSimple("document");
- if (output != null) {
- out.println(output);
- } else {
- out.println(ac.getMsg().getGeneratorString("request"));
- }
-
- out.flush();
+ this.out = out; // must be in first !
+ String output = processSimple("document");
+ if (output != null) {
+ out.println(output);
+ } else {
+ out.println(ac.getMsg().getGeneratorString("request"));
+ }
+
+ out.flush();
}
// prints the stylesheet at the screen
public void produceStyleSheet() {
- Vector atRules = style.newGetRules();
- for (int idx = 0; idx < atRules.size(); idx++) {
-// out.print(((CssRuleList)atRules.elementAt(idx)).toHTML());
- ((CssRuleList)atRules.elementAt(idx)).toHTML(out);
- out.print("\n");
- }
+ Vector atRules = style.newGetRules();
+ for (int idx = 0; idx < atRules.size(); idx++) {
+// out.print(((CssRuleList)atRules.elementAt(idx)).toHTML());
+ ((CssRuleList)atRules.elementAt(idx)).toHTML(out);
+ out.print("\n");
+ }
}
public void print(CssProperty property) {
- Properties prop = new Properties(general);
- prop.put("property-name", property.getPropertyName().toString());
- prop.put("property-value", property.toString());
-
- if (!property.getImportant()) {
- prop.put("important-style", "");
- }
- out.print(processStyle(prop.getProperty("declaration"), prop));
+ Properties prop = new Properties(general);
+ prop.put("property-name", property.getPropertyName().toString());
+ prop.put("property-value", property.toString());
+
+ if (!property.getImportant()) {
+ prop.put("important-style", "");
+ }
+ out.print(processStyle(prop.getProperty("declaration"), prop));
}
public void produceParseException(CssParseException error,
- StringBuffer ret) {
- ret.append(' ');
- if (error.getContexts() != null && error.getContexts().size() != 0) {
- StringBuffer buf = new StringBuffer();
- for (Enumeration e = error.getContexts().elements();
- e.hasMoreElements();) {
- Object t = e.nextElement();
- if (t != null) {
- buf.append(t);
- if (e.hasMoreElements())
- buf.append(", ");
- }
- }
- if (buf.length() != 0) {
- ret.append(ac.getMsg().getGeneratorString("context"));
- ret.append(" : <span class='error'>").append(buf);
- ret.append("</span> ");
- }
- }
- ret.append("\n<p>");
- String name = error.getProperty();
- if ((name != null) && (getURLProperty(name) != null)) {
- ret.append(ac.getMsg().getGeneratorString("property"));
- ret.append(" : <a href=\"");
- ret.append(getURLProperty("@url-base"));
- ret.append(getURLProperty(name)).append("\">");
- ret.append(name).append("</a>");
- }
- if ((error.getException() != null) && (error.getMessage() != null)) {
- if (error.isParseException()) {
- ret.append(queryReplace(error.getMessage())).append('\n');
- } else {
- Exception ex = error.getException();
- if (ex instanceof NumberFormatException) {
- ret.append(ac.getMsg().getGeneratorString("invalid-number"));
- } else {
- ret.append(queryReplace(ex.getMessage()));
- }
- }
- if (error.getSkippedString() != null) {
- ret.append(" : <span>");
- ret.append(queryReplace(error.getSkippedString()));
- ret.append("</span>\n");
- } else if (error.getExp() != null) {
- ret.append(" : ");
- ret.append(queryReplace(error.getExp().toStringFromStart()));
- ret.append("<span>");
- ret.append(queryReplace(error.getExp().toString()));
- ret.append("</span>\n");
- }
- } else {
- ret.append(ac.getMsg().getGeneratorString("unrecognize"));
- ret.append(" - <span class='error'>");
- ret.append(queryReplace(error.getSkippedString()));
- ret.append("</span>\n");
- }
-
+ StringBuffer ret) {
+ ret.append(' ');
+ if (error.getContexts() != null && error.getContexts().size() != 0) {
+ StringBuffer buf = new StringBuffer();
+ for (Enumeration e = error.getContexts().elements();
+ e.hasMoreElements();) {
+ Object t = e.nextElement();
+ if (t != null) {
+ buf.append(t);
+ if (e.hasMoreElements())
+ buf.append(", ");
+ }
+ }
+ if (buf.length() != 0) {
+ ret.append(ac.getMsg().getGeneratorString("context"));
+ ret.append(" : <span class='error'>").append(buf);
+ ret.append("</span> ");
+ }
+ }
+ ret.append("\n<p>");
+ String name = error.getProperty();
+ if ((name != null) && (getURLProperty(name) != null)) {
+ ret.append(ac.getMsg().getGeneratorString("property"));
+ ret.append(" : <a href=\"");
+ ret.append(getURLProperty("@url-base"));
+ ret.append(getURLProperty(name)).append("\">");
+ ret.append(name).append("</a>");
+ }
+ if ((error.getException() != null) && (error.getMessage() != null)) {
+ if (error.isParseException()) {
+ ret.append(queryReplace(error.getMessage())).append('\n');
+ } else {
+ Exception ex = error.getException();
+ if (ex instanceof NumberFormatException) {
+ ret.append(ac.getMsg().getGeneratorString("invalid-number"));
+ } else {
+ ret.append(queryReplace(ex.getMessage()));
+ }
+ }
+ if (error.getSkippedString() != null) {
+ ret.append(" : <span>");
+ ret.append(queryReplace(error.getSkippedString()));
+ ret.append("</span>\n");
+ } else if (error.getExp() != null) {
+ ret.append(" : ");
+ ret.append(queryReplace(error.getExp().toStringFromStart()));
+ ret.append("<span>");
+ ret.append(queryReplace(error.getExp().toString()));
+ ret.append("</span>\n");
+ }
+ } else {
+ ret.append(ac.getMsg().getGeneratorString("unrecognize"));
+ ret.append(" - <span class='error'>");
+ ret.append(queryReplace(error.getSkippedString()));
+ ret.append("</span>\n");
+ }
+
}
public void produceError() {
- StringBuffer ret = new StringBuffer(1024);
- String oldSourceFile = null;
- boolean open = false;
+ StringBuffer ret = new StringBuffer(1024);
+ String oldSourceFile = null;
+ boolean open = false;
- try {
- if (errors.getErrorCount() != 0) {
- int i = 0;
- for (CssError[] error = errors.getErrors();
- i < error.length; i++) {
- Exception ex = error[i].getException();
- String file = error[i].getSourceFile();
- if (!file.equals(oldSourceFile)) {
- oldSourceFile = file;
- if (open) {
- ret.append("</ul>\n</div>");
- }
- ret.append("\n<div><h3>URI : "
- + "<a href=\"");
- ret.append(file).append("\">");
- ret.append(file).append("</a></h3><ul>");
- open = true;
- }
- ret.append("\n<li>");
- ret.append(ac.getMsg().getGeneratorString("line"));
- ret.append(": ").append(error[i].getLine());
- if (ex instanceof FileNotFoundException) {
- ret.append("\n<p>");
- ret.append(ac.getMsg().getGeneratorString("not-found"));
- ret.append("<span class='error'>");
- ret.append(ex.getMessage());
- ret.append("</span>\n");
- } else if (ex instanceof CssParseException) {
- produceParseException((CssParseException) ex, ret);
- } else if (ex instanceof InvalidParamException) {
- ret.append("\n<p>");
- ret.append(queryReplace(ex.getMessage())).append('\n');
- } else if (ex instanceof IOException) {
- ret.append("\n<p>");
- String stringError = ex.toString();
- int index = stringError.indexOf(':');
- ret.append(stringError.substring(0, index));
- ret.append(" : <span class='error'>");
- ret.append(ex.getMessage()).append("</strong>\n");
- } else if (error[i] instanceof CssErrorToken) {
- ret.append("\n<p>");
- CssErrorToken terror = (CssErrorToken) error[i];
- ret.append(terror.getErrorDescription()).append(" : ");
- ret.append(terror.getSkippedString()).append('\n');
- } else {
- ret.append("\n<p>" +
- "<span class='error'>Uncaught error</span> ");
- ret.append(ex).append('\n');
-
- if (ex instanceof NullPointerException) {
- // ohoh, a bug
- ex.printStackTrace();
- }
- }
- ret.append("</p></li>");
- }
- if (open) {
- ret.append("\n</ul>");
- }
- ret.append("</div>");
- }
+ try {
+ if (errors.getErrorCount() != 0) {
+ int i = 0;
+ for (CssError[] error = errors.getErrors();
+ i < error.length; i++) {
+ Exception ex = error[i].getException();
+ String file = error[i].getSourceFile();
+ if (!file.equals(oldSourceFile)) {
+ oldSourceFile = file;
+ if (open) {
+ ret.append("</ul>\n</div>");
+ }
+ ret.append("\n<div><h3>URI : "
+ + "<a href=\"");
+ ret.append(file).append("\">");
+ ret.append(file).append("</a></h3><ul>");
+ open = true;
+ }
+ ret.append("\n<li>");
+ ret.append(ac.getMsg().getGeneratorString("line"));
+ ret.append(": ").append(error[i].getLine());
+ if (ex instanceof FileNotFoundException) {
+ ret.append("\n<p>");
+ ret.append(ac.getMsg().getGeneratorString("not-found"));
+ ret.append("<span class='error'>");
+ ret.append(ex.getMessage());
+ ret.append("</span>\n");
+ } else if (ex instanceof CssParseException) {
+ produceParseException((CssParseException) ex, ret);
+ } else if (ex instanceof InvalidParamException) {
+ ret.append("\n<p>");
+ ret.append(queryReplace(ex.getMessage())).append('\n');
+ } else if (ex instanceof IOException) {
+ ret.append("\n<p>");
+ String stringError = ex.toString();
+ int index = stringError.indexOf(':');
+ ret.append(stringError.substring(0, index));
+ ret.append(" : <span class='error'>");
+ ret.append(ex.getMessage()).append("</strong>\n");
+ } else if (error[i] instanceof CssErrorToken) {
+ ret.append("\n<p>");
+ CssErrorToken terror = (CssErrorToken) error[i];
+ ret.append(terror.getErrorDescription()).append(" : ");
+ ret.append(terror.getSkippedString()).append('\n');
+ } else {
+ ret.append("\n<p>" +
+ "<span class='error'>Uncaught error</span> ");
+ ret.append(ex).append('\n');
+
+ if (ex instanceof NullPointerException) {
+ // ohoh, a bug
+ ex.printStackTrace();
+ }
+ }
+ ret.append("</p></li>");
+ }
+ if (open) {
+ ret.append("\n</ul>");
+ }
+ ret.append("</div>");
+ }
- out.println(ret.toString());
- } catch (Exception e) {
- out.println(ac.getMsg().getGeneratorString("request"));
- e.printStackTrace();
- }
+ out.println(ret.toString());
+ } catch (Exception e) {
+ out.println(ac.getMsg().getGeneratorString("request"));
+ e.printStackTrace();
+ }
}
public void produceWarning() {
- boolean open = false;
- StringBuffer ret = new StringBuffer(1024);
- String oldSourceFile = "";
- int oldLine = -1;
- String oldMessage = "";
- try {
- if (warnings.getWarningCount() != 0) {
- int i = 0;
- warnings.sort();
- for (Warning[] warning = warnings.getWarnings();
- i < warning.length; i++) {
-
- Warning warn = warning[i];
- if (warn.getLevel() <= warningLevel) {
- if (!warn.getSourceFile().equals(oldSourceFile)) {
- if (open) {
- ret.append("\n</ul></div>");
- }
- oldSourceFile = warn.getSourceFile();
- ret.append("\n<div><h3>URI : <a href=\"");
- ret.append(oldSourceFile).append("\">");
- ret.append(oldSourceFile).append("</a></h3><ul>");
- open = true;
- }
- if (warn.getLine() != oldLine ||
- !warn.getWarningMessage().equals(oldMessage)) {
- oldLine = warn.getLine();
- oldMessage = warn.getWarningMessage();
- ret.append("\n<li><span class='warning'>Line : ");
- ret.append(oldLine);
-
- if (warn.getLevel() != 0) {
- ret.append(" Level : ");
- ret.append(warn.getLevel());
- }
- ret.append("</span> ");
- ret.append(oldMessage);
-
- if (warn.getContext() != null) {
- ret.append(" : ").append(warn.getContext());
- }
- ret.append("</li>");
- }
- }
- }
- if (open) {
- ret.append("\n</ul>");
- }
- ret.append("</div>");
- }
- out.println(ret.toString());
- } catch (Exception e) {
- out.println(ac.getMsg().getGeneratorString("request"));
- e.printStackTrace();
- }
+ System.out.println("In producewarning");
+ boolean open = false;
+ StringBuffer ret = new StringBuffer(1024);
+ String oldSourceFile = "";
+ int oldLine = -1;
+ String oldMessage = "";
+ try {
+ if (warnings.getWarningCount() != 0) {
+ int i = 0;
+ warnings.sort();
+ for (Warning[] warning = warnings.getWarnings();
+ i < warning.length; i++) {
+
+ Warning warn = warning[i];
+ if (warn.getLevel() <= warningLevel) {
+ if (!warn.getSourceFile().equals(oldSourceFile)) {
+ if (open) {
+ ret.append("\n</ul></div>");
+ }
+ oldSourceFile = warn.getSourceFile();
+ ret.append("\n<div><h3>URI : <a href=\"");
+ ret.append(oldSourceFile).append("\">");
+ ret.append(oldSourceFile).append("</a></h3><ul>");
+ open = true;
+ }
+ if (warn.getLine() != oldLine ||
+ !warn.getWarningMessage().equals(oldMessage)) {
+ oldLine = warn.getLine();
+ oldMessage = warn.getWarningMessage();
+ ret.append("\n<li><span class='warning'>Line : ");
+ ret.append(oldLine);
+
+ if (warn.getLevel() != 0) {
+ ret.append(" Level : ");
+ ret.append(warn.getLevel());
+ }
+ ret.append("</span> ");
+ ret.append(Util.escapeHTML(oldMessage));
+
+ if (warn.getContext() != null) {
+ ret.append(" : ").append(warn.getContext());
+ }
+ ret.append("</li>");
+ }
+ }
+ }
+ if (open) {
+ ret.append("\n</ul>");
+ }
+ ret.append("</div>");
+ }
+ out.println(ret.toString());
+ } catch (Exception e) {
+ out.println(ac.getMsg().getGeneratorString("request"));
+ e.printStackTrace();
+ }
}
private String queryReplace(String s) {
- if (s != null) {
- int len = s.length();
- StringBuffer ret = new StringBuffer(len);
-
- for (int i = 0; i < len; i++) {
- char c = s.charAt(i);
- if (c == '<') {
- ret.append("<");
- } else if (c == '>') {
- ret.append(">");
- } else {
- ret.append(c);
- }
- }
- return ret.toString();
- } else {
- return "[empty string]";
- }
+ if (s != null) {
+ int len = s.length();
+ StringBuffer ret = new StringBuffer(len);
+
+ for (int i = 0; i < len; i++) {
+ char c = s.charAt(i);
+ if (c == '<') {
+ ret.append("<");
+ } else if (c == '>') {
+ ret.append(">");
+ } else {
+ ret.append(c);
+ }
+ }
+ return ret.toString();
+ } else {
+ return "[empty string]";
+ }
}
private final String processSimple(String s) {
- return processStyle(general.getProperty(s), general);
+ return processStyle(general.getProperty(s), general);
}
- private String processStyle(String str, Properties prop) {
- try {
- int i = 0;
- while ((i = str.indexOf("<!-- #", i)) >= 0) {
- int lastIndexOfEntity = str.indexOf("-->", i);
- String entity =
- str.substring(i+6,
- lastIndexOfEntity - 1).toLowerCase();
+ private String processStyle(String str, Properties prop) {
+ try {
+ int i = 0;
+ while ((i = str.indexOf("<!-- #", i)) >= 0) {
+ int lastIndexOfEntity = str.indexOf("-->", i);
+ String entity =
+ str.substring(i+6,
+ lastIndexOfEntity - 1).toLowerCase();
- if (entity.equals("rule")) {
+ if (entity.equals("rule")) {
out.print(str.substring(0, i));
- str = str.substring(lastIndexOfEntity+3);
- i = 0;
- produceStyleSheet();
- } else if (entity.equals("selectors")) {
- if (selector.getNext() != null) {
- // contextuals selectors
- String value = prop.getProperty(entity);
- if (value != null) {
- str = str.substring(0, i) + value +
- str.substring(lastIndexOfEntity+3);
- } else {
- i += 6; // skip this unknown entity
- }
- } else {
- str = str.substring(lastIndexOfEntity+3);
- i = 0;
- }
- } else if (entity.equals("selector")) {
- str = str.substring(lastIndexOfEntity+3);
- i = 0;
- } else if (entity.equals("charset")) {
- str = str.substring(lastIndexOfEntity+3);
- i = 0;
- out.print(style.charset);
- } else if (entity.equals("declaration")) {
- str = str.substring(lastIndexOfEntity+3);
- i = 0;
- } else if (entity.equals("warning")) {
- out.print(str.substring(0, i));
- str = str.substring(lastIndexOfEntity+3);
- i = 0;
- produceWarning();
- } else if (entity.equals("error")) {
- out.print(str.substring(0, i));
- str = str.substring(lastIndexOfEntity+3);
- i = 0;
- produceError();
- } else if (entity.equals("hook-html-validator")) {
- out.print(str.substring(0, i));
- str = str.substring(lastIndexOfEntity+3);
- i = 0;
- if (style.getType().equals("text/html")) {
- out.println(ac.getMsg().getGeneratorString("doc-html",
+ str = str.substring(lastIndexOfEntity+3);
+ i = 0;
+ produceStyleSheet();
+ } else if (entity.equals("selectors")) {
+ if (selector.getNext() != null) {
+ // contextuals selectors
+ String value = prop.getProperty(entity);
+ if (value != null) {
+ str = str.substring(0, i) + value +
+ str.substring(lastIndexOfEntity+3);
+ } else {
+ i += 6; // skip this unknown entity
+ }
+ } else {
+ str = str.substring(lastIndexOfEntity+3);
+ i = 0;
+ }
+ } else if (entity.equals("selector")) {
+ str = str.substring(lastIndexOfEntity+3);
+ i = 0;
+ } else if (entity.equals("charset")) {
+ str = str.substring(lastIndexOfEntity+3);
+ i = 0;
+ out.print(style.charset);
+ } else if (entity.equals("declaration")) {
+ str = str.substring(lastIndexOfEntity+3);
+ i = 0;
+ } else if (entity.equals("warning")) {
+ out.print(str.substring(0, i));
+ str = str.substring(lastIndexOfEntity+3);
+ i = 0;
+ produceWarning();
+ } else if (entity.equals("error")) {
+ out.print(str.substring(0, i));
+ str = str.substring(lastIndexOfEntity+3);
+ i = 0;
+ produceError();
+ } else if (entity.equals("hook-html-validator")) {
+ out.print(str.substring(0, i));
+ str = str.substring(lastIndexOfEntity+3);
+ i = 0;
+ if (style.getType().equals("text/html")) {
+ out.println(ac.getMsg().getGeneratorString("doc-html",
general.get("file-title").toString()));
- } else {
- out.println(ac.getMsg().getGeneratorString("doc"));
- }
- } else {
- String value = prop.getProperty(entity);
- if (value != null) {
- str = str.substring(0, i) + value +
- str.substring(lastIndexOfEntity+3);
- } else {
- i += 6; // skip this unknown entity
- }
- }
- }
-
- return str;
- } catch (Exception e) {
- e.printStackTrace();
- return str;
- }
+ } else {
+ out.println(ac.getMsg().getGeneratorString("doc"));
+ }
+ } else {
+ String value = prop.getProperty(entity);
+ if (value != null) {
+ str = str.substring(0, i) + value +
+ str.substring(lastIndexOfEntity+3);
+ } else {
+ i += 6; // skip this unknown entity
+ }
+ }
+ }
+
+ return str;
+ } catch (Exception e) {
+ e.printStackTrace();
+ return str;
+ }
}
public final static void printAvailableFormat(PrintWriter out) {
- Enumeration e = availableFormat.propertyNames();
- out.println( " -- listing available output format --" );
- while (e.hasMoreElements()) {
- String key = ((String) e.nextElement()).toLowerCase();
- out.print( "Format : ");
- out.println(key);
- out.print( " File : ");
- out.println(getDocumentName(null, key));
- }
- out.flush();
+ Enumeration e = availableFormat.propertyNames();
+ out.println( " -- listing available output format --" );
+ while (e.hasMoreElements()) {
+ String key = ((String) e.nextElement()).toLowerCase();
+ out.print( "Format : ");
+ out.println(key);
+ out.print( " File : ");
+ out.println(getDocumentName(null, key));
+ }
+ out.flush();
}
private Properties setDocumentBase(String document) {
- Properties properties = (Properties) formats.get(document);
- if (properties == null) {
- URL url;
- properties = new Properties();
- try {
- url = StyleSheetGenerator.class.getResource(document);
- java.io.InputStream f = url.openStream();
- properties.load(f);
- f.close();
- properties.put("author","www-validator-css");
- properties.put("author-email", "Email.html");
- } catch (Exception e) {
- System.err.println("org.w3c.css.css.StyleSheetGenerator: "
- + "couldn't load properties " + document);
- System.err.println(" " + e.toString() );
- printAvailableFormat(new PrintWriter(System.err));
- }
- formats.put(document, properties);
- }
+ Properties properties = (Properties) formats.get(document);
+ if (properties == null) {
+ URL url;
+ properties = new Properties();
+ try {
+ url = StyleSheetGenerator.class.getResource(document);
+ java.io.InputStream f = url.openStream();
+ properties.load(f);
+ f.close();
+ properties.put("author","www-validator-css");
+ properties.put("author-email", "Email.html");
+ } catch (Exception e) {
+ System.err.println("org.w3c.css.css.StyleSheetGenerator: "
+ + "couldn't load properties " + document);
+ System.err.println(" " + e.toString() );
+ printAvailableFormat(new PrintWriter(System.err));
+ }
+ formats.put(document, properties);
+ }
- return new Properties(properties);
+ return new Properties(properties);
}
private final static String getDocumentName(ApplContext ac,
- String documentName) {
- documentName = documentName.toLowerCase();
- String document = null;
- if (ac != null && ac.getLang() != null) {
- StringTokenizer tokens = new StringTokenizer(ac.getLang(), ",");
-
- while (tokens.hasMoreTokens()) {
- String l = tokens.nextToken().trim().toLowerCase();
- document = availableFormat.getProperty(documentName + "." + l);
- if (document != null) {
- break;
- }
- int minusIndex = l.indexOf('-');
- if (minusIndex != -1) {
- // suppressed -cn in zh-cn (example)
- l = l.substring(0, minusIndex);
- document = availableFormat.getProperty(documentName
- + "." + l);
- }
- if (document != null) {
- break;
- }
- }
- }
- if (document == null) {
- document = availableFormat.getProperty(documentName);
- }
- if (document == null) {
- System.err.println( "Unable to find " +
- documentName + " output format" );
- return documentName;
- } else {
- return document;
- }
+ String documentName) {
+ documentName = documentName.toLowerCase();
+ String document = null;
+ if (ac != null && ac.getLang() != null) {
+ StringTokenizer tokens = new StringTokenizer(ac.getLang(), ",");
+
+ while (tokens.hasMoreTokens()) {
+ String l = tokens.nextToken().trim().toLowerCase();
+ document = availableFormat.getProperty(documentName + "." + l);
+ if (document != null) {
+ break;
+ }
+ int minusIndex = l.indexOf('-');
+ if (minusIndex != -1) {
+ // suppressed -cn in zh-cn (example)
+ l = l.substring(0, minusIndex);
+ document = availableFormat.getProperty(documentName
+ + "." + l);
+ }
+ if (document != null) {
+ break;
+ }
+ }
+ }
+ if (document == null) {
+ document = availableFormat.getProperty(documentName);
+ }
+ if (document == null) {
+ System.err.println( "Unable to find " +
+ documentName + " output format" );
+ return documentName;
+ } else {
+ return document;
+ }
}
private final static String getURLProperty(String name) {
- return availablePropertiesURL.getProperty(name);
+ return availablePropertiesURL.getProperty(name);
}
static {
- URL url;
- availableFormat = new Properties();
- try {
- url = StyleSheetGenerator.class.getResource("format.properties");
- java.io.InputStream f = url.openStream();
- availableFormat.load(f);
- f.close();
- } catch (Exception e) {
- System.err.println("org.w3c.css.css.StyleSheetGenerator: "
- + "couldn't load format properties ");
- System.err.println(" " + e.toString() );
- }
+ URL url;
+ availableFormat = new Properties();
+ try {
+ url = StyleSheetGenerator.class.getResource("format.properties");
+ java.io.InputStream f = url.openStream();
+ availableFormat.load(f);
+ f.close();
+ } catch (Exception e) {
+ System.err.println("org.w3c.css.css.StyleSheetGenerator: "
+ + "couldn't load format properties ");
+ System.err.println(" " + e.toString() );
+ }
- availablePropertiesURL = new Properties();
- try {
- url = StyleSheetGenerator.class.getResource("urls.properties");
- java.io.InputStream f = url.openStream();
- availablePropertiesURL.load(f);
- f.close();
- } catch (Exception e) {
- System.err.println("org.w3c.css.css.StyleSheetGenerator: "
- + "couldn't load URLs properties ");
- System.err.println(" " + e.toString() );
- }
+ availablePropertiesURL = new Properties();
+ try {
+ url = StyleSheetGenerator.class.getResource("urls.properties");
+ java.io.InputStream f = url.openStream();
+ availablePropertiesURL.load(f);
+ f.close();
+ } catch (Exception e) {
+ System.err.println("org.w3c.css.css.StyleSheetGenerator: "
+ + "couldn't load URLs properties ");
+ System.err.println(" " + e.toString() );
+ }
}
}
Received on Thursday, 25 November 2004 13:23:28 UTC