/*
* 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 outposts-2019-12-03.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.Outposts.Model
{
///
/// Information about an order.
///
public partial class Order
{
private List _lineItems = new List();
private DateTime? _orderFulfilledDate;
private string _orderId;
private DateTime? _orderSubmissionDate;
private OrderType _orderType;
private string _outpostId;
private PaymentOption _paymentOption;
private PaymentTerm _paymentTerm;
private OrderStatus _status;
///
/// Gets and sets the property LineItems.
///
/// The line items for the order
///
///
public List LineItems
{
get { return this._lineItems; }
set { this._lineItems = value; }
}
// Check to see if LineItems property is set
internal bool IsSetLineItems()
{
return this._lineItems != null && this._lineItems.Count > 0;
}
///
/// Gets and sets the property OrderFulfilledDate.
///
/// The fulfillment date of the order.
///
///
public DateTime OrderFulfilledDate
{
get { return this._orderFulfilledDate.GetValueOrDefault(); }
set { this._orderFulfilledDate = value; }
}
// Check to see if OrderFulfilledDate property is set
internal bool IsSetOrderFulfilledDate()
{
return this._orderFulfilledDate.HasValue;
}
///
/// Gets and sets the property OrderId.
///
/// The ID of the order.
///
///
[AWSProperty(Min=1, Max=20)]
public string OrderId
{
get { return this._orderId; }
set { this._orderId = value; }
}
// Check to see if OrderId property is set
internal bool IsSetOrderId()
{
return this._orderId != null;
}
///
/// Gets and sets the property OrderSubmissionDate.
///
/// The submission date for the order.
///
///
public DateTime OrderSubmissionDate
{
get { return this._orderSubmissionDate.GetValueOrDefault(); }
set { this._orderSubmissionDate = value; }
}
// Check to see if OrderSubmissionDate property is set
internal bool IsSetOrderSubmissionDate()
{
return this._orderSubmissionDate.HasValue;
}
///
/// Gets and sets the property OrderType.
///
/// Type of order.
///
///
public OrderType OrderType
{
get { return this._orderType; }
set { this._orderType = value; }
}
// Check to see if OrderType property is set
internal bool IsSetOrderType()
{
return this._orderType != null;
}
///
/// Gets and sets the property OutpostId.
///
/// The ID of the Outpost in the order.
///
///
[AWSProperty(Min=1, Max=20)]
public string OutpostId
{
get { return this._outpostId; }
set { this._outpostId = value; }
}
// Check to see if OutpostId property is set
internal bool IsSetOutpostId()
{
return this._outpostId != null;
}
///
/// Gets and sets the property PaymentOption.
///
/// The payment option for the order.
///
///
public PaymentOption PaymentOption
{
get { return this._paymentOption; }
set { this._paymentOption = value; }
}
// Check to see if PaymentOption property is set
internal bool IsSetPaymentOption()
{
return this._paymentOption != null;
}
///
/// Gets and sets the property PaymentTerm.
///
/// The payment term.
///
///
public PaymentTerm PaymentTerm
{
get { return this._paymentTerm; }
set { this._paymentTerm = value; }
}
// Check to see if PaymentTerm property is set
internal bool IsSetPaymentTerm()
{
return this._paymentTerm != null;
}
///
/// Gets and sets the property Status.
///
/// The status of the order.
///
/// -
///
///
PREPARING
- Order is received and being prepared.
///
/// -
///
///
IN_PROGRESS
- Order is either being built, shipped, or installed. To
/// get more details, see the line item status.
///
/// -
///
///
COMPLETED
- Order is complete.
///
/// -
///
///
CANCELLED
- Order is cancelled.
///
/// -
///
///
ERROR
- Customer should contact support.
///
///
///
/// The following status are deprecated: RECEIVED
, PENDING
,
/// PROCESSING
, INSTALLING
, and FULFILLED
.
///
///
///
public OrderStatus Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
}
}