Class PrecompressLinker
A linker that precompresses the public artifacts that it sees. That way, a web server that uses gzip transfer encoding can use the precompressed files instead of having to compress them on the fly.
To use this linker, add the following to your module definition:
<inherits name="com.google.gwt.precompress.Precompress"/>
The files to precompress are specified by the configuration property
precompress.path.regexes
. By default, the uncompressed artifacts
are left in the artifact set. If the configuration property
precompress.leave.originals
is set to false
,
however, then the uncompressed version is removed.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionReturns a human-readable String describing the Linker.link
(TreeLogger logger, LinkerContext context, ArtifactSet artifacts, boolean onePermutation) This method is invoked for linkers annotated withShardable
.Methods inherited from class com.google.gwt.core.ext.linker.AbstractLinker
emitBytes, emitBytes, emitInputStream, emitInputStream, emitString, emitString, emitWithStrongName, emitWithStrongName
Methods inherited from class com.google.gwt.core.ext.Linker
isShardable, link, relink, supportsDevModeInJunit
-
Constructor Details
-
PrecompressLinker
public PrecompressLinker()
-
-
Method Details
-
getDescription
Description copied from class:Linker
Returns a human-readable String describing the Linker.- Specified by:
getDescription
in classLinker
-
link
public ArtifactSet link(TreeLogger logger, LinkerContext context, ArtifactSet artifacts, boolean onePermutation) throws UnableToCompleteException Description copied from class:Linker
This method is invoked for linkers annotated with
Shardable
. It is called at two points during compilation: after the compile of each permutation, and after all compilation has finished. TheonePermutation
istrue
for a per-permutation call andfalse
for a global final-link call.For one-permutation calls, this method is passed all artifacts generated for just the one permutation. For the global call at the end of compilation, this method sees artifacts for the whole compilation, but with two modifications intended to support builds on computer clusters:
- All EmittedArtifacts have been converted to BinaryEmittedArtifacts
- All artifacts not marked as
Transferable
have been discarded.
- Overrides:
link
in classLinker
- Parameters:
logger
- the TreeLogger to record tocontext
- provides access to the Linker's environmentartifacts
- an unmodifiable view of the artifacts to linkonePermutation
- true for a one-permutation call- Returns:
- the artifacts that should be propagated through the linker chain
- Throws:
UnableToCompleteException
- if compilation violates assumptions made by the Linker or for errors encountered by the Linker
-