com.google.gwt.core.ext.linker

## Class PrecompilationMetricsArtifact

- java.lang.Object
- - com.google.gwt.core.ext.linker.Artifact<PrecompilationMetricsArtifact>
  - - com.google.gwt.core.ext.linker.PrecompilationMetricsArtifact

All Implemented Interfaces:
  java.io.Serializable, java.lang.Comparable<Artifact<?>>

    @Transferable
    public class PrecompilationMetricsArtifact
    extends Artifact<PrecompilationMetricsArtifact>

Captures some metrics from the precompilation step.

See Also:
  Serialized Form

### Constructor Summary

Constructors
`protected` `PrecompilationMetricsArtifact(java.lang.Class<? extends Linker> linker, int permutationBase)`
`` `PrecompilationMetricsArtifact(int permutationId)`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected int` `compareToComparableArtifact(PrecompilationMetricsArtifact o)` Performs comparison with an artifact of a compatible base type.
`java.lang.String[]` `getAstTypes()`
`protected java.lang.Class<PrecompilationMetricsArtifact>` `getComparableArtifactType()` Returns the base type to use for comparisons between Artifacts.
`long` `getElapsedMilliseconds()`
`java.lang.String[]` `getFinalTypeOracleTypes()`
`int` `getPermutationBase()`
`int[]` `getPermutationIds()`
`int` `hashCode()` The class which is returned from `Artifact.getComparableArtifactType()` must declare a final implementation which returns the same hash code for objects for which `Artifact.compareToComparableArtifact(Artifact)` returns 0.
`PrecompilationMetricsArtifact` `setAstTypes(java.lang.String[] astTypes)`
`PrecompilationMetricsArtifact` `setElapsedMilliseconds(long elapsedMilliseconds)`
`PrecompilationMetricsArtifact` `setFinalTypeOracleTypes(java.util.List<java.lang.String> types)`
`PrecompilationMetricsArtifact` `setPermutationIds(int[] ids)`

### Methods inherited from class com.google.gwt.core.ext.linker.Artifact

`compareTo, equals, getLinker, isTransferableFromShards, toString`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### PrecompilationMetricsArtifact

    public PrecompilationMetricsArtifact(int permutationId)

#### PrecompilationMetricsArtifact

    protected PrecompilationMetricsArtifact(java.lang.Class<? extends Linker> linker,
                                            int permutationBase)

### Method Detail

#### getAstTypes

    public java.lang.String[] getAstTypes()

Returns:
  the number of types referenced by the AST.

#### getElapsedMilliseconds

    public long getElapsedMilliseconds()

Returns:
  wall clock time elapsed since start of precompilation

#### getFinalTypeOracleTypes

    public java.lang.String[] getFinalTypeOracleTypes()

Returns:
  types all types referenced by type oracle after compiling the sources on the source path with JDT.

#### getPermutationBase

    public int getPermutationBase()

Returns:
  the first permutation Id associated with compiling this permutation.

#### getPermutationIds

    public int[] getPermutationIds()

Returns:
  the permutation ids associated with this precompilation.

#### hashCode

    public int hashCode()

Description copied from class: `Artifact`
The class which is returned from `Artifact.getComparableArtifactType()` must declare a final implementation which returns the same hash code for objects for which `Artifact.compareToComparableArtifact(Artifact)` returns 0.

Specified by:
  `hashCode` in class `Artifact<PrecompilationMetricsArtifact>`

#### setAstTypes

    public PrecompilationMetricsArtifact setAstTypes(java.lang.String[] astTypes)

Parameters:
  `astTypes` - an array of types referenced by the Java AST.

#### setElapsedMilliseconds

    public PrecompilationMetricsArtifact setElapsedMilliseconds(long elapsedMilliseconds)

Parameters:
  `elapsedMilliseconds` - wall clock time elapsed since start of precompilation

#### setFinalTypeOracleTypes

    public PrecompilationMetricsArtifact setFinalTypeOracleTypes(java.util.List<java.lang.String> types)

Parameters:
  `types` - all types referenced by type oracle after compiling the sources on the source path with JDT.

#### setPermutationIds

    public PrecompilationMetricsArtifact setPermutationIds(int[] ids)

Parameters:
  `ids` - the permutation ids associated with this precompilation.

#### compareToComparableArtifact

    protected int compareToComparableArtifact(PrecompilationMetricsArtifact o)

Description copied from class: `Artifact`
Performs comparison with an artifact of a compatible base type. Objects which compare to 0 are assumed equal, and must return the same `Artifact.hashCode()`.

Specified by:
  `compareToComparableArtifact` in class `Artifact<PrecompilationMetricsArtifact>`

#### getComparableArtifactType

    protected final java.lang.Class<PrecompilationMetricsArtifact> getComparableArtifactType()

Description copied from class: `Artifact`
Returns the base type to use for comparisons between Artifacts. All concrete implementations of this methods must be final.

Specified by:
  `getComparableArtifactType` in class `Artifact<PrecompilationMetricsArtifact>`