# BuildController

interface BuildController(source)

Provides a BuildAction various ways to control a Gradle build and access information about the build.

#### Since

1.8

## Functions

fetch
Link copied to clipboard
@Incubating
abstract fun <M> fetch(modelType: Class<M>): FetchModelResult<M>
Fetches a snapshot of the model of the given type for the default project using resilient model fetching.
@Incubating
abstract fun <M> fetch(target: Model, modelType: Class<M>): FetchModelResult<M>
Fetches a snapshot of the model of the given type for the given element using resilient model fetching.
@Incubating
abstract fun <M, P> fetch(modelType: Class<M>, @Nullable parameterType: @Nullable Class<P>, @Nullable parameterInitializer: @Nullable Action<in P>): FetchModelResult<M>
Fetches a snapshot of the model of the given type using the given parameter using resilient model fetching.
@Incubating
abstract fun <M, P> fetch(@Nullable target: @Nullable Model, modelType: Class<M>, @Nullable parameterType: @Nullable Class<P>, @Nullable parameterInitializer: @Nullable Action<in P>): FetchModelResult<M>
Fetches a snapshot of the model of the given type for the given element using the given parameter with resilient model fetching.
fetch
Link copied to clipboard
@Incubating
inline fun <M : Any> BuildController.fetch(modelType: KClass<M>): FetchModelResult<M>
@Incubating
inline fun <M : Any> BuildController.fetch(target: Model, modelType: KClass<M>): FetchModelResult<M>
@Incubating
inline fun <M : Any, P : Any> BuildController.fetch(modelType: KClass<M>, parameterType: KClass<P>, parameterInitializer: Action<in P>): FetchModelResult<M>
@Incubating
inline fun <M : Any, P : Any> BuildController.fetch(target: Model, modelType: KClass<M>, parameterType: KClass<P>, parameterInitializer: Action<in P>): FetchModelResult<M>

Kotlin extension function taking kotlin.reflect.KClass for org.gradle.tooling.BuildController.fetch.

findModel
Link copied to clipboard
@Nullable
abstract fun <T> findModel(modelType: Class<T>): @Nullable T
@Nullable
abstract fun <T> findModel(target: Model, modelType: Class<T>): @Nullable T
Fetches a snapshot of the model of the given type, if available.
@Nullable
abstract fun <T, P> findModel(modelType: Class<T>, parameterType: Class<P>, parameterInitializer: Action<in P>): @Nullable T
Fetches a snapshot of the model of the given type using the given parameter, if available.
@Nullable
abstract fun <T, P> findModel(target: Model, modelType: Class<T>, parameterType: Class<P>, parameterInitializer: Action<in P>): @Nullable T
Fetches a snapshot of the model of the given type for the given element using the given parameter, if available.
findModel
Link copied to clipboard
inline fun <T : Any> BuildController.findModel(modelType: KClass<T>): T?
inline fun <T : Any> BuildController.findModel(target: Model, modelType: KClass<T>): T?
inline fun <T : Any, P : Any> BuildController.findModel(modelType: KClass<T>, parameterType: KClass<P>, parameterInitializer: Action<in P>): T?
inline fun <T : Any, P : Any> BuildController.findModel(target: Model, modelType: KClass<T>, parameterType: KClass<P>, parameterInitializer: Action<in P>): T?

Kotlin extension function taking kotlin.reflect.KClass for org.gradle.tooling.BuildController.findModel.

getBuildModel
Link copied to clipboard
abstract fun getBuildModel(): GradleBuild
Returns an overview of the Gradle build, including some basic details of the projects that make up the build.
getCanQueryProjectModelInParallel
Link copied to clipboard
abstract fun getCanQueryProjectModelInParallel(modelType: Class<out Any>): Boolean
Returns `true` when actions run using run and that query project models of the given type will run in parallel.
getCanQueryProjectModelInParallel
Link copied to clipboard
inline fun BuildController.getCanQueryProjectModelInParallel(modelType: KClass<*>): Boolean

Kotlin extension function taking kotlin.reflect.KClass for org.gradle.tooling.BuildController.getCanQueryProjectModelInParallel.

getModel
Link copied to clipboard
abstract fun <T> getModel(modelType: Class<T>): T
Fetches a snapshot of the model of the given type for the default project.
abstract fun <T> getModel(target: Model, modelType: Class<T>): T
Fetches a snapshot of the model of the given type for the given element, usually a Gradle project.
abstract fun <T, P> getModel(modelType: Class<T>, parameterType: Class<P>, parameterInitializer: Action<in P>): T
Fetches a snapshot of the model of the given type using the given parameter.
abstract fun <T, P> getModel(target: Model, modelType: Class<T>, parameterType: Class<P>, parameterInitializer: Action<in P>): T
Fetches a snapshot of the model of the given type for the given element using the given parameter.
getModel
Link copied to clipboard
inline fun <T : Any> BuildController.getModel(modelType: KClass<T>): T
inline fun <T : Any> BuildController.getModel(target: Model, modelType: KClass<T>): T
inline fun <T : Any, P : Any> BuildController.getModel(modelType: KClass<T>, parameterType: KClass<P>, parameterInitializer: Action<in P>): T
inline fun <T : Any, P : Any> BuildController.getModel(target: Model, modelType: KClass<T>, parameterType: KClass<P>, parameterInitializer: Action<in P>): T

Kotlin extension function taking kotlin.reflect.KClass for org.gradle.tooling.BuildController.getModel.

run
Link copied to clipboard
abstract fun <T> run(actions: Collection<out BuildAction<out T>>): List<T>
Runs the given actions and returns their results.
send
Link copied to clipboard
abstract fun send(value: Any)
Streams an object to the client application.