Package com.google.gwt.core.ext.linker
Class Artifact<C extends Artifact<C>>
- java.lang.Object
-
- com.google.gwt.core.ext.linker.Artifact<C>
-
- Type Parameters:
C
- The type of Artifact interface that the Artifact can be compared to.
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Comparable<Artifact<?>>
- Direct Known Subclasses:
CompilationMetricsArtifact
,CompilationResult
,EmittedArtifact
,ModuleMetricsArtifact
,PrecompilationMetricsArtifact
,RpcLogArtifact
,RpcPolicyFileArtifact
,ScriptReference
,StylesheetReference
,SymbolMapsLinker.ScriptFragmentEditsArtifact
public abstract class Artifact<C extends Artifact<C>> extends java.lang.Object implements java.lang.Comparable<Artifact<?>>, java.io.Serializable
A base type for all artifacts relating to the link process. In order to ensure stable output between runs of the compiler, Artifact types must implement a stable comparison between instances of a relevant base type (the exact comparison order is irrelevant).- See Also:
- Serialized Form
-
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description int
compareTo(Artifact<?> o)
protected abstract int
compareToComparableArtifact(C o)
Performs comparison with an artifact of a compatible base type.boolean
equals(java.lang.Object obj)
Delegates tocompareTo(Artifact)
.protected abstract java.lang.Class<C>
getComparableArtifactType()
Returns the base type to use for comparisons between Artifacts.java.lang.Class<? extends Linker>
getLinker()
Returns the Linker that created the Artifact.abstract int
hashCode()
The class which is returned fromgetComparableArtifactType()
must declare a final implementation which returns the same hash code for objects for whichcompareToComparableArtifact(Artifact)
returns 0.boolean
isTransferableFromShards()
Returns whether theTransferable
annotation is present on this class.java.lang.String
toString()
-
-
-
Constructor Detail
-
Artifact
protected Artifact(java.lang.Class<? extends Linker> linker)
Constructor.- Parameters:
linker
- the type of Linker that instantiated the Artifact.
-
-
Method Detail
-
compareTo
public final int compareTo(Artifact<?> o)
-
equals
public final boolean equals(java.lang.Object obj)
Delegates tocompareTo(Artifact)
.- Overrides:
equals
in classjava.lang.Object
-
getLinker
public final java.lang.Class<? extends Linker> getLinker()
Returns the Linker that created the Artifact.
-
hashCode
public abstract int hashCode()
The class which is returned fromgetComparableArtifactType()
must declare a final implementation which returns the same hash code for objects for whichcompareToComparableArtifact(Artifact)
returns 0.- Overrides:
hashCode
in classjava.lang.Object
-
isTransferableFromShards
public final boolean isTransferableFromShards()
Returns whether theTransferable
annotation is present on this class. SeeTransferable
for the implications.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
compareToComparableArtifact
protected abstract int compareToComparableArtifact(C o)
Performs comparison with an artifact of a compatible base type. Objects which compare to 0 are assumed equal, and must return the samehashCode()
.
-
getComparableArtifactType
protected abstract java.lang.Class<C> getComparableArtifactType()
Returns the base type to use for comparisons between Artifacts. All concrete implementations of this methods must be final.
-
-