public static TargetResolutionLogger of( final ComputationTargetResolver.AtVersionCorrection underlying, final ConcurrentMap<ComputationTargetReference, UniqueId> resolutions) { return new TargetResolutionLogger( underlying, new LoggingSpecificationResolver(underlying.getSpecificationResolver(), resolutions)); }
/** * If the specification is lazily resolvable, returns a target that will resolve it on demand. * Otherwise it is resolved immediately. * * @param underlying the underlying resolver to use for resolution * @param specification the specification to resolve * @return the target */ public static ComputationTarget resolve( final ComputationTargetResolver.AtVersionCorrection underlying, final ComputationTargetSpecification specification) { final Function2< ComputationTargetResolver.AtVersionCorrection, ComputationTargetSpecification, UniqueIdentifiable> resolver = s_resolvers.get(specification.getType()); if (resolver != null) { return new ComputationTarget(specification, resolver.execute(underlying, specification)); } else { return underlying.resolve(specification); } }
@Override public VersionCorrection getVersionCorrection() { return _underlying.getVersionCorrection(); }
@Override public ComputationTargetType simplifyType(final ComputationTargetType type) { return _underlying.simplifyType(type); }
@Override public ComputationTarget resolve(final ComputationTargetSpecification specification) { return _underlying.resolve(specification); }