All Downloads are FREE. Search and download functionalities are using the official Maven repository.

name.remal.gradle_plugins.sonarlint.BaseSonarLintHelp Maven / Gradle / Ivy

There is a newer version: 4.2.15
Show newest version
package name.remal.gradle_plugins.sonarlint;

import static org.gradle.api.plugins.HelpTasksPlugin.HELP_GROUP;

import lombok.Getter;
import name.remal.gradle_plugins.sonarlint.internal.SonarLintCommand;
import org.gradle.api.DefaultTask;
import org.gradle.api.tasks.Internal;
import org.gradle.api.tasks.TaskAction;

abstract class BaseSonarLintHelp
    extends DefaultTask
    implements BaseSonarLint {

    {
        getOutputs().doNotCacheIf("Non a cacheable task", __ -> true);
        setGroup(HELP_GROUP);
        setImpliesSubProjects(true);
        BaseSonarLintActions.init(this);
    }

    @Internal
    protected abstract SonarLintCommand getRunnerCommand();

    @Getter
    @SuppressWarnings("checkstyle:MemberName")
    private final BaseSonarLintInternals $internals = getProject().getObjects().newInstance(
        BaseSonarLintInternals.class,
        this
    );

    @TaskAction
    public void execute() {
        BaseSonarLintActions.execute(this, getRunnerCommand());
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy