org.ysb33r.grolifant5.loadable.v8.DefaultTaskTools.groovy Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of grolifant5-80 Show documentation
Show all versions of grolifant5-80 Show documentation
Building blocks which are key to writing various kinds of Gradle plugins, but which are not easily obtainable from Gradle core itself
/*
* ============================================================================
* (C) Copyright Schalk W. Cronje 2016 - 2024
*
* This software is licensed under the Apache License 2.0
* See http://www.apache.org/licenses/LICENSE-2.0 for license details
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
* ============================================================================
*/
package org.ysb33r.grolifant5.loadable.v8
import groovy.transform.CompileDynamic
import groovy.transform.CompileStatic
import org.gradle.api.Action
import org.gradle.api.DefaultTask
import org.gradle.api.Project
import org.gradle.api.Task
import org.gradle.api.tasks.TaskInputFilePropertyBuilder
import org.gradle.api.tasks.TaskProvider
import org.ysb33r.grolifant5.api.core.ProjectOperations
import org.ysb33r.grolifant5.api.core.TaskInputFileOptions
import org.ysb33r.grolifant5.api.core.TaskTools
import org.ysb33r.grolifant5.loadable.core.TaskToolsProxy
import static org.ysb33r.grolifant5.api.core.TaskInputFileOptions.IGNORE_EMPTY_DIRECTORIES
import static org.ysb33r.grolifant5.api.core.TaskInputFileOptions.NORMALIZE_LINE_ENDINGS
import static org.ysb33r.grolifant5.api.core.TaskInputFileOptions.OPTIONAL
import static org.ysb33r.grolifant5.api.core.TaskInputFileOptions.SKIP_WHEN_EMPTY
/**
* Implements {@link TaskTools} for Gradle 8.x
*
* @author Schalk W. Cronjé
*
* @since 2.0
*/
@CompileStatic
class DefaultTaskTools extends TaskToolsProxy {
DefaultTaskTools(ProjectOperations incompleteReference, Project project) {
super(incompleteReference, project)
}
/**
* Registers a task in a lazy-manner.
*
* @param taskName Name of task to register. Task must have been registered or configured previously.
* @param taskType Type of task.
* @param configurator Configurating action.
* @param < T > Type of task.
*/
@Override
public void register(String taskName, Class taskType, Action configurator) {
tasks.register(taskName, taskType, configurator)
}
/**
* Registers a task in a lazy-manner.
*
* @param taskName Name of task to register. Task must have been registered or configured previously.
* @param taskType Type of task.
* @param args C-tor arguments.
* @param configurator Configurating action.
* @param Type of task.
*/
@Override
public void register(
String taskName,
Class taskType,
Iterable
© 2015 - 2025 Weber Informatics LLC | Privacy Policy