# Class BackgroundInitializer.Builder<I extends BackgroundInitializer<T>, T>

java.lang.Object
org.apache.commons.lang3.builder.AbstractSupplier<I, BackgroundInitializer.Builder<I,T>, Exception>
org.apache.commons.lang3.concurrent.AbstractConcurrentInitializer.AbstractBuilder<I, T, BackgroundInitializer.Builder<I,T>, Exception>
org.apache.commons.lang3.concurrent.BackgroundInitializer.Builder<I,T>

Type Parameters:
  `I` - The type of the initializer managed by this builder.
  `T` - The type of results supplied by this builder.

All Implemented Interfaces:
  `FailableSupplier<I, Exception>`

Enclosing class:
  `BackgroundInitializer<T>`

public static class BackgroundInitializer.Builder<I extends BackgroundInitializer<T>, T> extends AbstractConcurrentInitializer.AbstractBuilder<I, T, BackgroundInitializer.Builder<I,T>, Exception>
Builds a new instance.

Since:
  3.14.0

- ## Field Summary

  ### Fields inherited from interface FailableSupplier

  `NUL`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Builder()`
  Constructs a new instance.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `I`
  `get()`
  Supplies an object
  `BackgroundInitializer.Builder<I,T>`
  `setExternalExecutor(ExecutorService externalExecutor)`
  Sets the external executor service for executing tasks. null is a permitted value.

  ### Methods inherited from class AbstractConcurrentInitializer.AbstractBuilder

  `getCloser, getInitializer, setCloser, setInitializer`

  ### Methods inherited from class AbstractSupplier

  `asThis`

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### Builder

    public Builder()
    Constructs a new instance.

- ## Method Details

  - ### get

    public I get()
    Description copied from interface: `FailableSupplier`
    Supplies an object
    Returns:
      a result

  - ### setExternalExecutor

    public BackgroundInitializer.Builder<I,T> setExternalExecutor(ExecutorService externalExecutor)
    Sets the external executor service for executing tasks. null is a permitted value.
    Parameters:
      `externalExecutor` - the `ExecutorService` to be used.
    Returns:
      `this` instance.
    See Also:
      - `BackgroundInitializer.setExternalExecutor(ExecutorService)`