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.ToolingRegistryProviderprotected boolean isPackagePublished()