com.pulumi.awsnative.datasync.kotlin.outputs.GetTaskResult.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.datasync.kotlin.outputs
import com.pulumi.awsnative.datasync.kotlin.enums.TaskStatus
import com.pulumi.awsnative.kotlin.outputs.Tag
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
/**
*
* @property cloudWatchLogGroupArn The ARN of the Amazon CloudWatch log group that is used to monitor and log events in the task.
* @property destinationNetworkInterfaceArns The ARNs of the destination elastic network interfaces (ENIs) that were created for your subnet.
* @property excludes Specifies exclude filters that define the files, objects, and folders in your source location that you don't want DataSync to transfer. For more information and examples, see [Specifying what DataSync transfers by using filters](https://docs.aws.amazon.com/datasync/latest/userguide/filtering.html) .
* @property includes Specifies include filters define the files, objects, and folders in your source location that you want DataSync to transfer. For more information and examples, see [Specifying what DataSync transfers by using filters](https://docs.aws.amazon.com/datasync/latest/userguide/filtering.html) .
* @property manifestConfig The configuration of the manifest that lists the files or objects that you want DataSync to transfer. For more information, see [Specifying what DataSync transfers by using a manifest](https://docs.aws.amazon.com/datasync/latest/userguide/transferring-with-manifest.html) .
* @property name The name of a task. This value is a text reference that is used to identify the task in the console.
* @property options Specifies your task's settings, such as preserving file metadata, verifying data integrity, among other options.
* @property schedule Specifies a schedule for when you want your task to run. For more information, see [Scheduling your task](https://docs.aws.amazon.com/datasync/latest/userguide/task-scheduling.html) .
* @property sourceNetworkInterfaceArns The ARNs of the source ENIs that were created for your subnet.
* @property status The status of the task that was described.
* @property tags An array of key-value pairs to apply to this resource.
* @property taskArn The ARN of the task.
* @property taskReportConfig Specifies how you want to configure a task report, which provides detailed information about your DataSync transfer. For more information, see [Monitoring your DataSync transfers with task reports](https://docs.aws.amazon.com/datasync/latest/userguide/task-reports.html) .
* When using this parameter, your caller identity (the role that you're using DataSync with) must have the `iam:PassRole` permission. The [AWSDataSyncFullAccess](https://docs.aws.amazon.com/datasync/latest/userguide/security-iam-awsmanpol.html#security-iam-awsmanpol-awsdatasyncfullaccess) policy includes this permission.
*/
public data class GetTaskResult(
public val cloudWatchLogGroupArn: String? = null,
public val destinationNetworkInterfaceArns: List? = null,
public val excludes: List? = null,
public val includes: List? = null,
public val manifestConfig: TaskManifestConfig? = null,
public val name: String? = null,
public val options: TaskOptions? = null,
public val schedule: TaskSchedule? = null,
public val sourceNetworkInterfaceArns: List? = null,
public val status: TaskStatus? = null,
public val tags: List? = null,
public val taskArn: String? = null,
public val taskReportConfig: TaskReportConfig? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.awsnative.datasync.outputs.GetTaskResult): GetTaskResult = GetTaskResult(
cloudWatchLogGroupArn = javaType.cloudWatchLogGroupArn().map({ args0 -> args0 }).orElse(null),
destinationNetworkInterfaceArns = javaType.destinationNetworkInterfaceArns().map({ args0 ->
args0
}),
excludes = javaType.excludes().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.datasync.kotlin.outputs.TaskFilterRule.Companion.toKotlin(args0)
})
}),
includes = javaType.includes().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.datasync.kotlin.outputs.TaskFilterRule.Companion.toKotlin(args0)
})
}),
manifestConfig = javaType.manifestConfig().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.datasync.kotlin.outputs.TaskManifestConfig.Companion.toKotlin(args0)
})
}).orElse(null),
name = javaType.name().map({ args0 -> args0 }).orElse(null),
options = javaType.options().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.datasync.kotlin.outputs.TaskOptions.Companion.toKotlin(args0)
})
}).orElse(null),
schedule = javaType.schedule().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.datasync.kotlin.outputs.TaskSchedule.Companion.toKotlin(args0)
})
}).orElse(null),
sourceNetworkInterfaceArns = javaType.sourceNetworkInterfaceArns().map({ args0 -> args0 }),
status = javaType.status().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.datasync.kotlin.enums.TaskStatus.Companion.toKotlin(args0)
})
}).orElse(null),
tags = javaType.tags().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.kotlin.outputs.Tag.Companion.toKotlin(args0)
})
}),
taskArn = javaType.taskArn().map({ args0 -> args0 }).orElse(null),
taskReportConfig = javaType.taskReportConfig().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.datasync.kotlin.outputs.TaskReportConfig.Companion.toKotlin(args0)
})
}).orElse(null),
)
}
}