/** * @see de.matrixweb.smaller.javascript.JavaScriptExecutor#addCallScript(java.lang.String) */ @Override public void addCallScript(final String source) { this.executor.addCallScript(source); }
/** * @see de.matrixweb.smaller.javascript.JavaScriptExecutor#addScriptFile(java.lang.String) */ @Override public void addScriptFile(final String file) { this.executor.addScriptFile(file); }
/** * @see de.matrixweb.smaller.javascript.JavaScriptExecutor#dispose() */ @Override public void dispose() { this.executor.dispose(); }
/** * */ public YcssminProcessor() { this.executor = new JavaScriptExecutorFast("ycssmin-913e1945c2", 9, getClass()); this.executor.addScriptSource("var exports = {};", "rhino.js"); this.executor.addScriptFile(getClass().getResource( "/ycssmin-913e1945c2/cssmin-913e1945c2.js")); this.executor.addCallScript("exports.cssmin(%s);"); }
private void setupJavascriptExecutor() { if (this.executor == null) { this.executor = new JavaScriptExecutorFast("jshint-1.1.0", 9, JshintProcessor.class); this.executor.addScriptFile(getClass().getResource( "/jshint-1.1.0/jshint-1.1.0.js")); this.executor.addScriptFile(getClass().getResource( "/jshint-1.1.0/jshint-call.js")); this.executor.addCallScript("hint(%s);"); } }
@Override public void call(final Reader reader, final Writer writer) throws IOException { UglifyjsProcessor.this.executor.run(reader, writer); } });
/** * @see de.matrixweb.smaller.javascript.JavaScriptExecutor#addScriptSource(java.lang.String, * java.lang.String) */ @Override public void addScriptSource(final String source, final String name) { this.executor.addScriptSource(source, name); }
/** * @see de.matrixweb.smaller.javascript.JavaScriptExecutor#addGlobalFunction(java.lang.String, * java.lang.Object) */ @Override public void addGlobalFunction(final String name, final Object object) { this.executor.addGlobalFunction(name, object); }
private Resource executeWithJs(final VFS vfs, final Resource resource, final Map<String, Object> options) throws IOException { if (this.executor == null) { this.executor = new JavaScriptExecutorFast("uglify-" + this.version, 9, getClass()); this.executor.addScriptSource("module = {};", "rhino.js"); this.executor.addScriptFile(getClass().getResource( "/uglify-" + this.version + "/uglify-js.js")); this.executor.addCallScript("uglify(%s, {});"); } return ProcessorUtil.process(vfs, resource, "js", new ProcessorCallback() { @Override public void call(final Reader reader, final Writer writer) throws IOException { UglifyjsProcessor.this.executor.run(reader, writer); } }); }
/** * @see de.matrixweb.smaller.javascript.JavaScriptExecutor#run(java.io.Reader, * java.io.Writer) */ @Override public void run(final Reader input, final Writer output) throws IOException { this.executor.run(input, output); }
/** * @see de.matrixweb.smaller.javascript.JavaScriptExecutor#addGlobalFunction(java.lang.String, * java.lang.Object, java.lang.String) */ @Override public void addGlobalFunction(final String name, final Object object, final String method) { this.executor.addGlobalFunction(name, object, method); }
/** * @see de.matrixweb.smaller.resource.Processor#dispose() */ @Override public void dispose() { this.executor.dispose(); }
@Override public void call(final Reader reader, final Writer writer) throws IOException { YcssminProcessor.this.executor.run(reader, writer); } });
/** * @see de.matrixweb.smaller.javascript.JavaScriptExecutor#addScriptFile(java.net.URL) */ @Override public void addScriptFile(final URL url) { this.executor.addScriptFile(url); }
/** * @see de.matrixweb.smaller.resource.Processor#dispose() */ @Override public void dispose() { if (this.executor != null) { this.executor.dispose(); } if (this.node != null) { this.node.dispose(); } }
private List<String> scanResource(final Resource resource, final Map<String, Object> options) throws IOException { final List<String> results = new ArrayList<String>(); final Map<String, Object> opts = new HashMap<String, Object>(options); opts.remove("version"); final Map<String, Object> params = new HashMap<String, Object>(); params.put("source", resource.getContents()); params.put("options", opts); final StringWriter writer = new StringWriter(); this.executor .run(new StringReader(new ObjectMapper().writeValueAsString(params)), writer); final JsHintResult result = new ObjectMapper().readValue(writer.toString(), JsHintResult.class); if (result.errors != null) { for (final JsHintError error : result.errors) { results.add(resource.getPath() + " line " + error.line + ": " + error.reason + "\n\t" + error.evidence); } } return results; }
/** * @see de.matrixweb.smaller.resource.Processor#dispose() */ @Override public void dispose() { if (this.node != null) { this.node.dispose(); } if (this.executor != null) { this.executor.dispose(); } }