Package com.iizix.js.build.html
Class YuiJavaScriptCompressor
- java.lang.Object
-
- com.iizix.js.build.html.YuiJavaScriptCompressor
-
- All Implemented Interfaces:
Compressor
public class YuiJavaScriptCompressor extends java.lang.Object implements Compressor
Basic JavaScript compressor implementation using Yahoo YUI Compressor that could be used byHtmlCompressor
for inline JavaScript compression.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
YuiJavaScriptCompressor.DefaultErrorReporter
DefaultErrorReporter
implementation that usesSystem.err
stream for error reporting.
-
Constructor Summary
Constructors Constructor Description YuiJavaScriptCompressor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
compress(java.lang.String source)
The main method that compresses the given source and returns a compressed result.org.mozilla.javascript.ErrorReporter
getErrorReporter()
ReturnsErrorReporter
used by YUI Compressor to log error messages during JavasSript compressionint
getLineBreak()
Returns number of symbols per line Yahoo YUI Compressor will use during JavaScript compression.boolean
isDisableOptimizations()
Returnstrue
if Yahoo YUI Compressor will disable all the built-in micro optimizations during JavaScript compression.boolean
isNoMunge()
Returnstrue
if Yahoo YUI Compressor will only minify javascript without obfuscating local symbols.boolean
isPreserveAllSemiColons()
Returnstrue
if Yahoo YUI Compressor will preserve unnecessary semicolons during JavaScript compression.void
setDisableOptimizations(boolean disableOptimizations)
Tells Yahoo YUI Compressor to disable all the built-in micro optimizations during JavaScript compression.void
setErrorReporter(org.mozilla.javascript.ErrorReporter errorReporter)
SetsErrorReporter
that YUI Compressor will use for reporting errors during JavaScript compression.void
setLineBreak(int lineBreak)
Tells Yahoo YUI Compressor to break lines after the specified number of symbols during JavaScript compression.void
setNoMunge(boolean noMunge)
Tells Yahoo YUI Compressor to only minify javascript without obfuscating local symbols.void
setPreserveAllSemiColons(boolean preserveAllSemiColons)
Tells Yahoo YUI Compressor to preserve unnecessary semicolons during JavaScript compression.
-
-
-
Method Detail
-
compress
public java.lang.String compress(java.lang.String source)
Description copied from interface:Compressor
The main method that compresses the given source and returns a compressed result.- Specified by:
compress
in interfaceCompressor
- Parameters:
source
- The source to compress.- Returns:
- Compressed result.
-
isNoMunge
public boolean isNoMunge()
Returnstrue
if Yahoo YUI Compressor will only minify javascript without obfuscating local symbols. This corresponds to--nomunge
command line option.- Returns:
nomunge
parameter value used for JavaScript compression.- See Also:
- Yahoo YUI Compressor
-
setNoMunge
public void setNoMunge(boolean noMunge)
Tells Yahoo YUI Compressor to only minify javascript without obfuscating local symbols. This corresponds to--nomunge
command line option. This option has effect only if JavaScript compression is enabled. Default isfalse
.- Parameters:
noMunge
- settrue
to enablenomunge
mode- See Also:
- Yahoo YUI Compressor
-
isPreserveAllSemiColons
public boolean isPreserveAllSemiColons()
Returnstrue
if Yahoo YUI Compressor will preserve unnecessary semicolons during JavaScript compression. This corresponds to--preserve-semi
command line option.- Returns:
preserve-semi
parameter value used for JavaScript compression.- See Also:
- Yahoo YUI Compressor
-
setPreserveAllSemiColons
public void setPreserveAllSemiColons(boolean preserveAllSemiColons)
Tells Yahoo YUI Compressor to preserve unnecessary semicolons during JavaScript compression. This corresponds to--preserve-semi
command line option. This option has effect only if JavaScript compression is enabled. Default isfalse
.- Parameters:
preserveAllSemiColons
- settrue
to enablepreserve-semi
mode- See Also:
- Yahoo YUI Compressor
-
isDisableOptimizations
public boolean isDisableOptimizations()
Returnstrue
if Yahoo YUI Compressor will disable all the built-in micro optimizations during JavaScript compression. This corresponds to--disable-optimizations
command line option.- Returns:
disable-optimizations
parameter value used for JavaScript compression.- See Also:
- Yahoo YUI Compressor
-
setDisableOptimizations
public void setDisableOptimizations(boolean disableOptimizations)
Tells Yahoo YUI Compressor to disable all the built-in micro optimizations during JavaScript compression. This corresponds to--disable-optimizations
command line option. This option has effect only if JavaScript compression is enabled. Default isfalse
.- Parameters:
disableOptimizations
- settrue
to enabledisable-optimizations
mode- See Also:
- Yahoo YUI Compressor
-
getLineBreak
public int getLineBreak()
Returns number of symbols per line Yahoo YUI Compressor will use during JavaScript compression. This corresponds to--line-break
command line option.- Returns:
line-break
parameter value used for JavaScript compression.- See Also:
- Yahoo YUI Compressor
-
setLineBreak
public void setLineBreak(int lineBreak)
Tells Yahoo YUI Compressor to break lines after the specified number of symbols during JavaScript compression. This corresponds to--line-break
command line option. This option has effect only if JavaScript compression is enabled. Default is-1
to disable line breaks.- Parameters:
lineBreak
- set number of symbols per line- See Also:
- Yahoo YUI Compressor
-
getErrorReporter
public org.mozilla.javascript.ErrorReporter getErrorReporter()
ReturnsErrorReporter
used by YUI Compressor to log error messages during JavasSript compression- Returns:
ErrorReporter
used by YUI Compressor to log error messages during JavasSript compression- See Also:
- Yahoo YUI Compressor, Error Reporter Interface
-
setErrorReporter
public void setErrorReporter(org.mozilla.javascript.ErrorReporter errorReporter)
SetsErrorReporter
that YUI Compressor will use for reporting errors during JavaScript compression. If noErrorReporter
was providedYuiJavaScriptCompressor.DefaultErrorReporter
will be used which reports errors toSystem.err
stream.- Parameters:
errorReporter
-ErrorReporter
that will be used by YUI Compressor- See Also:
YuiJavaScriptCompressor.DefaultErrorReporter
, Yahoo YUI Compressor, ErrorReporter Interface
-
-