/*
* Copyright 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.
*/
/*
* Do not modify this file. This file is generated from the codeartifact-2018-09-22.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.CodeArtifact.Model
{
///
/// Container for the parameters to the DisposePackageVersions operation.
/// 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.
///
///
///
public partial class DisposePackageVersionsRequest : AmazonCodeArtifactRequest
{
private string _domain;
private string _domainOwner;
private PackageVersionStatus _expectedStatus;
private PackageFormat _format;
private string _awsNamespace;
private string _package;
private string _repository;
private Dictionary _versionRevisions = new Dictionary();
private List _versions = new List();
///
/// Gets and sets the property Domain.
///
/// The name of the domain that contains the repository you want to dispose.
///
///
[AWSProperty(Required=true, Min=2, Max=50)]
public string Domain
{
get { return this._domain; }
set { this._domain = value; }
}
// Check to see if Domain property is set
internal bool IsSetDomain()
{
return this._domain != null;
}
///
/// Gets and sets the property DomainOwner.
///
/// The 12-digit account number of the Amazon Web Services account that owns the domain.
/// It does not include dashes or spaces.
///
///
[AWSProperty(Min=12, Max=12)]
public string DomainOwner
{
get { return this._domainOwner; }
set { this._domainOwner = value; }
}
// Check to see if DomainOwner property is set
internal bool IsSetDomainOwner()
{
return this._domainOwner != null;
}
///
/// Gets and sets the property ExpectedStatus.
///
/// The expected status of the package version to dispose.
///
///
public PackageVersionStatus ExpectedStatus
{
get { return this._expectedStatus; }
set { this._expectedStatus = value; }
}
// Check to see if ExpectedStatus property is set
internal bool IsSetExpectedStatus()
{
return this._expectedStatus != null;
}
///
/// Gets and sets the property Format.
///
/// A format that specifies the type of package versions you want to dispose.
///
///
[AWSProperty(Required=true)]
public PackageFormat Format
{
get { return this._format; }
set { this._format = value; }
}
// Check to see if Format property is set
internal bool IsSetFormat()
{
return this._format != null;
}
///
/// Gets and sets the property Namespace.
///
/// The namespace of the package versions to be disposed. The package version component
/// that specifies its namespace depends on its type. For example:
///
/// -
///
/// The namespace of a Maven package version is its
groupId
.
///
/// -
///
/// The namespace of an npm package version is its
scope
.
///
/// -
///
/// Python and NuGet package versions do not contain a corresponding component, package
/// versions of those formats do not have a namespace.
///
///
-
///
/// The namespace of a generic package is its
namespace
.
///
///
///
[AWSProperty(Min=1, Max=255)]
public string Namespace
{
get { return this._awsNamespace; }
set { this._awsNamespace = value; }
}
// Check to see if Namespace property is set
internal bool IsSetNamespace()
{
return this._awsNamespace != null;
}
///
/// Gets and sets the property Package.
///
/// The name of the package with the versions you want to dispose.
///
///
[AWSProperty(Required=true, Min=1, Max=255)]
public string Package
{
get { return this._package; }
set { this._package = value; }
}
// Check to see if Package property is set
internal bool IsSetPackage()
{
return this._package != null;
}
///
/// Gets and sets the property Repository.
///
/// The name of the repository that contains the package versions you want to dispose.
///
///
///
[AWSProperty(Required=true, Min=2, Max=100)]
public string Repository
{
get { return this._repository; }
set { this._repository = value; }
}
// Check to see if Repository property is set
internal bool IsSetRepository()
{
return this._repository != null;
}
///
/// Gets and sets the property VersionRevisions.
///
/// The revisions of the package versions you want to dispose.
///
///
public Dictionary VersionRevisions
{
get { return this._versionRevisions; }
set { this._versionRevisions = value; }
}
// Check to see if VersionRevisions property is set
internal bool IsSetVersionRevisions()
{
return this._versionRevisions != null && this._versionRevisions.Count > 0;
}
///
/// Gets and sets the property Versions.
///
/// The versions of the package you want to dispose.
///
///
[AWSProperty(Required=true, Max=100)]
public List Versions
{
get { return this._versions; }
set { this._versions = value; }
}
// Check to see if Versions property is set
internal bool IsSetVersions()
{
return this._versions != null && this._versions.Count > 0;
}
}
}