/** * This code was auto-generated by a Codezu. * * Changes to this file may cause incorrect behavior and will be lost if * the code is regenerated. */ package com.mozu.api.contracts.commerceruntime.products; import java.io.Serializable; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import org.joda.time.DateTime; import java.io.IOException; import java.lang.ClassNotFoundException; import com.mozu.api.contracts.commerceruntime.commerce.PackageMeasurements; /** * Properties of a component product in a product bundle. A product bundle can represent either a collection of multiple products sold as a single entity, or a collection of the same product sold as a package. For example, a 10-pack of socks or multiple parts and devices in a technology bundle for a computer. */ @JsonIgnoreProperties(ignoreUnknown = true) public class BundledProduct implements Serializable { // Default Serial Version UID private static final long serialVersionUID = 1L; /** * Allocation ID associated with this product on this order. */ protected DateTime allocationExpiration; public DateTime getAllocationExpiration() { return this.allocationExpiration; } public void setAllocationExpiration(DateTime allocationExpiration) { this.allocationExpiration = allocationExpiration; } /** * Allocation ID associated with this product on this order. */ protected Integer allocationId; public Integer getAllocationId() { return this.allocationId; } public void setAllocationId(Integer allocationId) { this.allocationId = allocationId; } /** * The credit value of the product or bundled product. When the `goodsType `is `DigitalCredit`, this value is populated to indicate the value of the credit. This is used to create store credit in the fulfillment of gift cards. */ protected Double creditValue; public Double getCreditValue() { return this.creditValue; } public void setCreditValue(Double creditValue) { this.creditValue = creditValue; } protected Double deltaPrice; public Double getDeltaPrice() { return this.deltaPrice; } public void setDeltaPrice(Double deltaPrice) { this.deltaPrice = deltaPrice; } /** * The localized description in text for the object, displayed per the locale code. For example, descriptions are used for product descriptions, attributes, and pre-authorization transaction types. */ protected String description; public String getDescription() { return this.description; } public void setDescription(String description) { this.description = description; } /** * Fulfillment status of the product. */ protected String fulfillmentStatus; public String getFulfillmentStatus() { return this.fulfillmentStatus; } public void setFulfillmentStatus(String fulfillmentStatus) { this.fulfillmentStatus = fulfillmentStatus; } /** * The type of goods in a bundled product. A bundled product is composed of products associated to sell together. Possible values include “Physical” and “DigitalCredit”. This comes from the `productType `of the product. Products are defaulted to a Physical `goodsType`. Gift cards have a `goodsType `of DigitalCredit. */ protected String goodsType; public String getGoodsType() { return this.goodsType; } public void setGoodsType(String goodsType) { this.goodsType = goodsType; } /** * Indicates if the product must be shipped alone in a container. This is used for products and products within a bundle. If true, this product cannot be shipped in a package with other items and must ship in a package by itself. */ protected Boolean isPackagedStandAlone; public Boolean getIsPackagedStandAlone() { return this.isPackagedStandAlone; } public void setIsPackagedStandAlone(Boolean isPackagedStandAlone) { this.isPackagedStandAlone = isPackagedStandAlone; } /** * The display name of the source product property. For a product field it will be the display name of the field. For a product attribute it will be the Attribute Name. */ protected String name; public String getName() { return this.name; } public void setName(String name) { this.name = name; } /** * The fully qualified name of the attribute, which is a user defined attribute identifier. */ protected String optionAttributeFQN; public String getOptionAttributeFQN() { return this.optionAttributeFQN; } public void setOptionAttributeFQN(String optionAttributeFQN) { this.optionAttributeFQN = optionAttributeFQN; } /** * The value of the option attribute. These values are associated and used by product bundles and options. */ protected Object optionValue; public Object getOptionValue() { return this.optionValue; } public void setOptionValue(Object optionValue) { this.optionValue = optionValue; } /** * Merchant-created code that uniquely identifies the product such as a SKU or item number. Once created, the product code is read-only. */ protected String productCode; public String getProductCode() { return this.productCode; } public void setProductCode(String productCode) { this.productCode = productCode; } /** * Unique identifier of the product reservation associated with the component product in a product bundle or item in a cart/order. System-supplied and read only. */ protected Integer productReservationId; public Integer getProductReservationId() { return this.productReservationId; } public void setProductReservationId(Integer productReservationId) { this.productReservationId = productReservationId; } /** * The specified quantity of objects and items. This property is used for numerous object types including products, options, components within a product bundle, cart and order items, returned items, shipping line items, items in a digital product. and items associated with types and reservations. */ protected Integer quantity; public Integer getQuantity() { return this.quantity; } public void setQuantity(Integer quantity) { this.quantity = quantity; } /** * Dimensions of the packaged product. */ protected PackageMeasurements measurements; public PackageMeasurements getMeasurements() { return this.measurements; } public void setMeasurements(PackageMeasurements measurements) { this.measurements = measurements; } }