com.google.gwt.core.ext.linker

## Class CompilationMetricsArtifact

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

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

      @Transferable
      public class CompilationMetricsArtifact
      extends Artifact<CompilationMetricsArtifact>

  Captures some metrics from the compile permutations step of the build.
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `CompilationMetricsArtifact(java.lang.Class<? extends Linker> linker, int permutationId)`
    `` | `CompilationMetricsArtifact(int permutationId)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected int` | `compareToComparableArtifact(CompilationMetricsArtifact o)` Performs comparison with an artifact of a compatible base type.
    `protected java.lang.Class<CompilationMetricsArtifact>` | `getComparableArtifactType()` Returns the base type to use for comparisons between Artifacts.
    `long` | `getCompileElapsedMilliseconds()`
    `long` | `getElapsedMilliseconds()`
    `int[]` | `getJsSize()`
    `int` | `getPermuationId()`
    `java.lang.String` | `getPermutationDescription()`
    `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.
    `CompilationMetricsArtifact` | `setCompileElapsedMilliseconds(long compileElapsedMilliseconds)`
    `CompilationMetricsArtifact` | `setElapsedMilliseconds(long elapsedMilliseconds)`
    `void` | `setJsSize(com.google.gwt.dev.js.SizeBreakdown[] sizeBreakdowns)`
    `CompilationMetricsArtifact` | `setPermutationDescription(java.lang.String permutationDescription)`

    - ### 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

    - #### CompilationMetricsArtifact

          public CompilationMetricsArtifact(int permutationId)

    - #### CompilationMetricsArtifact

          protected CompilationMetricsArtifact(java.lang.Class<? extends Linker> linker,
                                    int permutationId)

  - ### Method Detail

    - #### getCompileElapsedMilliseconds

          public long getCompileElapsedMilliseconds()

      Returns:
        wall clock time elapsed since start of compilation

    - #### getElapsedMilliseconds

          public long getElapsedMilliseconds()

      Returns:
        wall clock time elapsed since start of execution

    - #### getJsSize

          public int[] getJsSize()

      Returns:
        a map containing the name of the JavaScript fragments and their sizes.

    - #### getPermuationId

          public int getPermuationId()

      Returns:
        the permutation id associated with compiling this permutation.

    - #### getPermutationDescription

          public java.lang.String getPermutationDescription()

      Returns:
        human readable description of the permutation

    - #### 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<CompilationMetricsArtifact>`

    - #### setCompileElapsedMilliseconds

          public CompilationMetricsArtifact setCompileElapsedMilliseconds(long compileElapsedMilliseconds)

      Parameters:
        `compileElapsedMilliseconds` - wall clock time elapsed since start of compilation

    - #### setElapsedMilliseconds

          public CompilationMetricsArtifact setElapsedMilliseconds(long elapsedMilliseconds)

      Parameters:
        `elapsedMilliseconds` - wall clock time elapsed since JVM startup

    - #### setJsSize

          public void setJsSize(com.google.gwt.dev.js.SizeBreakdown[] sizeBreakdowns)

      Parameters:
        `sizeBreakdowns` - breakdown of sizes in JavaScript fragments

    - #### setPermutationDescription

          public CompilationMetricsArtifact setPermutationDescription(java.lang.String permutationDescription)

      Parameters:
        `permutationDescription` - human readable description of the permutation

    - #### compareToComparableArtifact

          protected int compareToComparableArtifact(CompilationMetricsArtifact 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<CompilationMetricsArtifact>`

    - #### getComparableArtifactType

          protected final java.lang.Class<CompilationMetricsArtifact> 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<CompilationMetricsArtifact>`