- From: Julien Grand-Mourcel via cvs-syncmail <cvsmail@w3.org>
- Date: Thu, 13 Sep 2007 10:15:35 +0000
- To: www-validator-cvs@w3.org
Update of /sources/public/2002/css-validator/org/w3c/css/servlet In directory hutz:/tmp/cvs-serv26812/org/w3c/css/servlet Modified Files: CssValidator.java Log Message: This new version deals with content-type of uploaded files and with "none" profile Index: CssValidator.java =================================================================== RCS file: /sources/public/2002/css-validator/org/w3c/css/servlet/CssValidator.java,v retrieving revision 1.36 retrieving revision 1.37 diff -u -d -r1.36 -r1.37 --- CssValidator.java 10 Aug 2007 15:17:31 -0000 1.36 +++ CssValidator.java 13 Sep 2007 10:15:33 -0000 1.37 @@ -33,6 +33,7 @@ import org.w3c.css.error.ErrorReport; import org.w3c.css.error.ErrorReportFactory; import org.w3c.css.index.IndexGenerator; +import org.w3c.css.properties.PropertiesLoader; import org.w3c.css.util.ApplContext; import org.w3c.css.util.Codecs; import org.w3c.css.util.FakeFile; @@ -55,6 +56,8 @@ final static String applxhtml = "application/xhtml+xml"; final static String textplain = "text/plain"; + + final static String textcss = "text/css"; final static String textunknwon = "text/unknown"; @@ -249,6 +252,9 @@ String error = req.getParameter("error"); String profile = req.getParameter("profile"); String usermedium = req.getParameter("usermedium"); + String type = req.getParameter("type"); + if (type == null) + type = "none"; String credential = req.getHeader("Authorization"); if ((credential != null) && (credential.length() > 1)) { @@ -281,18 +287,19 @@ } // CSS version - if (profile != null && !"none".equals(profile)) { + if (profile != null && (!"none".equals(profile) || "".equals(profile))) { if ("css1".equals(profile) || "css2".equals(profile) || "css21".equals(profile) || "css3".equals(profile) || "svg".equals(profile) || "svgbasic".equals(profile) || "svgtiny".equals(profile)) { - ac.setCssVersion(profile); + ac.setCssVersion(profile); } else { - ac.setProfile(profile); - ac.setCssVersion("css21"); + ac.setProfile(profile); + ac.setCssVersion(PropertiesLoader.config.getProperty("defaultProfile")); } } else { - ac.setCssVersion("css21"); + ac.setProfile("none"); + ac.setCssVersion(PropertiesLoader.config.getProperty("defaultProfile")); } if (Util.onDebug) { System.err.println("[DEBUG] profile is : " + ac.getCssVersion() @@ -370,7 +377,8 @@ try { - if (isCSS(text)) { + if ("css".equals(type) || ( "none".equals(type) && isCSS(text))) { + // if CSS: parser = new StyleSheetParser(); parser.parseStyleElement(ac, is, null, usermedium, new URL(fileName), 0); @@ -378,7 +386,7 @@ handleRequest(ac, res, fileName, parser .getStyleSheet(), output, warningLevel, errorReport); } else { - // try HTML + // else, trying HTML TagSoupStyleSheetHandler handler = new TagSoupStyleSheetHandler(null, ac); handler.parse(is, fileName); @@ -477,10 +485,11 @@ //boolean XMLinput = false; String warning = null; String error = null; - String profile = null; + String profile = "none"; String usermedium = "all"; ServletInputStream in = req.getInputStream(); + byte[] buf = new byte[2048]; byte[] general = new byte[65536]; int count = 0; @@ -604,18 +613,19 @@ } // CSS version - if (profile != null && !"none".equals(profile)) { + if (profile != null && (!"none".equals(profile) || "".equals(profile))) { if ("css1".equals(profile) || "css2".equals(profile) || "css21".equals(profile) || "css3".equals(profile) || "svg".equals(profile) || "svgbasic".equals(profile) || "svgtiny".equals(profile)) { - ac.setCssVersion(profile); + ac.setCssVersion(profile); } else { - ac.setProfile(profile); - ac.setCssVersion("css21"); + ac.setProfile(profile); + ac.setCssVersion(PropertiesLoader.config.getProperty("defaultProfile")); } } else { - ac.setCssVersion("css21"); + ac.setProfile("none"); + ac.setCssVersion(PropertiesLoader.config.getProperty("defaultProfile")); } String fileName = ""; InputStream is = null; @@ -625,8 +635,8 @@ fileName = file.getName(); Util.verbose("File : " + fileName); is = file.getInputStream(); - if (fileName.endsWith(".css")) - isCSS = true; + // another way to get file type... + isCSS = file.getContentType().equals(textcss); } else if (text != null ) { fileName = "TextArea"; Util.verbose("- " + fileName + " Data -"); @@ -637,12 +647,10 @@ isCSS = isCSS(text); } fileName = "file://localhost/" + fileName; - //TODO: define the content-type try { - //if CSS: if (isCSS) { - System.err.println("css"); + //if CSS: parser = new StyleSheetParser(); parser.parseStyleElement(ac, is, null, usermedium, new URL(fileName), 0); @@ -650,8 +658,7 @@ handleRequest(ac, res, fileName, parser .getStyleSheet(), output, warningLevel, errorReport); } else { - System.err.println("html"); - // try HTML + // else, trying HTML TagSoupStyleSheetHandler handler = new TagSoupStyleSheetHandler(null, ac); handler.parse(is, fileName);
Received on Thursday, 13 September 2007 10:15:37 UTC