# TransformInvocation

# TransformInvocation

```
interface TransformInvocation
```

|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [com.android.build.api.transform.TransformInvocation](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformInvocation#) |

An invocation object used to pass of pertinent information for a[Transform#transform(TransformInvocation)](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/Transform#transform(com.android.build.api.transform.TransformInvocation))call.

## Summary

|                                                                                                                                                                                                                                                 ### Public methods                                                                                                                                                                                                                                                 ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| abstract[Context](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/Context)                                                                                                                                       | [getContext](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformInvocation#getContext())`()` Returns the context in which the transform is run.                                                  |
| abstract[MutableCollection](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-collection/index.html)\<[TransformInput](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformInput)!\> | [getInputs](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformInvocation#getInputs())`()` Returns the inputs/outputs of the transform.                                                          |
| abstract[TransformOutputProvider](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformOutputProvider)?                                                                                                      | [getOutputProvider](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformInvocation#getOutputProvider())`()` Returns the output provider allowing to create content.                               |
| abstract[MutableCollection](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-collection/index.html)\<[TransformInput](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformInput)!\> | [getReferencedInputs](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformInvocation#getReferencedInputs())`()` Returns the referenced-only inputs which are not consumed by this transformation. |
| abstract[MutableCollection](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-collection/index.html)\<[SecondaryInput](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/SecondaryInput)!\> | [getSecondaryInputs](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformInvocation#getSecondaryInputs())`()` Returns the list of secondary file changes since last.                              |
| abstract[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                                                                                    | [isIncremental](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformInvocation#isIncremental())`()` Indicates whether the transform execution is incremental.                                     |

## Public methods

### getContext

```
@NonNull abstract fun getContext(): Context
```

Returns the context in which the transform is run.

| Return ||
|---|---|
| [Context](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/Context):the context in which the transform is run. ||

### getInputs

```
@NonNull abstract fun getInputs(): MutableCollection<TransformInput!>
```

Returns the inputs/outputs of the transform.

| Return ||
|---|---|
| [MutableCollection](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-collection/index.html)\<[TransformInput](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformInput)!\>:the inputs/outputs of the transform. ||

### getOutputProvider

```
@Nullable abstract fun getOutputProvider(): TransformOutputProvider?
```

Returns the output provider allowing to create content.

| Return ||
|---|---|
| [TransformOutputProvider](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformOutputProvider)?:he output provider allowing to create content. ||

### getReferencedInputs

```
@NonNull abstract fun getReferencedInputs(): MutableCollection<TransformInput!>
```

Returns the referenced-only inputs which are not consumed by this transformation.

| Return ||
|---|---|
| [MutableCollection](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-collection/index.html)\<[TransformInput](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/TransformInput)!\>:the referenced-only inputs. ||

### getSecondaryInputs

```
@NonNull abstract fun getSecondaryInputs(): MutableCollection<SecondaryInput!>
```

Returns the list of secondary file changes since last. Only secondary files that this transform can handle incrementally will be part of this change set.

| Return ||
|---|---|
| [MutableCollection](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-collection/index.html)\<[SecondaryInput](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/SecondaryInput)!\>:the list of changes impacting a[SecondaryInput](https://developer.android.com/reference/tools/gradle-api/4.2/com/android/build/api/transform/SecondaryInput) ||

### isIncremental

```
abstract fun isIncremental(): Boolean
```

Indicates whether the transform execution is incremental.

| Return ||
|---|---|
| [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html):true for an incremental invocation, false otherwise. ||