ModelBuilder

A ModelBuilder allows you to fetch a snapshot of some model for a project or a build. Instances of ModelBuilder are not thread-safe.

You use a ModelBuilder as follows:

  • Create an instance of ModelBuilder by calling model.
  • Configure the builder as appropriate.
  • Call either get or get to build the model.
  • Optionally, you can reuse the builder to build the model multiple times.
Example:
ProjectConnection connection = GradleConnector.newConnector()
   .forProjectDirectory(new File("someFolder"))
   .connect();

try {
   ModelBuilder<GradleProject> builder = connection.model(GradleProject.class);

   //configure the standard input in case your build is interactive:
   builder.setStandardInput(new ByteArrayInputStream("consume this!".getBytes()));

   //if you want to listen to the progress events:
   ProgressListener listener = null; // use your implementation
   builder.addProgressListener(listener);

   //get the model:
   GradleProject project = builder.get();

   //query the model for information:
   System.out.println("Available tasks: " + project.getTasks());
} finally {
   connection.close();
}

Since

1.0-milestone-3

Parameters

<T>

The type of model to build

Functions

Link copied to clipboard
abstract fun addArguments(arguments: Array<String>): T
abstract fun addArguments(arguments: Array<String>): LongRunningOperation
Link copied to clipboard
abstract fun addJvmArguments(jvmArguments: Array<String>): T
abstract fun addJvmArguments(jvmArguments: Array<String>): LongRunningOperation
Link copied to clipboard
Link copied to clipboard
abstract fun forTasks(tasks: Iterable<String>): ModelBuilder<T>
abstract fun forTasks(tasks: Array<String>): ModelBuilder<T>
Specifies the tasks to execute before building the model.
Link copied to clipboard
abstract fun get(): T
Fetch the model, blocking until it is available.
abstract fun get(handler: ResultHandler<in T>)
Starts fetching the model, passing the result to the given handler when complete.
Link copied to clipboard
abstract fun setColorOutput(colorOutput: Boolean): T
abstract fun setColorOutput(colorOutput: Boolean): LongRunningOperation
Link copied to clipboard
abstract fun setEnvironmentVariables(envVariables: Map<String, String>): T
abstract fun setEnvironmentVariables(envVariables: @Nullable Map<String, String>): LongRunningOperation
Link copied to clipboard
abstract fun setJavaHome(javaHome: File): T
abstract fun setJavaHome(javaHome: @Nullable File): LongRunningOperation
Link copied to clipboard
abstract fun setJvmArguments(jvmArguments: Array<String>): T
abstract fun setJvmArguments(jvmArguments: Array<@Nullable String>): LongRunningOperation
Link copied to clipboard
abstract fun setStandardError(outputStream: OutputStream): T
Link copied to clipboard
abstract fun setStandardInput(inputStream: InputStream): T
Link copied to clipboard
abstract fun setStandardOutput(outputStream: OutputStream): T
Link copied to clipboard
abstract fun withArguments(arguments: Array<String>): T
abstract fun withArguments(arguments: Array<@Nullable String>): LongRunningOperation
Link copied to clipboard
abstract fun withCancellationToken(cancellationToken: CancellationToken): T
Link copied to clipboard
Link copied to clipboard
abstract fun withSystemProperties(systemProperties: Map<String, String>): T
abstract fun withSystemProperties(systemProperties: Map<String, String>): LongRunningOperation