Search in sources :

Example 6 with Dependency

use of org.gradle.api.artifacts.Dependency in project gradle by gradle.

the class CoffeeScriptBasePlugin method addJsConfiguration.

private Configuration addJsConfiguration(ConfigurationContainer configurations, final DependencyHandler dependencies, final CoffeeScriptExtension extension) {
    Configuration configuration = configurations.create(CoffeeScriptExtension.JS_CONFIGURATION_NAME);
    configuration.defaultDependencies(new Action<DependencySet>() {

        @Override
        public void execute(DependencySet configDependencies) {
            String notation = CoffeeScriptExtension.DEFAULT_JS_DEPENDENCY_GROUP + ":" + CoffeeScriptExtension.DEFAULT_JS_DEPENDENCY_MODULE + ":" + extension.getVersion() + "@js";
            Dependency dependency = dependencies.create(notation);
            configDependencies.add(dependency);
        }
    });
    return configuration;
}
Also used : Configuration(org.gradle.api.artifacts.Configuration) DependencySet(org.gradle.api.artifacts.DependencySet) Dependency(org.gradle.api.artifacts.Dependency)

Example 7 with Dependency

use of org.gradle.api.artifacts.Dependency in project gradle by gradle.

the class DefaultConfiguration method createCopy.

private DefaultConfiguration createCopy(Set<Dependency> dependencies, boolean recursive) {
    DetachedConfigurationsProvider configurationsProvider = new DetachedConfigurationsProvider();
    String newName = name + "Copy";
    Path newIdentityPath = identityPath.getParent().child(newName);
    Path newPath = path.getParent().child(newName);
    Factory<ResolutionStrategyInternal> childResolutionStrategy = resolutionStrategy != null ? Factories.constant(resolutionStrategy.copy()) : resolutionStrategyFactory;
    DefaultConfiguration copiedConfiguration = instantiator.newInstance(DefaultConfiguration.class, newIdentityPath, newPath, newName, configurationsProvider, resolver, listenerManager, metaDataProvider, childResolutionStrategy, projectAccessListener, projectFinder, configurationComponentMetaDataBuilder, fileCollectionFactory, componentIdentifierFactory, buildOperationExecutor, instantiator, artifactNotationParser, attributesFactory, moduleIdentifierFactory);
    configurationsProvider.setTheOnlyConfiguration(copiedConfiguration);
    // state, cachedResolvedConfiguration, and extendsFrom intentionally not copied - must re-resolve copy
    // copying extendsFrom could mess up dependencies when copy was re-resolved
    copiedConfiguration.visible = visible;
    copiedConfiguration.transitive = transitive;
    copiedConfiguration.description = description;
    copiedConfiguration.defaultDependencyActions = defaultDependencyActions;
    copiedConfiguration.canBeConsumed = canBeConsumed;
    copiedConfiguration.canBeResolved = canBeResolved;
    copiedConfiguration.getArtifacts().addAll(getAllArtifacts());
    if (!configurationAttributes.isEmpty()) {
        for (Attribute<?> attribute : configurationAttributes.keySet()) {
            Object value = configurationAttributes.getAttribute(attribute);
            copiedConfiguration.getAttributes().attribute(Cast.<Attribute<Object>>uncheckedCast(attribute), value);
        }
    }
    // todo An ExcludeRule is a value object but we don't enforce immutability for DefaultExcludeRule as strong as we
    // should (we expose the Map). We should provide a better API for ExcludeRule (I don't want to use unmodifiable Map).
    // As soon as DefaultExcludeRule is truly immutable, we don't need to create a new instance of DefaultExcludeRule.
    Set<Configuration> excludeRuleSources = new LinkedHashSet<Configuration>();
    excludeRuleSources.add(this);
    if (recursive) {
        excludeRuleSources.addAll(getHierarchy());
    }
    for (Configuration excludeRuleSource : excludeRuleSources) {
        for (ExcludeRule excludeRule : excludeRuleSource.getExcludeRules()) {
            copiedConfiguration.excludeRules.add(new DefaultExcludeRule(excludeRule.getGroup(), excludeRule.getModule()));
        }
    }
    DomainObjectSet<Dependency> copiedDependencies = copiedConfiguration.getDependencies();
    for (Dependency dependency : dependencies) {
        copiedDependencies.add(dependency.copy());
    }
    return copiedConfiguration;
}
Also used : Path(org.gradle.util.Path) LinkedHashSet(java.util.LinkedHashSet) ResolvedProjectConfiguration(org.gradle.api.internal.artifacts.ivyservice.resolveengine.projectresult.ResolvedProjectConfiguration) Configuration(org.gradle.api.artifacts.Configuration) ResolvedConfiguration(org.gradle.api.artifacts.ResolvedConfiguration) TaskDependency(org.gradle.api.tasks.TaskDependency) FileCollectionDependency(org.gradle.api.artifacts.FileCollectionDependency) AbstractTaskDependency(org.gradle.api.internal.tasks.AbstractTaskDependency) Dependency(org.gradle.api.artifacts.Dependency) DefaultExcludeRule(org.gradle.api.internal.artifacts.DefaultExcludeRule) ExcludeRule(org.gradle.api.artifacts.ExcludeRule) DefaultExcludeRule(org.gradle.api.internal.artifacts.DefaultExcludeRule)

Example 8 with Dependency

use of org.gradle.api.artifacts.Dependency in project gradle by gradle.

the class DefaultConfiguration method registerWatchPoints.

@Override
public void registerWatchPoints(FileSystemSubset.Builder builder) {
    for (Dependency dependency : allDependencies) {
        if (dependency instanceof FileCollectionDependency) {
            FileCollection files = ((FileCollectionDependency) dependency).getFiles();
            ((FileCollectionInternal) files).registerWatchPoints(builder);
        }
    }
    super.registerWatchPoints(builder);
}
Also used : FileCollectionInternal(org.gradle.api.internal.file.FileCollectionInternal) TaskDependency(org.gradle.api.tasks.TaskDependency) FileCollectionDependency(org.gradle.api.artifacts.FileCollectionDependency) AbstractTaskDependency(org.gradle.api.internal.tasks.AbstractTaskDependency) Dependency(org.gradle.api.artifacts.Dependency) AbstractFileCollection(org.gradle.api.internal.file.AbstractFileCollection) FileCollection(org.gradle.api.file.FileCollection) FileCollectionDependency(org.gradle.api.artifacts.FileCollectionDependency)

Example 9 with Dependency

use of org.gradle.api.artifacts.Dependency in project gradle by gradle.

the class DefaultConfiguration method dump.

/**
     * Print a formatted representation of a Configuration
     */
public String dump() {
    StringBuilder reply = new StringBuilder();
    reply.append("\nConfiguration:");
    reply.append("  class='" + this.getClass() + "'");
    reply.append("  name='" + this.getName() + "'");
    reply.append("  hashcode='" + this.hashCode() + "'");
    reply.append("\nLocal Dependencies:");
    if (getDependencies().size() > 0) {
        for (Dependency d : getDependencies()) {
            reply.append("\n   " + d);
        }
    } else {
        reply.append("\n   none");
    }
    reply.append("\nLocal Artifacts:");
    if (getArtifacts().size() > 0) {
        for (PublishArtifact a : getArtifacts()) {
            reply.append("\n   " + a);
        }
    } else {
        reply.append("\n   none");
    }
    reply.append("\nAll Dependencies:");
    if (getAllDependencies().size() > 0) {
        for (Dependency d : getAllDependencies()) {
            reply.append("\n   " + d);
        }
    } else {
        reply.append("\n   none");
    }
    reply.append("\nAll Artifacts:");
    if (getAllArtifacts().size() > 0) {
        for (PublishArtifact a : getAllArtifacts()) {
            reply.append("\n   " + a);
        }
    } else {
        reply.append("\n   none");
    }
    return reply.toString();
}
Also used : TaskDependency(org.gradle.api.tasks.TaskDependency) FileCollectionDependency(org.gradle.api.artifacts.FileCollectionDependency) AbstractTaskDependency(org.gradle.api.internal.tasks.AbstractTaskDependency) Dependency(org.gradle.api.artifacts.Dependency) ConfigurablePublishArtifact(org.gradle.api.artifacts.ConfigurablePublishArtifact) PublishArtifact(org.gradle.api.artifacts.PublishArtifact)

Example 10 with Dependency

use of org.gradle.api.artifacts.Dependency in project gradle by gradle.

the class UnresolvableConfigurationResult method getChildren.

@Override
public Set<? extends RenderableDependency> getChildren() {
    final DependencySet dependencies = configuration.getDependencies();
    if (dependencies.isEmpty()) {
        return Collections.emptySet();
    }
    Set<RenderableDependency> children = Sets.newLinkedHashSet();
    for (final Dependency dependency : dependencies) {
        children.add(new RenderableDependency() {

            @Override
            public Object getId() {
                return dependency;
            }

            @Override
            public String getName() {
                String label;
                if (dependency instanceof ProjectDependency) {
                    label = "project " + dependency.getName();
                } else {
                    label = Joiner.on(":").join(Iterables.filter(Arrays.asList(dependency.getGroup(), dependency.getName(), dependency.getVersion()), Predicates.<String>notNull()));
                }
                return label;
            }

            @Override
            public String getDescription() {
                return null;
            }

            @Override
            public ResolutionState getResolutionState() {
                return ResolutionState.UNRESOLVED;
            }

            @Override
            public Set<? extends RenderableDependency> getChildren() {
                return Collections.emptySet();
            }
        });
    }
    return children;
}
Also used : Set(java.util.Set) DependencySet(org.gradle.api.artifacts.DependencySet) DependencySet(org.gradle.api.artifacts.DependencySet) ProjectDependency(org.gradle.api.artifacts.ProjectDependency) Dependency(org.gradle.api.artifacts.Dependency) ProjectDependency(org.gradle.api.artifacts.ProjectDependency)

Aggregations

Dependency (org.gradle.api.artifacts.Dependency)20 Configuration (org.gradle.api.artifacts.Configuration)7 File (java.io.File)4 DependencySet (org.gradle.api.artifacts.DependencySet)4 FileCollectionDependency (org.gradle.api.artifacts.FileCollectionDependency)4 ProjectDependency (org.gradle.api.artifacts.ProjectDependency)4 TaskDependency (org.gradle.api.tasks.TaskDependency)4 SelfResolvingDependency (org.gradle.api.artifacts.SelfResolvingDependency)3 AbstractTaskDependency (org.gradle.api.internal.tasks.AbstractTaskDependency)3 ImmutableList (com.google.common.collect.ImmutableList)2 ArrayList (java.util.ArrayList)2 ModuleDependency (org.gradle.api.artifacts.ModuleDependency)2 DefaultExternalModuleDependency (org.gradle.api.internal.artifacts.dependencies.DefaultExternalModuleDependency)2 FileCollectionInternal (org.gradle.api.internal.file.FileCollectionInternal)2 NonNull (com.android.annotations.NonNull)1 DependencyContainerImpl (com.android.builder.dependency.DependencyContainerImpl)1 JarDependency (com.android.builder.dependency.JarDependency)1 LibraryDependency (com.android.builder.dependency.LibraryDependency)1 MavenCoordinates (com.android.builder.model.MavenCoordinates)1 MtlBaseTaskAction (com.taobao.android.builder.tasks.manager.MtlBaseTaskAction)1