deletePackage method
Deletes a package and all associated package versions. A deleted package cannot be restored. To delete one or more package versions, use the DeletePackageVersions API.
May throw AccessDeniedException.
May throw ConflictException.
May throw InternalServerException.
May throw ResourceNotFoundException.
May throw ThrottlingException.
May throw ValidationException.
Parameter domain :
The name of the domain that contains the package to delete.
Parameter format :
The format of the requested package to delete.
Parameter package :
The name of the package to delete.
Parameter repository :
The name of the repository that contains the package to delete.
Parameter domainOwner :
The 12-digit account number of the Amazon Web Services account that owns
the domain. It does not include dashes or spaces.
Parameter namespace :
The namespace of the package to delete. The package component that
specifies its namespace depends on its type. For example:
- Maven
- Swift
- generic
-
The namespace of a Maven package version is its
groupId. -
The namespace of an npm or Swift package version is its
scope. -
The namespace of a generic package is its
namespace. - Python, NuGet, Ruby, and Cargo package versions do not contain a corresponding component, package versions of those formats do not have a namespace.
Implementation
Future<DeletePackageResult> deletePackage({
required String domain,
required PackageFormat format,
required String package,
required String repository,
String? domainOwner,
String? namespace,
}) async {
final $query = <String, List<String>>{
'domain': [domain],
'format': [format.value],
'package': [package],
'repository': [repository],
if (domainOwner != null) 'domain-owner': [domainOwner],
if (namespace != null) 'namespace': [namespace],
};
final response = await _protocol.send(
payload: null,
method: 'DELETE',
requestUri: '/v1/package',
queryParams: $query,
exceptionFnMap: _exceptionFns,
);
return DeletePackageResult.fromJson(response);
}