public abstract class BasePlugin<E extends com.android.build.gradle.internal.api.dsl.extensions.BaseExtension2>
extends java.lang.Object
implements org.gradle.api.Plugin<org.gradle.api.Project>, com.android.tools.lint.gradle.api.ToolingRegistryProvider
Modifier and Type | Field and Description |
---|---|
protected com.android.build.gradle.internal.ExtraModelInfo |
extraModelInfo |
static com.android.ide.common.repository.GradleVersion |
GRADLE_MIN_VERSION |
protected org.gradle.api.Project |
project |
protected ProjectOptions |
projectOptions |
protected com.android.build.gradle.internal.TaskManager |
taskManager |
Modifier and Type | Method and Description |
---|---|
void |
apply(org.gradle.api.Project project) |
protected abstract BaseExtension |
createExtension(org.gradle.api.Project project,
ProjectOptions projectOptions,
com.android.build.gradle.internal.scope.GlobalScope globalScope,
com.android.build.gradle.internal.SdkHandler sdkHandler,
org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.BuildType> buildTypeContainer,
org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.ProductFlavor> productFlavorContainer,
org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.SigningConfig> signingConfigContainer,
org.gradle.api.NamedDomainObjectContainer<BaseVariantOutput> buildOutputs,
com.android.build.gradle.internal.dependency.SourceSetManager sourceSetManager,
com.android.build.gradle.internal.ExtraModelInfo extraModelInfo) |
static void |
createLintClasspathConfiguration(org.gradle.api.Project project)
Creates a lint class path Configuration for the given project
|
protected abstract com.android.build.gradle.internal.TaskManager |
createTaskManager(com.android.build.gradle.internal.scope.GlobalScope globalScope,
org.gradle.api.Project project,
ProjectOptions projectOptions,
android.databinding.tool.DataBindingBuilder dataBindingBuilder,
AndroidConfig androidConfig,
com.android.build.gradle.internal.SdkHandler sdkHandler,
com.android.build.gradle.internal.variant.VariantFactory variantFactory,
org.gradle.tooling.provider.model.ToolingModelBuilderRegistry toolingRegistry,
com.android.builder.profile.Recorder threadRecorder) |
protected abstract com.android.build.gradle.internal.variant.VariantFactory |
createVariantFactory(com.android.build.gradle.internal.scope.GlobalScope globalScope,
AndroidConfig androidConfig) |
protected abstract com.google.wireless.android.sdk.stats.GradleBuildProject.PluginType |
getAnalyticsPluginType() |
BaseExtension |
getExtension() |
org.gradle.tooling.provider.model.ToolingModelBuilderRegistry |
getModelBuilderRegistry() |
protected abstract int |
getProjectType() |
protected abstract com.android.build.gradle.internal.plugin.TypedPluginDelegate<E> |
getTypedDelegate()
Returns the typed plugin delegate.
|
com.android.build.gradle.internal.VariantManager |
getVariantManager() |
protected boolean |
isPackagePublished()
If overridden in a subclass to return "true," the package Configuration will be named
"publish" instead of "apk"
|
protected abstract void |
pluginSpecificApply(org.gradle.api.Project project) |
protected void |
registerModelBuilder(org.gradle.tooling.provider.model.ToolingModelBuilderRegistry registry,
com.android.build.gradle.internal.scope.GlobalScope globalScope,
com.android.build.gradle.internal.VariantManager variantManager,
AndroidConfig config,
com.android.build.gradle.internal.ExtraModelInfo extraModelInfo)
Registers a builder for the custom tooling model.
|
protected void |
registerModels(org.gradle.tooling.provider.model.ToolingModelBuilderRegistry registry,
com.android.build.gradle.internal.scope.GlobalScope globalScope,
com.android.build.gradle.internal.VariantManager variantManager,
AndroidConfig config,
com.android.build.gradle.internal.ExtraModelInfo extraModelInfo) |
public static final com.android.ide.common.repository.GradleVersion GRADLE_MIN_VERSION
protected com.android.build.gradle.internal.TaskManager taskManager
protected org.gradle.api.Project project
protected ProjectOptions projectOptions
protected com.android.build.gradle.internal.ExtraModelInfo extraModelInfo
@NonNull protected abstract BaseExtension createExtension(@NonNull org.gradle.api.Project project, @NonNull ProjectOptions projectOptions, @NonNull com.android.build.gradle.internal.scope.GlobalScope globalScope, @NonNull com.android.build.gradle.internal.SdkHandler sdkHandler, @NonNull org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.BuildType> buildTypeContainer, @NonNull org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.ProductFlavor> productFlavorContainer, @NonNull org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.SigningConfig> signingConfigContainer, @NonNull org.gradle.api.NamedDomainObjectContainer<BaseVariantOutput> buildOutputs, @NonNull com.android.build.gradle.internal.dependency.SourceSetManager sourceSetManager, @NonNull com.android.build.gradle.internal.ExtraModelInfo extraModelInfo)
@NonNull protected abstract com.google.wireless.android.sdk.stats.GradleBuildProject.PluginType getAnalyticsPluginType()
@NonNull protected abstract com.android.build.gradle.internal.variant.VariantFactory createVariantFactory(@NonNull com.android.build.gradle.internal.scope.GlobalScope globalScope, @NonNull AndroidConfig androidConfig)
@NonNull protected abstract com.android.build.gradle.internal.TaskManager createTaskManager(@NonNull com.android.build.gradle.internal.scope.GlobalScope globalScope, @NonNull org.gradle.api.Project project, @NonNull ProjectOptions projectOptions, @NonNull android.databinding.tool.DataBindingBuilder dataBindingBuilder, @NonNull AndroidConfig androidConfig, @NonNull com.android.build.gradle.internal.SdkHandler sdkHandler, @NonNull com.android.build.gradle.internal.variant.VariantFactory variantFactory, @NonNull org.gradle.tooling.provider.model.ToolingModelBuilderRegistry toolingRegistry, @NonNull com.android.builder.profile.Recorder threadRecorder)
protected abstract int getProjectType()
public com.android.build.gradle.internal.VariantManager getVariantManager()
public BaseExtension getExtension()
public final void apply(@NonNull org.gradle.api.Project project)
apply
in interface org.gradle.api.Plugin<org.gradle.api.Project>
protected abstract void pluginSpecificApply(@NonNull org.gradle.api.Project project)
protected abstract com.android.build.gradle.internal.plugin.TypedPluginDelegate<E> getTypedDelegate()
This is the delegate that is specific to the actual plugin that is applied (app, lib, etc...)
In the long term when the old code path is removed this can be passed via the constructor.
public static void createLintClasspathConfiguration(@NonNull org.gradle.api.Project project)
protected void registerModels(@NonNull org.gradle.tooling.provider.model.ToolingModelBuilderRegistry registry, @NonNull com.android.build.gradle.internal.scope.GlobalScope globalScope, @NonNull com.android.build.gradle.internal.VariantManager variantManager, @NonNull AndroidConfig config, @NonNull com.android.build.gradle.internal.ExtraModelInfo extraModelInfo)
protected void registerModelBuilder(@NonNull org.gradle.tooling.provider.model.ToolingModelBuilderRegistry registry, @NonNull com.android.build.gradle.internal.scope.GlobalScope globalScope, @NonNull com.android.build.gradle.internal.VariantManager variantManager, @NonNull AndroidConfig config, @NonNull com.android.build.gradle.internal.ExtraModelInfo extraModelInfo)
@NonNull public org.gradle.tooling.provider.model.ToolingModelBuilderRegistry getModelBuilderRegistry()
getModelBuilderRegistry
in interface com.android.tools.lint.gradle.api.ToolingRegistryProvider
protected boolean isPackagePublished()