Class IntermediateProcessor

java.lang.Object
com.cleanroommc.gradle.api.task.IntermediateProcessor

public final class IntermediateProcessor extends Object
Toggleable cleanup of intermediate jars/files that exist only to feed a later task.

When discard is enabled, a Delete task runs after the last scheduled consumer and removes those files from the project-local cache. The shared Gradle Home cache is never touched.

Register discard edges next to the pipeline that produces the file. Consumers that are not in the current task graph do not hold the delete back.

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    IntermediateProcessor(org.gradle.api.tasks.TaskContainer tasks, org.gradle.api.provider.Provider<Boolean> discardIntermediates)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    after(org.gradle.api.tasks.TaskProvider<org.gradle.api.tasks.Delete> discard, Collection<? extends org.gradle.api.tasks.TaskProvider<?>> consumers)
     
    void
    after(org.gradle.api.tasks.TaskProvider<org.gradle.api.tasks.Delete> discard, org.gradle.api.tasks.TaskProvider<?>... consumers)
    Adds more consumers that must finish before an existing discard task runs.
    org.gradle.api.tasks.TaskProvider<org.gradle.api.tasks.Delete>
    discardAfter(org.gradle.api.tasks.TaskProvider<?> consumer, Object... files)
    Deletes files after consumer has run (or been skipped as up-to-date).
    org.gradle.api.tasks.TaskProvider<org.gradle.api.tasks.Delete>
    discardAfterAll(String name, Collection<? extends org.gradle.api.tasks.TaskProvider<?>> consumers, Object... files)
    Deletes files after every scheduled consumer in consumers has finished.
    of(org.gradle.api.Project project)
     

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • IntermediateProcessor

      public IntermediateProcessor(org.gradle.api.tasks.TaskContainer tasks, org.gradle.api.provider.Provider<Boolean> discardIntermediates)
  • Method Details

    • of

      public static IntermediateProcessor of(org.gradle.api.Project project)
    • discardAfter

      public org.gradle.api.tasks.TaskProvider<org.gradle.api.tasks.Delete> discardAfter(org.gradle.api.tasks.TaskProvider<?> consumer, Object... files)
      Deletes files after consumer has run (or been skipped as up-to-date). No-op at execution time when discard is disabled.
    • discardAfterAll

      public org.gradle.api.tasks.TaskProvider<org.gradle.api.tasks.Delete> discardAfterAll(String name, Collection<? extends org.gradle.api.tasks.TaskProvider<?>> consumers, Object... files)
      Deletes files after every scheduled consumer in consumers has finished.
    • after

      public void after(org.gradle.api.tasks.TaskProvider<org.gradle.api.tasks.Delete> discard, org.gradle.api.tasks.TaskProvider<?>... consumers)
      Adds more consumers that must finish before an existing discard task runs.
    • after

      public void after(org.gradle.api.tasks.TaskProvider<org.gradle.api.tasks.Delete> discard, Collection<? extends org.gradle.api.tasks.TaskProvider<?>> consumers)