public class LegacyCompatibleRuleAnalysisComputation extends Object implements GraphComputation<RuleAnalysisKey,RuleAnalysisResult>
GraphComputation
for performing the target graph to provider and action graph
transformation, with legacy compatible behaviour where we delegate to the LegacyProviderCompatibleDescription.createProviders(ProviderCreationContext,
BuildTarget, BuildRuleArg)
Constructor and Description |
---|
LegacyCompatibleRuleAnalysisComputation(RuleAnalysisComputation delegate,
TargetGraph targetGraph) |
Modifier and Type | Method and Description |
---|---|
com.google.common.collect.ImmutableSet<? extends ComputeKey<? extends ComputeResult>> |
discoverDeps(RuleAnalysisKey key,
ComputationEnvironment env)
Compute dependent keys required to compute given key, and a set of dependencies as listed by
GraphComputation.discoverPreliminaryDeps(ComputeKey) . |
com.google.common.collect.ImmutableSet<? extends ComputeKey<? extends ComputeResult>> |
discoverPreliminaryDeps(RuleAnalysisKey key)
Compute dependent keys required to compute given the current key.
|
ComputationIdentifier<RuleAnalysisResult> |
getIdentifier() |
RuleAnalysisResult |
transform(RuleAnalysisKey key,
ComputationEnvironment env)
Perform a transformation identified by key
Key into a final type Result . |
public LegacyCompatibleRuleAnalysisComputation(RuleAnalysisComputation delegate, TargetGraph targetGraph)
public ComputationIdentifier<RuleAnalysisResult> getIdentifier()
getIdentifier
in interface GraphComputation<RuleAnalysisKey,RuleAnalysisResult>
ComputeKey.getIdentifier()
public RuleAnalysisResult transform(RuleAnalysisKey key, ComputationEnvironment env) throws ActionCreationException, RuleAnalysisException
GraphComputation
Key
into a final type Result
. This
transformation should be performed synchronously.transform
in interface GraphComputation<RuleAnalysisKey,RuleAnalysisResult>
key
- The Key of the requested resultenv
- The execution environment containing results of keys from GraphComputation.discoverDeps(ComputeKey, ComputationEnvironment)
and GraphComputation.discoverPreliminaryDeps(ComputeKey)
ActionCreationException
RuleAnalysisException
public com.google.common.collect.ImmutableSet<? extends ComputeKey<? extends ComputeResult>> discoverDeps(RuleAnalysisKey key, ComputationEnvironment env)
GraphComputation
GraphComputation.discoverPreliminaryDeps(ComputeKey)
. The results of those computations will be
available in GraphComputation.transform(ComputeKey, ComputationEnvironment)
as a part of ComputationEnvironment
discoverDeps
in interface GraphComputation<RuleAnalysisKey,RuleAnalysisResult>
key
- the current key to transformenv
- The execution environment containing results of keys from GraphComputation.discoverPreliminaryDeps(ComputeKey)
public com.google.common.collect.ImmutableSet<? extends ComputeKey<? extends ComputeResult>> discoverPreliminaryDeps(RuleAnalysisKey key)
GraphComputation
GraphComputation.discoverDeps(ComputeKey, ComputationEnvironment)
as
a part of ComputationEnvironment
, and GraphComputation.transform(ComputeKey,
ComputationEnvironment)
discoverPreliminaryDeps
in interface GraphComputation<RuleAnalysisKey,RuleAnalysisResult>
key
- the current key to transformGraphComputation.discoverDeps(ComputeKey, ComputationEnvironment)
and
GraphComputation.transform(ComputeKey, ComputationEnvironment)
of the current key depends on