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

io.sphere.sdk.discountcodes.DiscountCodeDraftDsl Maven / Gradle / Ivy

There is a newer version: 2.16.0
Show newest version
package io.sphere.sdk.discountcodes;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.sphere.sdk.cartdiscounts.CartDiscount;
import io.sphere.sdk.cartdiscounts.CartPredicate;
import io.sphere.sdk.models.LocalizedString;
import io.sphere.sdk.models.Reference;
import io.sphere.sdk.models.Referenceable;

import javax.annotation.Nullable;
import java.util.Collections;
import java.util.List;

public final class DiscountCodeDraftDsl extends DiscountCodeDraftDslBase {

    DiscountCodeDraftDsl(@JsonProperty("isActive") final Boolean active, final List> cartDiscounts, @Nullable final String cartPredicate, final String code, @Nullable final LocalizedString description, @Nullable final Long maxApplications, @Nullable final Long maxApplicationsPerCustomer, @Nullable final LocalizedString name) {
        super(active, cartDiscounts, cartPredicate, code, description, maxApplications, maxApplicationsPerCustomer, name);
    }

    public DiscountCodeDraftDsl withCartDiscounts(final Referenceable cartDiscount) {
        return withCartDiscounts(Collections.singletonList(cartDiscount.toReference()));
    }

    public static DiscountCodeDraftDsl of(final String code, final Referenceable cartDiscount) {
        return of(code, Collections.singletonList(cartDiscount.toReference()));
    }

    public DiscountCodeDraftDsl withCartPredicate(@Nullable final CartPredicate cartPredicate) {
        return newBuilder().cartPredicate(cartPredicate.toSphereCartPredicate()).build();
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy