All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.sphere.sdk.orders.ProductVariantImportDraftImpl Maven / Gradle / Ivy

The newest version!
package io.sphere.sdk.orders;

import com.fasterxml.jackson.annotation.JsonIgnore;
import io.sphere.sdk.attributes.Attribute;
import io.sphere.sdk.models.Base;
import io.sphere.sdk.models.Image;
import io.sphere.sdk.products.Price;

import java.util.List;
import java.util.Optional;

final class ProductVariantImportDraftImpl extends Base implements ProductVariantImportDraft {
    private final Optional id;
    private final Optional sku;
    private final Optional productId;
    private final Optional> prices;
    private final Optional> attributes;
    private final Optional> images;

    ProductVariantImportDraftImpl(final Optional id, final Optional sku, final Optional> prices, final Optional> images, final Optional> attributes, final Optional productId) {
        this.attributes = attributes;
        this.id = id;
        this.sku = sku;
        this.prices = prices;
        this.images = images;
        this.productId = productId;
    }

    @Override
    public Optional> getAttributes() {
        return attributes;
    }

    @Override
    public Optional getId() {
        return id;
    }

    @Override
    public Optional> getImages() {
        return images;
    }

    @Override
    public Optional> getPrices() {
        return prices;
    }

    @Override
    public Optional getSku() {
        return sku;
    }

    /**
     * Hack to initialize {@link LineItemImportDraft} correctly with an SKU or product ID/variant ID pair.
     * @return
     */
    @JsonIgnore
    @Override
    public Optional getProductId() {
        return productId;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy