All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.vigoo.zioaws.datasync.package.scala Maven / Gradle / Ivy

package io.github.vigoo.zioaws
import io.github.vigoo.zioaws.datasync.model.TagResourceResponse.ReadOnly
import io.github.vigoo.zioaws.datasync.DataSync
import software.amazon.awssdk.services.datasync.model.{
  CancelTaskExecutionRequest,
  ListLocationsResponse,
  DescribeLocationObjectStorageResponse,
  CreateLocationNfsResponse,
  UpdateTaskExecutionResponse,
  UpdateLocationNfsRequest,
  ListTasksResponse,
  CreateTaskRequest,
  TaskListEntry,
  CreateLocationSmbRequest,
  DescribeAgentResponse,
  UpdateAgentRequest,
  DeleteLocationResponse,
  DescribeLocationFsxWindowsResponse,
  TagListEntry,
  DeleteAgentRequest,
  CreateLocationS3Response,
  DescribeLocationS3Request,
  DescribeLocationNfsRequest,
  UpdateLocationObjectStorageRequest,
  CreateLocationHdfsResponse,
  CreateLocationEfsRequest,
  DescribeLocationSmbResponse,
  UpdateLocationSmbRequest,
  UpdateAgentResponse,
  CancelTaskExecutionResponse,
  UpdateLocationNfsResponse,
  ListTagsForResourceRequest,
  UpdateLocationHdfsResponse,
  DescribeTaskRequest,
  CreateLocationNfsRequest,
  DescribeLocationFsxWindowsRequest,
  TaskExecutionListEntry,
  CreateLocationSmbResponse,
  ListLocationsRequest,
  ListTagsForResourceResponse,
  UntagResourceResponse,
  StartTaskExecutionRequest,
  CreateAgentResponse,
  LocationListEntry,
  DescribeLocationEfsRequest,
  DeleteAgentResponse,
  DescribeTaskResponse,
  CreateLocationS3Request,
  ListTasksRequest,
  DeleteTaskRequest,
  CreateLocationObjectStorageRequest,
  DeleteTaskResponse,
  ListTaskExecutionsRequest,
  UpdateLocationHdfsRequest,
  UntagResourceRequest,
  DescribeLocationHdfsRequest,
  DescribeAgentRequest,
  UpdateLocationObjectStorageResponse,
  AgentListEntry,
  CreateLocationHdfsRequest,
  CreateAgentRequest,
  CreateLocationFsxWindowsRequest,
  DescribeLocationNfsResponse,
  ListTaskExecutionsResponse,
  CreateLocationEfsResponse,
  DescribeLocationSmbRequest,
  DescribeLocationHdfsResponse,
  DescribeTaskExecutionResponse,
  ListAgentsResponse,
  CreateTaskResponse,
  CreateLocationObjectStorageResponse,
  StartTaskExecutionResponse,
  DeleteLocationRequest,
  UpdateTaskResponse,
  DescribeTaskExecutionRequest,
  TagResourceResponse,
  DescribeLocationObjectStorageRequest,
  DescribeLocationS3Response,
  UpdateTaskExecutionRequest,
  ListAgentsRequest,
  UpdateTaskRequest,
  TagResourceRequest,
  UpdateLocationSmbResponse,
  DescribeLocationEfsResponse,
  CreateLocationFsxWindowsResponse
}
import io.github.vigoo.zioaws.core.{AwsServiceBase, AwsError}
import io.github.vigoo.zioaws.core.config.AwsConfig
import zio.{ZManaged, IO, ZIO, ZLayer, URLayer, Has}
import io.github.vigoo.zioaws.core.aspects.{AwsCallAspect, AspectSupport}
import zio.stream.ZStream
import software.amazon.awssdk.services.datasync.{
  DataSyncAsyncClientBuilder,
  DataSyncAsyncClient
}
import zio.test.mock.{Proxy, Mock}
package object datasync {
  import scala.jdk.CollectionConverters._
  type DataSync = Has[DataSync.Service]
  object DataSync {
    trait Service extends AspectSupport[Service] {
      val api: DataSyncAsyncClient
      def updateTaskExecution(
          request: io.github.vigoo.zioaws.datasync.model.UpdateTaskExecutionRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.UpdateTaskExecutionResponse.ReadOnly
      ]
      def createLocationSmb(
          request: io.github.vigoo.zioaws.datasync.model.CreateLocationSmbRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.CreateLocationSmbResponse.ReadOnly
      ]
      def describeLocationSmb(
          request: io.github.vigoo.zioaws.datasync.model.DescribeLocationSmbRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DescribeLocationSmbResponse.ReadOnly
      ]
      def updateLocationHdfs(
          request: io.github.vigoo.zioaws.datasync.model.UpdateLocationHdfsRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.UpdateLocationHdfsResponse.ReadOnly
      ]
      def createTask(
          request: io.github.vigoo.zioaws.datasync.model.CreateTaskRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.CreateTaskResponse.ReadOnly
      ]
      def createAgent(
          request: io.github.vigoo.zioaws.datasync.model.CreateAgentRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.CreateAgentResponse.ReadOnly
      ]
      def startTaskExecution(
          request: io.github.vigoo.zioaws.datasync.model.StartTaskExecutionRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.StartTaskExecutionResponse.ReadOnly
      ]
      def createLocationObjectStorage(
          request: io.github.vigoo.zioaws.datasync.model.CreateLocationObjectStorageRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.CreateLocationObjectStorageResponse.ReadOnly
      ]
      def deleteTask(
          request: io.github.vigoo.zioaws.datasync.model.DeleteTaskRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DeleteTaskResponse.ReadOnly
      ]
      def describeLocationS3(
          request: io.github.vigoo.zioaws.datasync.model.DescribeLocationS3Request
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DescribeLocationS3Response.ReadOnly
      ]
      def createLocationNfs(
          request: io.github.vigoo.zioaws.datasync.model.CreateLocationNfsRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.CreateLocationNfsResponse.ReadOnly
      ]
      def createLocationFsxWindows(
          request: io.github.vigoo.zioaws.datasync.model.CreateLocationFsxWindowsRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.CreateLocationFsxWindowsResponse.ReadOnly
      ]
      def updateLocationSmb(
          request: io.github.vigoo.zioaws.datasync.model.UpdateLocationSmbRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.UpdateLocationSmbResponse.ReadOnly
      ]
      def cancelTaskExecution(
          request: io.github.vigoo.zioaws.datasync.model.CancelTaskExecutionRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.CancelTaskExecutionResponse.ReadOnly
      ]
      def describeAgent(
          request: io.github.vigoo.zioaws.datasync.model.DescribeAgentRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DescribeAgentResponse.ReadOnly
      ]
      def listLocations(
          request: io.github.vigoo.zioaws.datasync.model.ListLocationsRequest
      ): ZStream[
        Any,
        AwsError,
        io.github.vigoo.zioaws.datasync.model.LocationListEntry.ReadOnly
      ]
      def describeLocationObjectStorage(
          request: io.github.vigoo.zioaws.datasync.model.DescribeLocationObjectStorageRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DescribeLocationObjectStorageResponse.ReadOnly
      ]
      def describeLocationEfs(
          request: io.github.vigoo.zioaws.datasync.model.DescribeLocationEfsRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DescribeLocationEfsResponse.ReadOnly
      ]
      def updateLocationNfs(
          request: io.github.vigoo.zioaws.datasync.model.UpdateLocationNfsRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.UpdateLocationNfsResponse.ReadOnly
      ]
      def describeLocationHdfs(
          request: io.github.vigoo.zioaws.datasync.model.DescribeLocationHdfsRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DescribeLocationHdfsResponse.ReadOnly
      ]
      def deleteLocation(
          request: io.github.vigoo.zioaws.datasync.model.DeleteLocationRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DeleteLocationResponse.ReadOnly
      ]
      def untagResource(
          request: io.github.vigoo.zioaws.datasync.model.UntagResourceRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.UntagResourceResponse.ReadOnly
      ]
      def describeTaskExecution(
          request: io.github.vigoo.zioaws.datasync.model.DescribeTaskExecutionRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DescribeTaskExecutionResponse.ReadOnly
      ]
      def createLocationS3(
          request: io.github.vigoo.zioaws.datasync.model.CreateLocationS3Request
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.CreateLocationS3Response.ReadOnly
      ]
      def updateTask(
          request: io.github.vigoo.zioaws.datasync.model.UpdateTaskRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.UpdateTaskResponse.ReadOnly
      ]
      def listTaskExecutions(
          request: io.github.vigoo.zioaws.datasync.model.ListTaskExecutionsRequest
      ): ZStream[
        Any,
        AwsError,
        io.github.vigoo.zioaws.datasync.model.TaskExecutionListEntry.ReadOnly
      ]
      def listTagsForResource(
          request: io.github.vigoo.zioaws.datasync.model.ListTagsForResourceRequest
      ): ZStream[
        Any,
        AwsError,
        io.github.vigoo.zioaws.datasync.model.TagListEntry.ReadOnly
      ]
      def tagResource(
          request: io.github.vigoo.zioaws.datasync.model.TagResourceRequest
      ): IO[AwsError, ReadOnly]
      def updateLocationObjectStorage(
          request: io.github.vigoo.zioaws.datasync.model.UpdateLocationObjectStorageRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.UpdateLocationObjectStorageResponse.ReadOnly
      ]
      def listTasks(
          request: io.github.vigoo.zioaws.datasync.model.ListTasksRequest
      ): ZStream[
        Any,
        AwsError,
        io.github.vigoo.zioaws.datasync.model.TaskListEntry.ReadOnly
      ]
      def listAgents(
          request: io.github.vigoo.zioaws.datasync.model.ListAgentsRequest
      ): ZStream[
        Any,
        AwsError,
        io.github.vigoo.zioaws.datasync.model.AgentListEntry.ReadOnly
      ]
      def createLocationHdfs(
          request: io.github.vigoo.zioaws.datasync.model.CreateLocationHdfsRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.CreateLocationHdfsResponse.ReadOnly
      ]
      def deleteAgent(
          request: io.github.vigoo.zioaws.datasync.model.DeleteAgentRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DeleteAgentResponse.ReadOnly
      ]
      def createLocationEfs(
          request: io.github.vigoo.zioaws.datasync.model.CreateLocationEfsRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.CreateLocationEfsResponse.ReadOnly
      ]
      def describeLocationFsxWindows(
          request: io.github.vigoo.zioaws.datasync.model.DescribeLocationFsxWindowsRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DescribeLocationFsxWindowsResponse.ReadOnly
      ]
      def describeTask(
          request: io.github.vigoo.zioaws.datasync.model.DescribeTaskRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DescribeTaskResponse.ReadOnly
      ]
      def updateAgent(
          request: io.github.vigoo.zioaws.datasync.model.UpdateAgentRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.UpdateAgentResponse.ReadOnly
      ]
      def describeLocationNfs(
          request: io.github.vigoo.zioaws.datasync.model.DescribeLocationNfsRequest
      ): IO[
        AwsError,
        io.github.vigoo.zioaws.datasync.model.DescribeLocationNfsResponse.ReadOnly
      ]
    }
    object DataSyncMock extends Mock[DataSync] {
      object UpdateTaskExecution
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.UpdateTaskExecutionRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.UpdateTaskExecutionResponse.ReadOnly
          ]
      object CreateLocationSmb
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.CreateLocationSmbRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.CreateLocationSmbResponse.ReadOnly
          ]
      object DescribeLocationSmb
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DescribeLocationSmbRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DescribeLocationSmbResponse.ReadOnly
          ]
      object UpdateLocationHdfs
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.UpdateLocationHdfsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.UpdateLocationHdfsResponse.ReadOnly
          ]
      object CreateTask
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.CreateTaskRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.CreateTaskResponse.ReadOnly
          ]
      object CreateAgent
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.CreateAgentRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.CreateAgentResponse.ReadOnly
          ]
      object StartTaskExecution
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.StartTaskExecutionRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.StartTaskExecutionResponse.ReadOnly
          ]
      object CreateLocationObjectStorage
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.CreateLocationObjectStorageRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.CreateLocationObjectStorageResponse.ReadOnly
          ]
      object DeleteTask
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DeleteTaskRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DeleteTaskResponse.ReadOnly
          ]
      object DescribeLocationS3
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DescribeLocationS3Request,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DescribeLocationS3Response.ReadOnly
          ]
      object CreateLocationNfs
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.CreateLocationNfsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.CreateLocationNfsResponse.ReadOnly
          ]
      object CreateLocationFsxWindows
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.CreateLocationFsxWindowsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.CreateLocationFsxWindowsResponse.ReadOnly
          ]
      object UpdateLocationSmb
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.UpdateLocationSmbRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.UpdateLocationSmbResponse.ReadOnly
          ]
      object CancelTaskExecution
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.CancelTaskExecutionRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.CancelTaskExecutionResponse.ReadOnly
          ]
      object DescribeAgent
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DescribeAgentRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DescribeAgentResponse.ReadOnly
          ]
      object ListLocations
          extends Stream[
            io.github.vigoo.zioaws.datasync.model.ListLocationsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.LocationListEntry.ReadOnly
          ]
      object DescribeLocationObjectStorage
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DescribeLocationObjectStorageRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DescribeLocationObjectStorageResponse.ReadOnly
          ]
      object DescribeLocationEfs
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DescribeLocationEfsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DescribeLocationEfsResponse.ReadOnly
          ]
      object UpdateLocationNfs
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.UpdateLocationNfsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.UpdateLocationNfsResponse.ReadOnly
          ]
      object DescribeLocationHdfs
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DescribeLocationHdfsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DescribeLocationHdfsResponse.ReadOnly
          ]
      object DeleteLocation
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DeleteLocationRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DeleteLocationResponse.ReadOnly
          ]
      object UntagResource
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.UntagResourceRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.UntagResourceResponse.ReadOnly
          ]
      object DescribeTaskExecution
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DescribeTaskExecutionRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DescribeTaskExecutionResponse.ReadOnly
          ]
      object CreateLocationS3
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.CreateLocationS3Request,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.CreateLocationS3Response.ReadOnly
          ]
      object UpdateTask
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.UpdateTaskRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.UpdateTaskResponse.ReadOnly
          ]
      object ListTaskExecutions
          extends Stream[
            io.github.vigoo.zioaws.datasync.model.ListTaskExecutionsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.TaskExecutionListEntry.ReadOnly
          ]
      object ListTagsForResource
          extends Stream[
            io.github.vigoo.zioaws.datasync.model.ListTagsForResourceRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.TagListEntry.ReadOnly
          ]
      object TagResource
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.TagResourceRequest,
            AwsError,
            ReadOnly
          ]
      object UpdateLocationObjectStorage
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.UpdateLocationObjectStorageRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.UpdateLocationObjectStorageResponse.ReadOnly
          ]
      object ListTasks
          extends Stream[
            io.github.vigoo.zioaws.datasync.model.ListTasksRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.TaskListEntry.ReadOnly
          ]
      object ListAgents
          extends Stream[
            io.github.vigoo.zioaws.datasync.model.ListAgentsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.AgentListEntry.ReadOnly
          ]
      object CreateLocationHdfs
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.CreateLocationHdfsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.CreateLocationHdfsResponse.ReadOnly
          ]
      object DeleteAgent
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DeleteAgentRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DeleteAgentResponse.ReadOnly
          ]
      object CreateLocationEfs
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.CreateLocationEfsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.CreateLocationEfsResponse.ReadOnly
          ]
      object DescribeLocationFsxWindows
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DescribeLocationFsxWindowsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DescribeLocationFsxWindowsResponse.ReadOnly
          ]
      object DescribeTask
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DescribeTaskRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DescribeTaskResponse.ReadOnly
          ]
      object UpdateAgent
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.UpdateAgentRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.UpdateAgentResponse.ReadOnly
          ]
      object DescribeLocationNfs
          extends Effect[
            io.github.vigoo.zioaws.datasync.model.DescribeLocationNfsRequest,
            AwsError,
            io.github.vigoo.zioaws.datasync.model.DescribeLocationNfsResponse.ReadOnly
          ]
      val compose: URLayer[Has[Proxy], DataSync] = ZLayer.fromServiceM {
        proxy =>
          withRuntime.map { rts =>
            new DataSync.Service {
              val api: DataSyncAsyncClient = null
              def withAspect[R1](
                  newAspect: AwsCallAspect[R1],
                  r: R1
              ): DataSync.Service = this
              def updateTaskExecution(
                  request: io.github.vigoo.zioaws.datasync.model.UpdateTaskExecutionRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.UpdateTaskExecutionResponse.ReadOnly
              ] = proxy(UpdateTaskExecution, request)
              def createLocationSmb(
                  request: io.github.vigoo.zioaws.datasync.model.CreateLocationSmbRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.CreateLocationSmbResponse.ReadOnly
              ] = proxy(CreateLocationSmb, request)
              def describeLocationSmb(
                  request: io.github.vigoo.zioaws.datasync.model.DescribeLocationSmbRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DescribeLocationSmbResponse.ReadOnly
              ] = proxy(DescribeLocationSmb, request)
              def updateLocationHdfs(
                  request: io.github.vigoo.zioaws.datasync.model.UpdateLocationHdfsRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.UpdateLocationHdfsResponse.ReadOnly
              ] = proxy(UpdateLocationHdfs, request)
              def createTask(
                  request: io.github.vigoo.zioaws.datasync.model.CreateTaskRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.CreateTaskResponse.ReadOnly
              ] = proxy(CreateTask, request)
              def createAgent(
                  request: io.github.vigoo.zioaws.datasync.model.CreateAgentRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.CreateAgentResponse.ReadOnly
              ] = proxy(CreateAgent, request)
              def startTaskExecution(
                  request: io.github.vigoo.zioaws.datasync.model.StartTaskExecutionRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.StartTaskExecutionResponse.ReadOnly
              ] = proxy(StartTaskExecution, request)
              def createLocationObjectStorage(
                  request: io.github.vigoo.zioaws.datasync.model.CreateLocationObjectStorageRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.CreateLocationObjectStorageResponse.ReadOnly
              ] = proxy(CreateLocationObjectStorage, request)
              def deleteTask(
                  request: io.github.vigoo.zioaws.datasync.model.DeleteTaskRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DeleteTaskResponse.ReadOnly
              ] = proxy(DeleteTask, request)
              def describeLocationS3(
                  request: io.github.vigoo.zioaws.datasync.model.DescribeLocationS3Request
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DescribeLocationS3Response.ReadOnly
              ] = proxy(DescribeLocationS3, request)
              def createLocationNfs(
                  request: io.github.vigoo.zioaws.datasync.model.CreateLocationNfsRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.CreateLocationNfsResponse.ReadOnly
              ] = proxy(CreateLocationNfs, request)
              def createLocationFsxWindows(
                  request: io.github.vigoo.zioaws.datasync.model.CreateLocationFsxWindowsRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.CreateLocationFsxWindowsResponse.ReadOnly
              ] = proxy(CreateLocationFsxWindows, request)
              def updateLocationSmb(
                  request: io.github.vigoo.zioaws.datasync.model.UpdateLocationSmbRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.UpdateLocationSmbResponse.ReadOnly
              ] = proxy(UpdateLocationSmb, request)
              def cancelTaskExecution(
                  request: io.github.vigoo.zioaws.datasync.model.CancelTaskExecutionRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.CancelTaskExecutionResponse.ReadOnly
              ] = proxy(CancelTaskExecution, request)
              def describeAgent(
                  request: io.github.vigoo.zioaws.datasync.model.DescribeAgentRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DescribeAgentResponse.ReadOnly
              ] = proxy(DescribeAgent, request)
              def listLocations(
                  request: io.github.vigoo.zioaws.datasync.model.ListLocationsRequest
              ): ZStream[
                Any,
                AwsError,
                io.github.vigoo.zioaws.datasync.model.LocationListEntry.ReadOnly
              ] = rts.unsafeRun(proxy(ListLocations, request))
              def describeLocationObjectStorage(
                  request: io.github.vigoo.zioaws.datasync.model.DescribeLocationObjectStorageRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DescribeLocationObjectStorageResponse.ReadOnly
              ] = proxy(DescribeLocationObjectStorage, request)
              def describeLocationEfs(
                  request: io.github.vigoo.zioaws.datasync.model.DescribeLocationEfsRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DescribeLocationEfsResponse.ReadOnly
              ] = proxy(DescribeLocationEfs, request)
              def updateLocationNfs(
                  request: io.github.vigoo.zioaws.datasync.model.UpdateLocationNfsRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.UpdateLocationNfsResponse.ReadOnly
              ] = proxy(UpdateLocationNfs, request)
              def describeLocationHdfs(
                  request: io.github.vigoo.zioaws.datasync.model.DescribeLocationHdfsRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DescribeLocationHdfsResponse.ReadOnly
              ] = proxy(DescribeLocationHdfs, request)
              def deleteLocation(
                  request: io.github.vigoo.zioaws.datasync.model.DeleteLocationRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DeleteLocationResponse.ReadOnly
              ] = proxy(DeleteLocation, request)
              def untagResource(
                  request: io.github.vigoo.zioaws.datasync.model.UntagResourceRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.UntagResourceResponse.ReadOnly
              ] = proxy(UntagResource, request)
              def describeTaskExecution(
                  request: io.github.vigoo.zioaws.datasync.model.DescribeTaskExecutionRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DescribeTaskExecutionResponse.ReadOnly
              ] = proxy(DescribeTaskExecution, request)
              def createLocationS3(
                  request: io.github.vigoo.zioaws.datasync.model.CreateLocationS3Request
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.CreateLocationS3Response.ReadOnly
              ] = proxy(CreateLocationS3, request)
              def updateTask(
                  request: io.github.vigoo.zioaws.datasync.model.UpdateTaskRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.UpdateTaskResponse.ReadOnly
              ] = proxy(UpdateTask, request)
              def listTaskExecutions(
                  request: io.github.vigoo.zioaws.datasync.model.ListTaskExecutionsRequest
              ): ZStream[
                Any,
                AwsError,
                io.github.vigoo.zioaws.datasync.model.TaskExecutionListEntry.ReadOnly
              ] = rts.unsafeRun(proxy(ListTaskExecutions, request))
              def listTagsForResource(
                  request: io.github.vigoo.zioaws.datasync.model.ListTagsForResourceRequest
              ): ZStream[
                Any,
                AwsError,
                io.github.vigoo.zioaws.datasync.model.TagListEntry.ReadOnly
              ] = rts.unsafeRun(proxy(ListTagsForResource, request))
              def tagResource(
                  request: io.github.vigoo.zioaws.datasync.model.TagResourceRequest
              ): IO[AwsError, ReadOnly] = proxy(TagResource, request)
              def updateLocationObjectStorage(
                  request: io.github.vigoo.zioaws.datasync.model.UpdateLocationObjectStorageRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.UpdateLocationObjectStorageResponse.ReadOnly
              ] = proxy(UpdateLocationObjectStorage, request)
              def listTasks(
                  request: io.github.vigoo.zioaws.datasync.model.ListTasksRequest
              ): ZStream[
                Any,
                AwsError,
                io.github.vigoo.zioaws.datasync.model.TaskListEntry.ReadOnly
              ] = rts.unsafeRun(proxy(ListTasks, request))
              def listAgents(
                  request: io.github.vigoo.zioaws.datasync.model.ListAgentsRequest
              ): ZStream[
                Any,
                AwsError,
                io.github.vigoo.zioaws.datasync.model.AgentListEntry.ReadOnly
              ] = rts.unsafeRun(proxy(ListAgents, request))
              def createLocationHdfs(
                  request: io.github.vigoo.zioaws.datasync.model.CreateLocationHdfsRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.CreateLocationHdfsResponse.ReadOnly
              ] = proxy(CreateLocationHdfs, request)
              def deleteAgent(
                  request: io.github.vigoo.zioaws.datasync.model.DeleteAgentRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DeleteAgentResponse.ReadOnly
              ] = proxy(DeleteAgent, request)
              def createLocationEfs(
                  request: io.github.vigoo.zioaws.datasync.model.CreateLocationEfsRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.CreateLocationEfsResponse.ReadOnly
              ] = proxy(CreateLocationEfs, request)
              def describeLocationFsxWindows(
                  request: io.github.vigoo.zioaws.datasync.model.DescribeLocationFsxWindowsRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DescribeLocationFsxWindowsResponse.ReadOnly
              ] = proxy(DescribeLocationFsxWindows, request)
              def describeTask(
                  request: io.github.vigoo.zioaws.datasync.model.DescribeTaskRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DescribeTaskResponse.ReadOnly
              ] = proxy(DescribeTask, request)
              def updateAgent(
                  request: io.github.vigoo.zioaws.datasync.model.UpdateAgentRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.UpdateAgentResponse.ReadOnly
              ] = proxy(UpdateAgent, request)
              def describeLocationNfs(
                  request: io.github.vigoo.zioaws.datasync.model.DescribeLocationNfsRequest
              ): IO[
                AwsError,
                io.github.vigoo.zioaws.datasync.model.DescribeLocationNfsResponse.ReadOnly
              ] = proxy(DescribeLocationNfs, request)
            }
          }
      }
    }
  }
  val live: ZLayer[AwsConfig, java.lang.Throwable, DataSync] = customized(
    identity
  )
  def customized(
      customization: DataSyncAsyncClientBuilder => DataSyncAsyncClientBuilder
  ): ZLayer[AwsConfig, java.lang.Throwable, DataSync] = managed(
    customization
  ).toLayer
  def managed(
      customization: DataSyncAsyncClientBuilder => DataSyncAsyncClientBuilder
  ): ZManaged[AwsConfig, java.lang.Throwable, DataSync.Service] = for (
    awsConfig <- ZManaged.service[AwsConfig.Service];
    executor <- ZIO.executor.toManaged_;
    builder = DataSyncAsyncClient
      .builder()
      .asyncConfiguration(
        software.amazon.awssdk.core.client.config.ClientAsyncConfiguration
          .builder()
          .advancedOption(
            software.amazon.awssdk.core.client.config.SdkAdvancedAsyncClientOption.FUTURE_COMPLETION_EXECUTOR,
            executor.asJava
          )
          .build()
      );
    b0 <- awsConfig
      .configure[DataSyncAsyncClient, DataSyncAsyncClientBuilder](builder)
      .toManaged_;
    b1 <- awsConfig
      .configureHttpClient[DataSyncAsyncClient, DataSyncAsyncClientBuilder](
        b0,
        io.github.vigoo.zioaws.core.httpclient
          .ServiceHttpCapabilities(supportsHttp2 = false)
      )
      .toManaged_; client <- zio.ZIO(customization(b1).build()).toManaged_
  ) yield new DataSyncImpl(client, AwsCallAspect.identity, ().asInstanceOf[Any])
  private class DataSyncImpl[R](
      override val api: DataSyncAsyncClient,
      override val aspect: AwsCallAspect[R],
      r: R
  ) extends DataSync.Service
      with AwsServiceBase[R, DataSyncImpl] {
    override val serviceName: String = "DataSync"
    override def withAspect[R1](
        newAspect: AwsCallAspect[R1],
        r: R1
    ): DataSyncImpl[R1] = new DataSyncImpl(api, newAspect, r)
    def updateTaskExecution(
        request: io.github.vigoo.zioaws.datasync.model.UpdateTaskExecutionRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.UpdateTaskExecutionResponse.ReadOnly
    ] = asyncRequestResponse[
      UpdateTaskExecutionRequest,
      UpdateTaskExecutionResponse
    ]("updateTaskExecution", api.updateTaskExecution)(request.buildAwsValue())
      .map(
        io.github.vigoo.zioaws.datasync.model.UpdateTaskExecutionResponse.wrap
      )
      .provide(r)
    def createLocationSmb(
        request: io.github.vigoo.zioaws.datasync.model.CreateLocationSmbRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.CreateLocationSmbResponse.ReadOnly
    ] =
      asyncRequestResponse[CreateLocationSmbRequest, CreateLocationSmbResponse](
        "createLocationSmb",
        api.createLocationSmb
      )(request.buildAwsValue())
        .map(
          io.github.vigoo.zioaws.datasync.model.CreateLocationSmbResponse.wrap
        )
        .provide(r)
    def describeLocationSmb(
        request: io.github.vigoo.zioaws.datasync.model.DescribeLocationSmbRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DescribeLocationSmbResponse.ReadOnly
    ] = asyncRequestResponse[
      DescribeLocationSmbRequest,
      DescribeLocationSmbResponse
    ]("describeLocationSmb", api.describeLocationSmb)(request.buildAwsValue())
      .map(
        io.github.vigoo.zioaws.datasync.model.DescribeLocationSmbResponse.wrap
      )
      .provide(r)
    def updateLocationHdfs(
        request: io.github.vigoo.zioaws.datasync.model.UpdateLocationHdfsRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.UpdateLocationHdfsResponse.ReadOnly
    ] = asyncRequestResponse[
      UpdateLocationHdfsRequest,
      UpdateLocationHdfsResponse
    ]("updateLocationHdfs", api.updateLocationHdfs)(request.buildAwsValue())
      .map(
        io.github.vigoo.zioaws.datasync.model.UpdateLocationHdfsResponse.wrap
      )
      .provide(r)
    def createTask(
        request: io.github.vigoo.zioaws.datasync.model.CreateTaskRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.CreateTaskResponse.ReadOnly
    ] = asyncRequestResponse[CreateTaskRequest, CreateTaskResponse](
      "createTask",
      api.createTask
    )(request.buildAwsValue())
      .map(io.github.vigoo.zioaws.datasync.model.CreateTaskResponse.wrap)
      .provide(r)
    def createAgent(
        request: io.github.vigoo.zioaws.datasync.model.CreateAgentRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.CreateAgentResponse.ReadOnly
    ] = asyncRequestResponse[CreateAgentRequest, CreateAgentResponse](
      "createAgent",
      api.createAgent
    )(request.buildAwsValue())
      .map(io.github.vigoo.zioaws.datasync.model.CreateAgentResponse.wrap)
      .provide(r)
    def startTaskExecution(
        request: io.github.vigoo.zioaws.datasync.model.StartTaskExecutionRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.StartTaskExecutionResponse.ReadOnly
    ] = asyncRequestResponse[
      StartTaskExecutionRequest,
      StartTaskExecutionResponse
    ]("startTaskExecution", api.startTaskExecution)(request.buildAwsValue())
      .map(
        io.github.vigoo.zioaws.datasync.model.StartTaskExecutionResponse.wrap
      )
      .provide(r)
    def createLocationObjectStorage(
        request: io.github.vigoo.zioaws.datasync.model.CreateLocationObjectStorageRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.CreateLocationObjectStorageResponse.ReadOnly
    ] = asyncRequestResponse[
      CreateLocationObjectStorageRequest,
      CreateLocationObjectStorageResponse
    ]("createLocationObjectStorage", api.createLocationObjectStorage)(
      request.buildAwsValue()
    ).map(
      io.github.vigoo.zioaws.datasync.model.CreateLocationObjectStorageResponse.wrap
    ).provide(r)
    def deleteTask(
        request: io.github.vigoo.zioaws.datasync.model.DeleteTaskRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DeleteTaskResponse.ReadOnly
    ] = asyncRequestResponse[DeleteTaskRequest, DeleteTaskResponse](
      "deleteTask",
      api.deleteTask
    )(request.buildAwsValue())
      .map(io.github.vigoo.zioaws.datasync.model.DeleteTaskResponse.wrap)
      .provide(r)
    def describeLocationS3(
        request: io.github.vigoo.zioaws.datasync.model.DescribeLocationS3Request
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DescribeLocationS3Response.ReadOnly
    ] = asyncRequestResponse[
      DescribeLocationS3Request,
      DescribeLocationS3Response
    ]("describeLocationS3", api.describeLocationS3)(request.buildAwsValue())
      .map(
        io.github.vigoo.zioaws.datasync.model.DescribeLocationS3Response.wrap
      )
      .provide(r)
    def createLocationNfs(
        request: io.github.vigoo.zioaws.datasync.model.CreateLocationNfsRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.CreateLocationNfsResponse.ReadOnly
    ] =
      asyncRequestResponse[CreateLocationNfsRequest, CreateLocationNfsResponse](
        "createLocationNfs",
        api.createLocationNfs
      )(request.buildAwsValue())
        .map(
          io.github.vigoo.zioaws.datasync.model.CreateLocationNfsResponse.wrap
        )
        .provide(r)
    def createLocationFsxWindows(
        request: io.github.vigoo.zioaws.datasync.model.CreateLocationFsxWindowsRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.CreateLocationFsxWindowsResponse.ReadOnly
    ] = asyncRequestResponse[
      CreateLocationFsxWindowsRequest,
      CreateLocationFsxWindowsResponse
    ]("createLocationFsxWindows", api.createLocationFsxWindows)(
      request.buildAwsValue()
    ).map(
      io.github.vigoo.zioaws.datasync.model.CreateLocationFsxWindowsResponse.wrap
    ).provide(r)
    def updateLocationSmb(
        request: io.github.vigoo.zioaws.datasync.model.UpdateLocationSmbRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.UpdateLocationSmbResponse.ReadOnly
    ] =
      asyncRequestResponse[UpdateLocationSmbRequest, UpdateLocationSmbResponse](
        "updateLocationSmb",
        api.updateLocationSmb
      )(request.buildAwsValue())
        .map(
          io.github.vigoo.zioaws.datasync.model.UpdateLocationSmbResponse.wrap
        )
        .provide(r)
    def cancelTaskExecution(
        request: io.github.vigoo.zioaws.datasync.model.CancelTaskExecutionRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.CancelTaskExecutionResponse.ReadOnly
    ] = asyncRequestResponse[
      CancelTaskExecutionRequest,
      CancelTaskExecutionResponse
    ]("cancelTaskExecution", api.cancelTaskExecution)(request.buildAwsValue())
      .map(
        io.github.vigoo.zioaws.datasync.model.CancelTaskExecutionResponse.wrap
      )
      .provide(r)
    def describeAgent(
        request: io.github.vigoo.zioaws.datasync.model.DescribeAgentRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DescribeAgentResponse.ReadOnly
    ] = asyncRequestResponse[DescribeAgentRequest, DescribeAgentResponse](
      "describeAgent",
      api.describeAgent
    )(request.buildAwsValue())
      .map(io.github.vigoo.zioaws.datasync.model.DescribeAgentResponse.wrap)
      .provide(r)
    def listLocations(
        request: io.github.vigoo.zioaws.datasync.model.ListLocationsRequest
    ): ZStream[
      Any,
      AwsError,
      io.github.vigoo.zioaws.datasync.model.LocationListEntry.ReadOnly
    ] = asyncSimplePaginatedRequest[
      ListLocationsRequest,
      ListLocationsResponse,
      LocationListEntry
    ](
      "listLocations",
      api.listLocations,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.locations().asScala)
    )(request.buildAwsValue())
      .map(item =>
        io.github.vigoo.zioaws.datasync.model.LocationListEntry.wrap(item)
      )
      .provide(r)
    def describeLocationObjectStorage(
        request: io.github.vigoo.zioaws.datasync.model.DescribeLocationObjectStorageRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DescribeLocationObjectStorageResponse.ReadOnly
    ] = asyncRequestResponse[
      DescribeLocationObjectStorageRequest,
      DescribeLocationObjectStorageResponse
    ]("describeLocationObjectStorage", api.describeLocationObjectStorage)(
      request.buildAwsValue()
    ).map(
      io.github.vigoo.zioaws.datasync.model.DescribeLocationObjectStorageResponse.wrap
    ).provide(r)
    def describeLocationEfs(
        request: io.github.vigoo.zioaws.datasync.model.DescribeLocationEfsRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DescribeLocationEfsResponse.ReadOnly
    ] = asyncRequestResponse[
      DescribeLocationEfsRequest,
      DescribeLocationEfsResponse
    ]("describeLocationEfs", api.describeLocationEfs)(request.buildAwsValue())
      .map(
        io.github.vigoo.zioaws.datasync.model.DescribeLocationEfsResponse.wrap
      )
      .provide(r)
    def updateLocationNfs(
        request: io.github.vigoo.zioaws.datasync.model.UpdateLocationNfsRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.UpdateLocationNfsResponse.ReadOnly
    ] =
      asyncRequestResponse[UpdateLocationNfsRequest, UpdateLocationNfsResponse](
        "updateLocationNfs",
        api.updateLocationNfs
      )(request.buildAwsValue())
        .map(
          io.github.vigoo.zioaws.datasync.model.UpdateLocationNfsResponse.wrap
        )
        .provide(r)
    def describeLocationHdfs(
        request: io.github.vigoo.zioaws.datasync.model.DescribeLocationHdfsRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DescribeLocationHdfsResponse.ReadOnly
    ] = asyncRequestResponse[
      DescribeLocationHdfsRequest,
      DescribeLocationHdfsResponse
    ]("describeLocationHdfs", api.describeLocationHdfs)(request.buildAwsValue())
      .map(
        io.github.vigoo.zioaws.datasync.model.DescribeLocationHdfsResponse.wrap
      )
      .provide(r)
    def deleteLocation(
        request: io.github.vigoo.zioaws.datasync.model.DeleteLocationRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DeleteLocationResponse.ReadOnly
    ] = asyncRequestResponse[DeleteLocationRequest, DeleteLocationResponse](
      "deleteLocation",
      api.deleteLocation
    )(request.buildAwsValue())
      .map(io.github.vigoo.zioaws.datasync.model.DeleteLocationResponse.wrap)
      .provide(r)
    def untagResource(
        request: io.github.vigoo.zioaws.datasync.model.UntagResourceRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.UntagResourceResponse.ReadOnly
    ] = asyncRequestResponse[UntagResourceRequest, UntagResourceResponse](
      "untagResource",
      api.untagResource
    )(request.buildAwsValue())
      .map(io.github.vigoo.zioaws.datasync.model.UntagResourceResponse.wrap)
      .provide(r)
    def describeTaskExecution(
        request: io.github.vigoo.zioaws.datasync.model.DescribeTaskExecutionRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DescribeTaskExecutionResponse.ReadOnly
    ] = asyncRequestResponse[
      DescribeTaskExecutionRequest,
      DescribeTaskExecutionResponse
    ]("describeTaskExecution", api.describeTaskExecution)(
      request.buildAwsValue()
    ).map(
      io.github.vigoo.zioaws.datasync.model.DescribeTaskExecutionResponse.wrap
    ).provide(r)
    def createLocationS3(
        request: io.github.vigoo.zioaws.datasync.model.CreateLocationS3Request
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.CreateLocationS3Response.ReadOnly
    ] = asyncRequestResponse[CreateLocationS3Request, CreateLocationS3Response](
      "createLocationS3",
      api.createLocationS3
    )(request.buildAwsValue())
      .map(io.github.vigoo.zioaws.datasync.model.CreateLocationS3Response.wrap)
      .provide(r)
    def updateTask(
        request: io.github.vigoo.zioaws.datasync.model.UpdateTaskRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.UpdateTaskResponse.ReadOnly
    ] = asyncRequestResponse[UpdateTaskRequest, UpdateTaskResponse](
      "updateTask",
      api.updateTask
    )(request.buildAwsValue())
      .map(io.github.vigoo.zioaws.datasync.model.UpdateTaskResponse.wrap)
      .provide(r)
    def listTaskExecutions(
        request: io.github.vigoo.zioaws.datasync.model.ListTaskExecutionsRequest
    ): ZStream[
      Any,
      AwsError,
      io.github.vigoo.zioaws.datasync.model.TaskExecutionListEntry.ReadOnly
    ] = asyncSimplePaginatedRequest[
      ListTaskExecutionsRequest,
      ListTaskExecutionsResponse,
      TaskExecutionListEntry
    ](
      "listTaskExecutions",
      api.listTaskExecutions,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.taskExecutions().asScala)
    )(request.buildAwsValue())
      .map(item =>
        io.github.vigoo.zioaws.datasync.model.TaskExecutionListEntry.wrap(item)
      )
      .provide(r)
    def listTagsForResource(
        request: io.github.vigoo.zioaws.datasync.model.ListTagsForResourceRequest
    ): ZStream[
      Any,
      AwsError,
      io.github.vigoo.zioaws.datasync.model.TagListEntry.ReadOnly
    ] = asyncSimplePaginatedRequest[
      ListTagsForResourceRequest,
      ListTagsForResourceResponse,
      TagListEntry
    ](
      "listTagsForResource",
      api.listTagsForResource,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.tags().asScala)
    )(request.buildAwsValue())
      .map(item =>
        io.github.vigoo.zioaws.datasync.model.TagListEntry.wrap(item)
      )
      .provide(r)
    def tagResource(
        request: io.github.vigoo.zioaws.datasync.model.TagResourceRequest
    ): IO[AwsError, ReadOnly] =
      asyncRequestResponse[TagResourceRequest, TagResourceResponse](
        "tagResource",
        api.tagResource
      )(request.buildAwsValue())
        .map(io.github.vigoo.zioaws.datasync.model.TagResourceResponse.wrap)
        .provide(r)
    def updateLocationObjectStorage(
        request: io.github.vigoo.zioaws.datasync.model.UpdateLocationObjectStorageRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.UpdateLocationObjectStorageResponse.ReadOnly
    ] = asyncRequestResponse[
      UpdateLocationObjectStorageRequest,
      UpdateLocationObjectStorageResponse
    ]("updateLocationObjectStorage", api.updateLocationObjectStorage)(
      request.buildAwsValue()
    ).map(
      io.github.vigoo.zioaws.datasync.model.UpdateLocationObjectStorageResponse.wrap
    ).provide(r)
    def listTasks(
        request: io.github.vigoo.zioaws.datasync.model.ListTasksRequest
    ): ZStream[
      Any,
      AwsError,
      io.github.vigoo.zioaws.datasync.model.TaskListEntry.ReadOnly
    ] = asyncSimplePaginatedRequest[
      ListTasksRequest,
      ListTasksResponse,
      TaskListEntry
    ](
      "listTasks",
      api.listTasks,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.tasks().asScala)
    )(request.buildAwsValue())
      .map(item =>
        io.github.vigoo.zioaws.datasync.model.TaskListEntry.wrap(item)
      )
      .provide(r)
    def listAgents(
        request: io.github.vigoo.zioaws.datasync.model.ListAgentsRequest
    ): ZStream[
      Any,
      AwsError,
      io.github.vigoo.zioaws.datasync.model.AgentListEntry.ReadOnly
    ] = asyncSimplePaginatedRequest[
      ListAgentsRequest,
      ListAgentsResponse,
      AgentListEntry
    ](
      "listAgents",
      api.listAgents,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.agents().asScala)
    )(request.buildAwsValue())
      .map(item =>
        io.github.vigoo.zioaws.datasync.model.AgentListEntry.wrap(item)
      )
      .provide(r)
    def createLocationHdfs(
        request: io.github.vigoo.zioaws.datasync.model.CreateLocationHdfsRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.CreateLocationHdfsResponse.ReadOnly
    ] = asyncRequestResponse[
      CreateLocationHdfsRequest,
      CreateLocationHdfsResponse
    ]("createLocationHdfs", api.createLocationHdfs)(request.buildAwsValue())
      .map(
        io.github.vigoo.zioaws.datasync.model.CreateLocationHdfsResponse.wrap
      )
      .provide(r)
    def deleteAgent(
        request: io.github.vigoo.zioaws.datasync.model.DeleteAgentRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DeleteAgentResponse.ReadOnly
    ] = asyncRequestResponse[DeleteAgentRequest, DeleteAgentResponse](
      "deleteAgent",
      api.deleteAgent
    )(request.buildAwsValue())
      .map(io.github.vigoo.zioaws.datasync.model.DeleteAgentResponse.wrap)
      .provide(r)
    def createLocationEfs(
        request: io.github.vigoo.zioaws.datasync.model.CreateLocationEfsRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.CreateLocationEfsResponse.ReadOnly
    ] =
      asyncRequestResponse[CreateLocationEfsRequest, CreateLocationEfsResponse](
        "createLocationEfs",
        api.createLocationEfs
      )(request.buildAwsValue())
        .map(
          io.github.vigoo.zioaws.datasync.model.CreateLocationEfsResponse.wrap
        )
        .provide(r)
    def describeLocationFsxWindows(
        request: io.github.vigoo.zioaws.datasync.model.DescribeLocationFsxWindowsRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DescribeLocationFsxWindowsResponse.ReadOnly
    ] = asyncRequestResponse[
      DescribeLocationFsxWindowsRequest,
      DescribeLocationFsxWindowsResponse
    ]("describeLocationFsxWindows", api.describeLocationFsxWindows)(
      request.buildAwsValue()
    ).map(
      io.github.vigoo.zioaws.datasync.model.DescribeLocationFsxWindowsResponse.wrap
    ).provide(r)
    def describeTask(
        request: io.github.vigoo.zioaws.datasync.model.DescribeTaskRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DescribeTaskResponse.ReadOnly
    ] = asyncRequestResponse[DescribeTaskRequest, DescribeTaskResponse](
      "describeTask",
      api.describeTask
    )(request.buildAwsValue())
      .map(io.github.vigoo.zioaws.datasync.model.DescribeTaskResponse.wrap)
      .provide(r)
    def updateAgent(
        request: io.github.vigoo.zioaws.datasync.model.UpdateAgentRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.UpdateAgentResponse.ReadOnly
    ] = asyncRequestResponse[UpdateAgentRequest, UpdateAgentResponse](
      "updateAgent",
      api.updateAgent
    )(request.buildAwsValue())
      .map(io.github.vigoo.zioaws.datasync.model.UpdateAgentResponse.wrap)
      .provide(r)
    def describeLocationNfs(
        request: io.github.vigoo.zioaws.datasync.model.DescribeLocationNfsRequest
    ): IO[
      AwsError,
      io.github.vigoo.zioaws.datasync.model.DescribeLocationNfsResponse.ReadOnly
    ] = asyncRequestResponse[
      DescribeLocationNfsRequest,
      DescribeLocationNfsResponse
    ]("describeLocationNfs", api.describeLocationNfs)(request.buildAwsValue())
      .map(
        io.github.vigoo.zioaws.datasync.model.DescribeLocationNfsResponse.wrap
      )
      .provide(r)
  }
  def updateTaskExecution(
      request: io.github.vigoo.zioaws.datasync.model.UpdateTaskExecutionRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.UpdateTaskExecutionResponse.ReadOnly
  ] = ZIO.accessM(_.get.updateTaskExecution(request))
  def createLocationSmb(
      request: io.github.vigoo.zioaws.datasync.model.CreateLocationSmbRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.CreateLocationSmbResponse.ReadOnly
  ] = ZIO.accessM(_.get.createLocationSmb(request))
  def describeLocationSmb(
      request: io.github.vigoo.zioaws.datasync.model.DescribeLocationSmbRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DescribeLocationSmbResponse.ReadOnly
  ] = ZIO.accessM(_.get.describeLocationSmb(request))
  def updateLocationHdfs(
      request: io.github.vigoo.zioaws.datasync.model.UpdateLocationHdfsRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.UpdateLocationHdfsResponse.ReadOnly
  ] = ZIO.accessM(_.get.updateLocationHdfs(request))
  def createTask(
      request: io.github.vigoo.zioaws.datasync.model.CreateTaskRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.CreateTaskResponse.ReadOnly
  ] = ZIO.accessM(_.get.createTask(request))
  def createAgent(
      request: io.github.vigoo.zioaws.datasync.model.CreateAgentRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.CreateAgentResponse.ReadOnly
  ] = ZIO.accessM(_.get.createAgent(request))
  def startTaskExecution(
      request: io.github.vigoo.zioaws.datasync.model.StartTaskExecutionRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.StartTaskExecutionResponse.ReadOnly
  ] = ZIO.accessM(_.get.startTaskExecution(request))
  def createLocationObjectStorage(
      request: io.github.vigoo.zioaws.datasync.model.CreateLocationObjectStorageRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.CreateLocationObjectStorageResponse.ReadOnly
  ] = ZIO.accessM(_.get.createLocationObjectStorage(request))
  def deleteTask(
      request: io.github.vigoo.zioaws.datasync.model.DeleteTaskRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DeleteTaskResponse.ReadOnly
  ] = ZIO.accessM(_.get.deleteTask(request))
  def describeLocationS3(
      request: io.github.vigoo.zioaws.datasync.model.DescribeLocationS3Request
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DescribeLocationS3Response.ReadOnly
  ] = ZIO.accessM(_.get.describeLocationS3(request))
  def createLocationNfs(
      request: io.github.vigoo.zioaws.datasync.model.CreateLocationNfsRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.CreateLocationNfsResponse.ReadOnly
  ] = ZIO.accessM(_.get.createLocationNfs(request))
  def createLocationFsxWindows(
      request: io.github.vigoo.zioaws.datasync.model.CreateLocationFsxWindowsRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.CreateLocationFsxWindowsResponse.ReadOnly
  ] = ZIO.accessM(_.get.createLocationFsxWindows(request))
  def updateLocationSmb(
      request: io.github.vigoo.zioaws.datasync.model.UpdateLocationSmbRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.UpdateLocationSmbResponse.ReadOnly
  ] = ZIO.accessM(_.get.updateLocationSmb(request))
  def cancelTaskExecution(
      request: io.github.vigoo.zioaws.datasync.model.CancelTaskExecutionRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.CancelTaskExecutionResponse.ReadOnly
  ] = ZIO.accessM(_.get.cancelTaskExecution(request))
  def describeAgent(
      request: io.github.vigoo.zioaws.datasync.model.DescribeAgentRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DescribeAgentResponse.ReadOnly
  ] = ZIO.accessM(_.get.describeAgent(request))
  def listLocations(
      request: io.github.vigoo.zioaws.datasync.model.ListLocationsRequest
  ): ZStream[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.LocationListEntry.ReadOnly
  ] = ZStream.accessStream(_.get.listLocations(request))
  def describeLocationObjectStorage(
      request: io.github.vigoo.zioaws.datasync.model.DescribeLocationObjectStorageRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DescribeLocationObjectStorageResponse.ReadOnly
  ] = ZIO.accessM(_.get.describeLocationObjectStorage(request))
  def describeLocationEfs(
      request: io.github.vigoo.zioaws.datasync.model.DescribeLocationEfsRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DescribeLocationEfsResponse.ReadOnly
  ] = ZIO.accessM(_.get.describeLocationEfs(request))
  def updateLocationNfs(
      request: io.github.vigoo.zioaws.datasync.model.UpdateLocationNfsRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.UpdateLocationNfsResponse.ReadOnly
  ] = ZIO.accessM(_.get.updateLocationNfs(request))
  def describeLocationHdfs(
      request: io.github.vigoo.zioaws.datasync.model.DescribeLocationHdfsRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DescribeLocationHdfsResponse.ReadOnly
  ] = ZIO.accessM(_.get.describeLocationHdfs(request))
  def deleteLocation(
      request: io.github.vigoo.zioaws.datasync.model.DeleteLocationRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DeleteLocationResponse.ReadOnly
  ] = ZIO.accessM(_.get.deleteLocation(request))
  def untagResource(
      request: io.github.vigoo.zioaws.datasync.model.UntagResourceRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.UntagResourceResponse.ReadOnly
  ] = ZIO.accessM(_.get.untagResource(request))
  def describeTaskExecution(
      request: io.github.vigoo.zioaws.datasync.model.DescribeTaskExecutionRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DescribeTaskExecutionResponse.ReadOnly
  ] = ZIO.accessM(_.get.describeTaskExecution(request))
  def createLocationS3(
      request: io.github.vigoo.zioaws.datasync.model.CreateLocationS3Request
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.CreateLocationS3Response.ReadOnly
  ] = ZIO.accessM(_.get.createLocationS3(request))
  def updateTask(
      request: io.github.vigoo.zioaws.datasync.model.UpdateTaskRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.UpdateTaskResponse.ReadOnly
  ] = ZIO.accessM(_.get.updateTask(request))
  def listTaskExecutions(
      request: io.github.vigoo.zioaws.datasync.model.ListTaskExecutionsRequest
  ): ZStream[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.TaskExecutionListEntry.ReadOnly
  ] = ZStream.accessStream(_.get.listTaskExecutions(request))
  def listTagsForResource(
      request: io.github.vigoo.zioaws.datasync.model.ListTagsForResourceRequest
  ): ZStream[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.TagListEntry.ReadOnly
  ] = ZStream.accessStream(_.get.listTagsForResource(request))
  def tagResource(
      request: io.github.vigoo.zioaws.datasync.model.TagResourceRequest
  ): ZIO[DataSync, AwsError, ReadOnly] = ZIO.accessM(_.get.tagResource(request))
  def updateLocationObjectStorage(
      request: io.github.vigoo.zioaws.datasync.model.UpdateLocationObjectStorageRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.UpdateLocationObjectStorageResponse.ReadOnly
  ] = ZIO.accessM(_.get.updateLocationObjectStorage(request))
  def listTasks(
      request: io.github.vigoo.zioaws.datasync.model.ListTasksRequest
  ): ZStream[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.TaskListEntry.ReadOnly
  ] = ZStream.accessStream(_.get.listTasks(request))
  def listAgents(
      request: io.github.vigoo.zioaws.datasync.model.ListAgentsRequest
  ): ZStream[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.AgentListEntry.ReadOnly
  ] = ZStream.accessStream(_.get.listAgents(request))
  def createLocationHdfs(
      request: io.github.vigoo.zioaws.datasync.model.CreateLocationHdfsRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.CreateLocationHdfsResponse.ReadOnly
  ] = ZIO.accessM(_.get.createLocationHdfs(request))
  def deleteAgent(
      request: io.github.vigoo.zioaws.datasync.model.DeleteAgentRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DeleteAgentResponse.ReadOnly
  ] = ZIO.accessM(_.get.deleteAgent(request))
  def createLocationEfs(
      request: io.github.vigoo.zioaws.datasync.model.CreateLocationEfsRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.CreateLocationEfsResponse.ReadOnly
  ] = ZIO.accessM(_.get.createLocationEfs(request))
  def describeLocationFsxWindows(
      request: io.github.vigoo.zioaws.datasync.model.DescribeLocationFsxWindowsRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DescribeLocationFsxWindowsResponse.ReadOnly
  ] = ZIO.accessM(_.get.describeLocationFsxWindows(request))
  def describeTask(
      request: io.github.vigoo.zioaws.datasync.model.DescribeTaskRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DescribeTaskResponse.ReadOnly
  ] = ZIO.accessM(_.get.describeTask(request))
  def updateAgent(
      request: io.github.vigoo.zioaws.datasync.model.UpdateAgentRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.UpdateAgentResponse.ReadOnly
  ] = ZIO.accessM(_.get.updateAgent(request))
  def describeLocationNfs(
      request: io.github.vigoo.zioaws.datasync.model.DescribeLocationNfsRequest
  ): ZIO[
    DataSync,
    AwsError,
    io.github.vigoo.zioaws.datasync.model.DescribeLocationNfsResponse.ReadOnly
  ] = ZIO.accessM(_.get.describeLocationNfs(request))
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy