Search in sources :

Example 21 with Task

use of org.gradle.api.Task in project gradle by gradle.

the class TestUtility method createTask.

/**
     * Creates a mock task with the specified properites.
     */
public static Task createTask(JUnit4Mockery context, final String name, final String description) {
    final Task task = context.mock(Task.class, "[task]_" + name + '_' + uniqueNameCounter++);
    context.checking(new Expectations() {

        {
            allowing(task).getName();
            will(returnValue(name));
            allowing(task).getDescription();
            will(returnValue(description));
        }
    });
    return task;
}
Also used : Expectations(org.jmock.Expectations) Task(org.gradle.api.Task)

Example 22 with Task

use of org.gradle.api.Task in project gradle by gradle.

the class TaskSelector method getFilter.

public Spec<Task> getFilter(String path) {
    final ResolvedTaskPath taskPath = taskPathResolver.resolvePath(path, gradle.getDefaultProject());
    if (!taskPath.isQualified()) {
        ProjectInternal targetProject = taskPath.getProject();
        configurer.configure(targetProject);
        if (taskNameResolver.tryFindUnqualifiedTaskCheaply(taskPath.getTaskName(), taskPath.getProject())) {
            // An exact match in the target project - can just filter tasks by path to avoid configuring sub-projects at this point
            return new TaskPathSpec(targetProject, taskPath.getTaskName());
        }
    }
    final Set<Task> selectedTasks = getSelection(path, gradle.getDefaultProject()).getTasks();
    return new Spec<Task>() {

        public boolean isSatisfiedBy(Task element) {
            return !selectedTasks.contains(element);
        }
    };
}
Also used : ResolvedTaskPath(org.gradle.execution.taskpath.ResolvedTaskPath) Task(org.gradle.api.Task) ProjectInternal(org.gradle.api.internal.project.ProjectInternal) Spec(org.gradle.api.specs.Spec)

Example 23 with Task

use of org.gradle.api.Task in project gradle by gradle.

the class DryRunBuildExecutionAction method execute.

public void execute(BuildExecutionContext context) {
    GradleInternal gradle = context.getGradle();
    if (gradle.getStartParameter().isDryRun()) {
        for (Task task : gradle.getTaskGraph().getAllTasks()) {
            task.setEnabled(false);
        }
    }
    context.proceed();
}
Also used : GradleInternal(org.gradle.api.internal.GradleInternal) Task(org.gradle.api.Task)

Example 24 with Task

use of org.gradle.api.Task in project gradle by gradle.

the class ExcludedTaskFilteringBuildConfigurationAction method configure.

public void configure(BuildExecutionContext context) {
    GradleInternal gradle = context.getGradle();
    Set<String> excludedTaskNames = gradle.getStartParameter().getExcludedTaskNames();
    if (!excludedTaskNames.isEmpty()) {
        final Set<Spec<Task>> filters = new HashSet<Spec<Task>>();
        for (String taskName : excludedTaskNames) {
            filters.add(taskSelector.getFilter(taskName));
        }
        gradle.getTaskGraph().useFilter(Specs.intersect(filters));
    }
    context.proceed();
}
Also used : GradleInternal(org.gradle.api.internal.GradleInternal) Task(org.gradle.api.Task) Spec(org.gradle.api.specs.Spec) HashSet(java.util.HashSet)

Example 25 with Task

use of org.gradle.api.Task in project gradle by gradle.

the class TaskDetailPrinter method printTaskAttribute.

private void printTaskAttribute(StyledTextOutput output, String attributeHeader, List<Task> tasks, Transformer<String, Task> transformer) {
    int count = collect(tasks, new HashSet<String>(), transformer).size();
    final LinePrefixingStyledTextOutput attributeOutput = createIndentedOutput(output, INDENT);
    if (count == 1) {
        // all tasks have the same value
        attributeOutput.println(attributeHeader);
        final Task task = tasks.iterator().next();
        String value = transformer.transform(task);
        attributeOutput.println(value == null ? "-" : value);
    } else {
        attributeOutput.println(attributeHeader + "s");
        for (Task task : tasks) {
            attributeOutput.withStyle(UserInput).text("(" + task.getPath() + ") ");
            String value = transformer.transform(task);
            attributeOutput.println(value == null ? "-" : value);
        }
    }
}
Also used : Task(org.gradle.api.Task) DefaultTask(org.gradle.api.DefaultTask) LinePrefixingStyledTextOutput(org.gradle.internal.logging.text.LinePrefixingStyledTextOutput)

Aggregations

Task (org.gradle.api.Task)116 Test (org.junit.Test)21 File (java.io.File)18 DefaultTask (org.gradle.api.DefaultTask)16 Expectations (org.jmock.Expectations)14 Project (org.gradle.api.Project)12 ArrayList (java.util.ArrayList)10 IOException (java.io.IOException)6 Callable (java.util.concurrent.Callable)6 Action (org.gradle.api.Action)6 HashSet (java.util.HashSet)5 Map (java.util.Map)5 DefaultAndroidTask (com.android.build.gradle.internal.tasks.DefaultAndroidTask)4 List (java.util.List)4 Set (java.util.Set)4 InvalidUserDataException (org.gradle.api.InvalidUserDataException)4 TaskInternal (org.gradle.api.internal.TaskInternal)4 Spec (org.gradle.api.specs.Spec)4 TaskContainer (org.gradle.api.tasks.TaskContainer)4 TaskDependency (org.gradle.api.tasks.TaskDependency)4