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
    Modifier | Constructor and Description
    --- | ---
    `protected` | `PrecompilationMetricsArtifact(java.lang.Class<? extends Linker> linker, int permutationBase)`
    `` | `PrecompilationMetricsArtifact(int permutationId)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `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>`