updateOdbNetwork method

Future<UpdateOdbNetworkOutput> updateOdbNetwork({
  1. required String odbNetworkId,
  2. List<String>? crossRegionS3RestoreSourcesToDisable,
  3. List<String>? crossRegionS3RestoreSourcesToEnable,
  4. String? displayName,
  5. Access? kmsAccess,
  6. String? kmsPolicyDocument,
  7. List<String>? peeredCidrsToBeAdded,
  8. List<String>? peeredCidrsToBeRemoved,
  9. Access? s3Access,
  10. String? s3PolicyDocument,
  11. Access? stsAccess,
  12. String? stsPolicyDocument,
  13. Access? zeroEtlAccess,
})

Updates properties of a specified ODB network.

May throw AccessDeniedException. May throw ConflictException. May throw InternalServerException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw ValidationException.

Parameter odbNetworkId : The unique identifier of the ODB network to update.

Parameter crossRegionS3RestoreSourcesToDisable : The cross-Region Amazon S3 restore sources to disable for the ODB network.

Parameter crossRegionS3RestoreSourcesToEnable : The cross-Region Amazon S3 restore sources to enable for the ODB network.

Parameter displayName : The new user-friendly name of the ODB network.

Parameter kmsAccess : The Amazon Web Services Key Management Service (KMS) access configuration for the ODB network.

Parameter kmsPolicyDocument : The Amazon Web Services Key Management Service (KMS) policy document that defines permissions for key usage within the ODB network.

Parameter peeredCidrsToBeAdded : The list of CIDR ranges from the peered VPC that allow access to the ODB network.

Parameter peeredCidrsToBeRemoved : The list of CIDR ranges from the peered VPC to remove from the ODB network.

Parameter s3Access : Specifies the updated configuration for Amazon S3 access from the ODB network.

Parameter s3PolicyDocument : Specifies the updated endpoint policy for Amazon S3 access from the ODB network.

Parameter stsAccess : The Amazon Web Services Security Token Service (STS) access configuration for the ODB network.

Parameter stsPolicyDocument : The Amazon Web Services Security Token Service (STS) policy document that defines permissions for token service usage within the ODB network.

Parameter zeroEtlAccess : Specifies the updated configuration for Zero-ETL access from the ODB network.

Implementation

Future<UpdateOdbNetworkOutput> updateOdbNetwork({
  required String odbNetworkId,
  List<String>? crossRegionS3RestoreSourcesToDisable,
  List<String>? crossRegionS3RestoreSourcesToEnable,
  String? displayName,
  Access? kmsAccess,
  String? kmsPolicyDocument,
  List<String>? peeredCidrsToBeAdded,
  List<String>? peeredCidrsToBeRemoved,
  Access? s3Access,
  String? s3PolicyDocument,
  Access? stsAccess,
  String? stsPolicyDocument,
  Access? zeroEtlAccess,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.0',
    'X-Amz-Target': 'Odb.UpdateOdbNetwork'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'odbNetworkId': odbNetworkId,
      if (crossRegionS3RestoreSourcesToDisable != null)
        'crossRegionS3RestoreSourcesToDisable':
            crossRegionS3RestoreSourcesToDisable,
      if (crossRegionS3RestoreSourcesToEnable != null)
        'crossRegionS3RestoreSourcesToEnable':
            crossRegionS3RestoreSourcesToEnable,
      if (displayName != null) 'displayName': displayName,
      if (kmsAccess != null) 'kmsAccess': kmsAccess.value,
      if (kmsPolicyDocument != null) 'kmsPolicyDocument': kmsPolicyDocument,
      if (peeredCidrsToBeAdded != null)
        'peeredCidrsToBeAdded': peeredCidrsToBeAdded,
      if (peeredCidrsToBeRemoved != null)
        'peeredCidrsToBeRemoved': peeredCidrsToBeRemoved,
      if (s3Access != null) 's3Access': s3Access.value,
      if (s3PolicyDocument != null) 's3PolicyDocument': s3PolicyDocument,
      if (stsAccess != null) 'stsAccess': stsAccess.value,
      if (stsPolicyDocument != null) 'stsPolicyDocument': stsPolicyDocument,
      if (zeroEtlAccess != null) 'zeroEtlAccess': zeroEtlAccess.value,
    },
  );

  return UpdateOdbNetworkOutput.fromJson(jsonResponse.body);
}