/*
* 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 servicecatalog-2015-12-10.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.ServiceCatalog.Model
{
///
/// Information about a plan.
///
public partial class ProvisionedProductPlanDetails
{
private DateTime? _createdTime;
private List _notificationArns = new List();
private string _pathId;
private string _planId;
private string _planName;
private ProvisionedProductPlanType _planType;
private string _productId;
private string _provisioningArtifactId;
private List _provisioningParameters = new List();
private string _provisionProductId;
private string _provisionProductName;
private ProvisionedProductPlanStatus _status;
private string _statusMessage;
private List _tags = new List();
private DateTime? _updatedTime;
///
/// Gets and sets the property CreatedTime.
///
/// The UTC time stamp of the creation time.
///
///
public DateTime CreatedTime
{
get { return this._createdTime.GetValueOrDefault(); }
set { this._createdTime = value; }
}
// Check to see if CreatedTime property is set
internal bool IsSetCreatedTime()
{
return this._createdTime.HasValue;
}
///
/// Gets and sets the property NotificationArns.
///
/// Passed to CloudFormation. The SNS topic ARNs to which to publish stack-related events.
///
///
[AWSProperty(Max=5)]
public List NotificationArns
{
get { return this._notificationArns; }
set { this._notificationArns = value; }
}
// Check to see if NotificationArns property is set
internal bool IsSetNotificationArns()
{
return this._notificationArns != null && this._notificationArns.Count > 0;
}
///
/// Gets and sets the property PathId.
///
/// The path identifier of the product. This value is optional if the product has a default
/// path, and required if the product has more than one path. To list the paths for a
/// product, use ListLaunchPaths.
///
///
[AWSProperty(Min=1, Max=100)]
public string PathId
{
get { return this._pathId; }
set { this._pathId = value; }
}
// Check to see if PathId property is set
internal bool IsSetPathId()
{
return this._pathId != null;
}
///
/// Gets and sets the property PlanId.
///
/// The plan identifier.
///
///
[AWSProperty(Min=1, Max=100)]
public string PlanId
{
get { return this._planId; }
set { this._planId = value; }
}
// Check to see if PlanId property is set
internal bool IsSetPlanId()
{
return this._planId != null;
}
///
/// Gets and sets the property PlanName.
///
/// The name of the plan.
///
///
public string PlanName
{
get { return this._planName; }
set { this._planName = value; }
}
// Check to see if PlanName property is set
internal bool IsSetPlanName()
{
return this._planName != null;
}
///
/// Gets and sets the property PlanType.
///
/// The plan type.
///
///
public ProvisionedProductPlanType PlanType
{
get { return this._planType; }
set { this._planType = value; }
}
// Check to see if PlanType property is set
internal bool IsSetPlanType()
{
return this._planType != null;
}
///
/// Gets and sets the property ProductId.
///
/// The product identifier.
///
///
[AWSProperty(Min=1, Max=100)]
public string ProductId
{
get { return this._productId; }
set { this._productId = value; }
}
// Check to see if ProductId property is set
internal bool IsSetProductId()
{
return this._productId != null;
}
///
/// Gets and sets the property ProvisioningArtifactId.
///
/// The identifier of the provisioning artifact.
///
///
[AWSProperty(Min=1, Max=100)]
public string ProvisioningArtifactId
{
get { return this._provisioningArtifactId; }
set { this._provisioningArtifactId = value; }
}
// Check to see if ProvisioningArtifactId property is set
internal bool IsSetProvisioningArtifactId()
{
return this._provisioningArtifactId != null;
}
///
/// Gets and sets the property ProvisioningParameters.
///
/// Parameters specified by the administrator that are required for provisioning the product.
///
///
public List ProvisioningParameters
{
get { return this._provisioningParameters; }
set { this._provisioningParameters = value; }
}
// Check to see if ProvisioningParameters property is set
internal bool IsSetProvisioningParameters()
{
return this._provisioningParameters != null && this._provisioningParameters.Count > 0;
}
///
/// Gets and sets the property ProvisionProductId.
///
/// The product identifier.
///
///
[AWSProperty(Min=1, Max=100)]
public string ProvisionProductId
{
get { return this._provisionProductId; }
set { this._provisionProductId = value; }
}
// Check to see if ProvisionProductId property is set
internal bool IsSetProvisionProductId()
{
return this._provisionProductId != null;
}
///
/// Gets and sets the property ProvisionProductName.
///
/// The user-friendly name of the provisioned product.
///
///
[AWSProperty(Min=1, Max=128)]
public string ProvisionProductName
{
get { return this._provisionProductName; }
set { this._provisionProductName = value; }
}
// Check to see if ProvisionProductName property is set
internal bool IsSetProvisionProductName()
{
return this._provisionProductName != null;
}
///
/// Gets and sets the property Status.
///
/// The status.
///
///
public ProvisionedProductPlanStatus Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property StatusMessage.
///
/// The status message.
///
///
public string StatusMessage
{
get { return this._statusMessage; }
set { this._statusMessage = value; }
}
// Check to see if StatusMessage property is set
internal bool IsSetStatusMessage()
{
return this._statusMessage != null;
}
///
/// Gets and sets the property Tags.
///
/// One or more tags.
///
///
[AWSProperty(Max=50)]
public List Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
///
/// Gets and sets the property UpdatedTime.
///
/// The UTC time stamp when the plan was last updated.
///
///
public DateTime UpdatedTime
{
get { return this._updatedTime.GetValueOrDefault(); }
set { this._updatedTime = value; }
}
// Check to see if UpdatedTime property is set
internal bool IsSetUpdatedTime()
{
return this._updatedTime.HasValue;
}
}
}