/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.codeartifact; import javax.annotation.Generated; import com.amazonaws.*; import com.amazonaws.regions.*; import com.amazonaws.services.codeartifact.model.*; /** * Interface for accessing CodeArtifact. *
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from * {@link com.amazonaws.services.codeartifact.AbstractAWSCodeArtifact} instead. *
**
* CodeArtifact is a fully managed artifact repository compatible with language-native package managers and build tools * such as npm, Apache Maven, pip, and dotnet. You can use CodeArtifact to share packages with development teams and * pull packages. Packages can be pulled from both public and CodeArtifact repositories. You can also create an upstream * relationship between a CodeArtifact repository and another repository, which effectively merges their contents from * the point of view of a package manager client. *
** CodeArtifact Components *
** Use the information in this guide to help you work with the following CodeArtifact components: *
*
* Repository: A CodeArtifact repository contains a set of package
* versions, each of which maps to a set of assets, or files. Repositories are polyglot, so a single repository can
* contain packages of any supported type. Each repository exposes endpoints for fetching and publishing packages using
* tools like the npm
CLI, the Maven CLI ( mvn
), Python CLIs (
* pip
and twine
), and NuGet CLIs (nuget
and dotnet
).
*
* Domain: Repositories are aggregated into a higher-level entity known as a domain. All package assets * and metadata are stored in the domain, but are consumed through repositories. A given package asset, such as a Maven * JAR file, is stored once per domain, no matter how many repositories it's present in. All of the assets and metadata * in a domain are encrypted with the same customer master key (CMK) stored in Key Management Service (KMS). *
** Each repository is a member of a single domain and can't be moved to a different domain. *
** The domain allows organizational policy to be applied across multiple repositories, such as which accounts can access * repositories in the domain, and which public repositories can be used as sources of packages. *
** Although an organization can have multiple domains, we recommend a single production domain that contains all * published artifacts so that teams can find and share packages across their organization. *
** Package: A package is a bundle of software and the metadata required to resolve dependencies and * install the software. CodeArtifact supports npm, PyPI, Maven, and NuGet package formats. *
** In CodeArtifact, a package consists of: *
*
* A name (for example, webpack
is the name of a popular npm package)
*
* An optional namespace (for example, @types
in @types/node
)
*
* A set of versions (for example, 1.0.0
, 1.0.1
, 1.0.2
, etc.)
*
* Package-level metadata (for example, npm tags) *
*
* Package version: A version of a package, such as @types/node 12.6.9
. The version number format
* and semantics vary for different package formats. For example, npm package versions must conform to the Semantic Versioning specification. In CodeArtifact, a package version consists of the
* version identifier, metadata at the package version level, and a set of assets.
*
* Upstream repository: One repository is upstream of another when the package versions in it can be * accessed from the repository endpoint of the downstream repository, effectively merging the contents of the two * repositories from the point of view of a client. CodeArtifact allows creating an upstream relationship between two * repositories. *
*
* Asset: An individual file stored in CodeArtifact associated with a package version, such as an npm
* .tgz
file or Maven POM and JAR files.
*
* CodeArtifact supports these operations: *
*
* AssociateExternalConnection
: Adds an existing external connection to a repository.
*
* CopyPackageVersions
: Copies package versions from one repository to another repository in the same
* domain.
*
* CreateDomain
: Creates a domain
*
* CreateRepository
: Creates a CodeArtifact repository in a domain.
*
* DeleteDomain
: Deletes a domain. You cannot delete a domain that contains repositories.
*
* DeleteDomainPermissionsPolicy
: Deletes the resource policy that is set on a domain.
*
* DeletePackage
: Deletes a package and all associated package versions.
*
* DeletePackageVersions
: Deletes versions of a package. After a package has been deleted, it can be
* republished, but its assets and metadata cannot be restored because they have been permanently removed from storage.
*
* DeleteRepository
: Deletes a repository.
*
* DeleteRepositoryPermissionsPolicy
: Deletes the resource policy that is set on a repository.
*
* DescribeDomain
: Returns a DomainDescription
object that contains information about the
* requested domain.
*
* DescribePackage
: Returns a PackageDescription object that contains details about a package.
*
* DescribePackageVersion
: Returns a PackageVersionDescription object that contains details about a package version.
*
* DescribeRepository
: Returns a RepositoryDescription
object that contains detailed
* information about the requested repository.
*
* DisposePackageVersions
: Disposes versions of a package. A package version with the status
* Disposed
cannot be restored because they have been permanently removed from storage.
*
* DisassociateExternalConnection
: Removes an existing external connection from a repository.
*
* GetAuthorizationToken
: Generates a temporary authorization token for accessing repositories in the
* domain. The token expires the authorization period has passed. The default authorization period is 12 hours and can
* be customized to any length with a maximum of 12 hours.
*
* GetDomainPermissionsPolicy
: Returns the policy of a resource that is attached to the specified domain.
*
* GetPackageVersionAsset
: Returns the contents of an asset that is in a package version.
*
* GetPackageVersionReadme
: Gets the readme file or descriptive text for a package version.
*
* GetRepositoryEndpoint
: Returns the endpoint of a repository for a specific package format. A repository
* has one endpoint for each package format:
*
* maven
*
* npm
*
* nuget
*
* pypi
*
* GetRepositoryPermissionsPolicy
: Returns the resource policy that is set on a repository.
*
* ListDomains
: Returns a list of DomainSummary
objects. Each returned
* DomainSummary
object contains information about a domain.
*
* ListPackages
: Lists the packages in a repository.
*
* ListPackageVersionAssets
: Lists the assets for a given package version.
*
* ListPackageVersionDependencies
: Returns a list of the direct dependencies for a package version.
*
* ListPackageVersions
: Returns a list of package versions for a specified package in a repository.
*
* ListRepositories
: Returns a list of repositories owned by the Amazon Web Services account that called
* this method.
*
* ListRepositoriesInDomain
: Returns a list of the repositories in a domain.
*
* PublishPackageVersion
: Creates a new package version containing one or more assets.
*
* PutDomainPermissionsPolicy
: Attaches a resource policy to a domain.
*
* PutPackageOriginConfiguration
: Sets the package origin configuration for a package, which determine how
* new versions of the package can be added to a specific repository.
*
* PutRepositoryPermissionsPolicy
: Sets the resource policy on a repository that specifies permissions to
* access it.
*
* UpdatePackageVersionsStatus
: Updates the status of one or more versions of a package.
*
* UpdateRepository
: Updates the properties of a repository.
*
* Adds an existing external connection to a repository. One external connection is allowed per repository. *
** A repository can have one or more upstream repositories, or an external connection. *
** Copies package versions from one repository to another repository in the same domain. *
*
* You must specify versions
or versionRevisions
. You cannot specify both.
*
* Creates a domain. CodeArtifact domains make it easier to manage multiple repositories across an * organization. You can use a domain to apply permissions across many repositories owned by different Amazon Web * Services accounts. An asset is stored only once in a domain, even if it's in multiple repositories. *
** Although you can have multiple domains, we recommend a single production domain that contains all published * artifacts so that your development teams can find and share packages. You can use a second pre-production domain * to test changes to the production domain configuration. *
* * @param createDomainRequest * @return Result of the CreateDomain operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ConflictException * The operation did not succeed because prerequisites are not met. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ServiceQuotaExceededException * The operation did not succeed because it would have exceeded a service limit for your account. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.CreateDomain * @see AWS API * Documentation */ CreateDomainResult createDomain(CreateDomainRequest createDomainRequest); /** ** Creates a repository. *
* * @param createRepositoryRequest * @return Result of the CreateRepository operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ConflictException * The operation did not succeed because prerequisites are not met. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ServiceQuotaExceededException * The operation did not succeed because it would have exceeded a service limit for your account. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.CreateRepository * @see AWS * API Documentation */ CreateRepositoryResult createRepository(CreateRepositoryRequest createRepositoryRequest); /** ** Deletes a domain. You cannot delete a domain that contains repositories. If you want to delete a domain with * repositories, first delete its repositories. *
* * @param deleteDomainRequest * @return Result of the DeleteDomain operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ConflictException * The operation did not succeed because prerequisites are not met. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.DeleteDomain * @see AWS API * Documentation */ DeleteDomainResult deleteDomain(DeleteDomainRequest deleteDomainRequest); /** ** Deletes the resource policy set on a domain. *
* * @param deleteDomainPermissionsPolicyRequest * @return Result of the DeleteDomainPermissionsPolicy operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ConflictException * The operation did not succeed because prerequisites are not met. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.DeleteDomainPermissionsPolicy * @see AWS API Documentation */ DeleteDomainPermissionsPolicyResult deleteDomainPermissionsPolicy(DeleteDomainPermissionsPolicyRequest deleteDomainPermissionsPolicyRequest); /** ** 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. *
* * @param deletePackageRequest * @return Result of the DeletePackage operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ConflictException * The operation did not succeed because prerequisites are not met. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.DeletePackage * @see AWS API * Documentation */ DeletePackageResult deletePackage(DeletePackageRequest deletePackageRequest); /** *
* Deletes one or more versions of a package. A deleted package version cannot be restored in your repository. If
* you want to remove a package version from your repository and be able to restore it later, set its status to
* Archived
. Archived packages cannot be downloaded from a repository and don't show up with list
* package APIs (for example, ListPackageVersions), but you can restore them using UpdatePackageVersionsStatus.
*
* Deletes a repository. *
* * @param deleteRepositoryRequest * @return Result of the DeleteRepository operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ConflictException * The operation did not succeed because prerequisites are not met. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.DeleteRepository * @see AWS * API Documentation */ DeleteRepositoryResult deleteRepository(DeleteRepositoryRequest deleteRepositoryRequest); /** ** Deletes the resource policy that is set on a repository. After a resource policy is deleted, the permissions * allowed and denied by the deleted policy are removed. The effect of deleting a resource policy might not be * immediate. *
*
* Use DeleteRepositoryPermissionsPolicy
with caution. After a policy is deleted, Amazon Web Services
* users, roles, and accounts lose permissions to perform the repository actions granted by the deleted policy.
*
* Returns a * DomainDescription object that contains information about the requested domain. *
* * @param describeDomainRequest * @return Result of the DescribeDomain operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.DescribeDomain * @see AWS * API Documentation */ DescribeDomainResult describeDomain(DescribeDomainRequest describeDomainRequest); /** ** Returns a * PackageDescription object that contains information about the requested package. *
* * @param describePackageRequest * @return Result of the DescribePackage operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.DescribePackage * @see AWS * API Documentation */ DescribePackageResult describePackage(DescribePackageRequest describePackageRequest); /** ** Returns a PackageVersionDescription object that contains information about the requested package version. *
* * @param describePackageVersionRequest * @return Result of the DescribePackageVersion operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ConflictException * The operation did not succeed because prerequisites are not met. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.DescribePackageVersion * @see AWS API Documentation */ DescribePackageVersionResult describePackageVersion(DescribePackageVersionRequest describePackageVersionRequest); /** *
* Returns a RepositoryDescription
object that contains detailed information about the requested
* repository.
*
* Removes an existing external connection from a repository. *
* * @param disassociateExternalConnectionRequest * @return Result of the DisassociateExternalConnection operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ConflictException * The operation did not succeed because prerequisites are not met. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ServiceQuotaExceededException * The operation did not succeed because it would have exceeded a service limit for your account. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.DisassociateExternalConnection * @see AWS API Documentation */ DisassociateExternalConnectionResult disassociateExternalConnection(DisassociateExternalConnectionRequest disassociateExternalConnectionRequest); /** *
* Deletes the assets in package versions and sets the package versions' status to Disposed
. A disposed
* package version cannot be restored in your repository because its assets are deleted.
*
* To view all disposed package versions in a repository, use ListPackageVersions and set the status parameter to Disposed
.
*
* To view information about a disposed package version, use DescribePackageVersion. *
* * @param disposePackageVersionsRequest * @return Result of the DisposePackageVersions operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ConflictException * The operation did not succeed because prerequisites are not met. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.DisposePackageVersions * @see AWS API Documentation */ DisposePackageVersionsResult disposePackageVersions(DisposePackageVersionsRequest disposePackageVersionsRequest); /** *
* Generates a temporary authorization token for accessing repositories in the domain. This API requires the
* codeartifact:GetAuthorizationToken
and sts:GetServiceBearerToken
permissions. For more
* information about authorization tokens, see CodeArtifact authentication
* and tokens.
*
* CodeArtifact authorization tokens are valid for a period of 12 hours when created with the login
* command. You can call login
periodically to refresh the token. When you create an authorization
* token with the GetAuthorizationToken
API, you can set a custom authorization period, up to a maximum
* of 12 hours, with the durationSeconds
parameter.
*
* The authorization period begins after login
or GetAuthorizationToken
is called. If
* login
or GetAuthorizationToken
is called while assuming a role, the token lifetime is
* independent of the maximum session duration of the role. For example, if you call sts assume-role
* and specify a session duration of 15 minutes, then generate a CodeArtifact authorization token, the token will be
* valid for the full authorization period even though this is longer than the 15-minute session duration.
*
* See Using IAM Roles for more * information on controlling session duration. *
** Returns the resource policy attached to the specified domain. *
** The policy is a resource-based policy, not an identity-based policy. For more information, see Identity-based * policies and resource-based policies in the IAM User Guide. *
*
* Returns an asset (or file) that is in a package. For example, for a Maven package version, use
* GetPackageVersionAsset
to download a JAR
file, a POM
file, or any other
* assets in the package version.
*
* Gets the readme file or descriptive text for a package version. *
** The returned text might contain formatting. For example, it might contain formatting for Markdown or * reStructuredText. *
* * @param getPackageVersionReadmeRequest * @return Result of the GetPackageVersionReadme operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.GetPackageVersionReadme * @see AWS API Documentation */ GetPackageVersionReadmeResult getPackageVersionReadme(GetPackageVersionReadmeRequest getPackageVersionReadmeRequest); /** ** Returns the endpoint of a repository for a specific package format. A repository has one endpoint for each * package format: *
*
* maven
*
* npm
*
* nuget
*
* pypi
*
* Returns the resource policy that is set on a repository. *
* * @param getRepositoryPermissionsPolicyRequest * @return Result of the GetRepositoryPermissionsPolicy operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.GetRepositoryPermissionsPolicy * @see AWS API Documentation */ GetRepositoryPermissionsPolicyResult getRepositoryPermissionsPolicy(GetRepositoryPermissionsPolicyRequest getRepositoryPermissionsPolicyRequest); /** *
* Returns a list of DomainSummary objects for all domains owned by the Amazon Web Services account that makes this call. Each
* returned DomainSummary
object contains information about a domain.
*
* Returns a list of AssetSummary * objects for assets in a package version. *
* * @param listPackageVersionAssetsRequest * @return Result of the ListPackageVersionAssets operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.ListPackageVersionAssets * @see AWS API Documentation */ ListPackageVersionAssetsResult listPackageVersionAssets(ListPackageVersionAssetsRequest listPackageVersionAssetsRequest); /** *
* Returns the direct dependencies for a package version. The dependencies are returned as PackageDependency objects. CodeArtifact extracts the dependencies for a package version from the metadata
* file for the package format (for example, the package.json
file for npm packages and the
* pom.xml
file for Maven). Any package version dependencies that are not listed in the configuration
* file are not returned.
*
* Returns a list of PackageVersionSummary objects for package versions in a repository that match the request parameters.
* Package versions of all statuses will be returned by default when calling list-package-versions
with
* no --status
parameter.
*
* Returns a list of PackageSummary * objects for packages in a repository that match the request parameters. *
* * @param listPackagesRequest * @return Result of the ListPackages operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.ListPackages * @see AWS API * Documentation */ ListPackagesResult listPackages(ListPackagesRequest listPackagesRequest); /** *
* Returns a list of RepositorySummary objects. Each RepositorySummary
contains information about a repository in
* the specified Amazon Web Services account and that matches the input parameters.
*
* Returns a list of RepositorySummary objects. Each RepositorySummary
contains information about a repository in
* the specified domain and that matches the input parameters.
*
* Gets information about Amazon Web Services tags for a specified Amazon Resource Name (ARN) in CodeArtifact. *
* * @param listTagsForResourceRequest * @return Result of the ListTagsForResource operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.ListTagsForResource * @see AWS API Documentation */ ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest); /** ** Creates a new package version containing one or more assets (or files). *
*
* The unfinished
flag can be used to keep the package version in the Unfinished
state
* until all of its assets have been uploaded (see Package version status in the CodeArtifact user guide). To set the package version’s status to
* Published
, omit the unfinished
flag when uploading the final asset, or set the status
* using
* UpdatePackageVersionStatus. Once a package version’s status is set to Published
, it cannot
* change back to Unfinished
.
*
* Only generic packages can be published using this API. For more information, see Using generic packages in the * CodeArtifact User Guide. *
** Sets a resource policy on a domain that specifies permissions to access it. *
*
* When you call PutDomainPermissionsPolicy
, the resource policy on the domain is ignored when
* evaluting permissions. This ensures that the owner of a domain cannot lock themselves out of the domain, which
* would prevent them from being able to update the resource policy.
*
* Sets the package origin configuration for a package. *
** The package origin configuration determines how new versions of a package can be added to a repository. You can * allow or block direct publishing of new package versions, or ingestion and retaining of new package versions from * an external connection or upstream source. For more information about package origin controls and configuration, * see Editing package * origin controls in the CodeArtifact User Guide. *
*
* PutPackageOriginConfiguration
can be called on a package that doesn't yet exist in the repository.
* When called on a package that does not exist, a package is created in the repository with no versions and the
* requested restrictions are set on the package. This can be used to preemptively block ingesting or retaining any
* versions from external connections or upstream repositories, or to block publishing any versions of the package
* into the repository before connecting any package managers or publishers to the repository.
*
* Sets the resource policy on a repository that specifies permissions to access it. *
*
* When you call PutRepositoryPermissionsPolicy
, the resource policy on the repository is ignored when
* evaluting permissions. This ensures that the owner of a repository cannot lock themselves out of the repository,
* which would prevent them from being able to update the resource policy.
*
* Adds or updates tags for a resource in CodeArtifact. *
* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ServiceQuotaExceededException * The operation did not succeed because it would have exceeded a service limit for your account. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.TagResource * @see AWS API * Documentation */ TagResourceResult tagResource(TagResourceRequest tagResourceRequest); /** ** Removes tags from a resource in CodeArtifact. *
* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.UntagResource * @see AWS API * Documentation */ UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest); /** *
* Updates the status of one or more versions of a package. Using UpdatePackageVersionsStatus
, you can
* update the status of package versions to Archived
, Published
, or Unlisted
.
* To set the status of a package version to Disposed
, use DisposePackageVersions.
*
* Update the properties of a repository. *
* * @param updateRepositoryRequest * @return Result of the UpdateRepository operation returned by the service. * @throws AccessDeniedException * The operation did not succeed because of an unauthorized access attempt. * @throws ConflictException * The operation did not succeed because prerequisites are not met. * @throws InternalServerException * The operation did not succeed because of an error that occurred inside CodeArtifact. * @throws ResourceNotFoundException * The operation did not succeed because the resource requested is not found in the service. * @throws ServiceQuotaExceededException * The operation did not succeed because it would have exceeded a service limit for your account. * @throws ThrottlingException * The operation did not succeed because too many requests are sent to the service. * @throws ValidationException * The operation did not succeed because a parameter in the request was sent with an invalid value. * @sample AWSCodeArtifact.UpdateRepository * @see AWS * API Documentation */ UpdateRepositoryResult updateRepository(UpdateRepositoryRequest updateRepositoryRequest); /** * Shuts down this client object, releasing any resources that might be held open. This is an optional method, and * callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client * has been shutdown, it should not be used to make any more requests. */ void shutdown(); /** * Returns additional metadata for a previously executed successful request, typically used for debugging issues * where a service isn't acting as expected. This data isn't considered part of the result data returned by an * operation, so it's available through this separate, diagnostic interface. ** Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic * information for an executed request, you should use this method to retrieve it as soon as possible after * executing a request. * * @param request * The originally executed request. * * @return The response metadata for the specified request, or null if none is available. */ ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); }