Package 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 | Description
    --- | --- | ---
    `` | `CompilationMetricsArtifact​(int permutationId)` |
    `protected` | `CompilationMetricsArtifact​(java.lang.Class<? extends Linker> linker, int permutationId)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | 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()` |
    `java.lang.String` | `getPermutationDescription()` |
    `int` | `getPermutationId()` |
    `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.

    - #### getPermutationId

          public int getPermutationId()

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