Interface RecurringOrder

All Superinterfaces:
BaseResource

public interface RecurringOrder extends BaseResource
RecurringOrder
Example to create an instance using the builder pattern

     RecurringOrder recurringOrder = RecurringOrder.builder()
             .id("{id}")
             .version(0.3)
             .createdAt(ZonedDateTime.parse("2022-01-01T12:00:00.301Z"))
             .lastModifiedAt(ZonedDateTime.parse("2022-01-01T12:00:00.301Z"))
             .cart(cartBuilder -> cartBuilder)
             .originOrder(originOrderBuilder -> originOrderBuilder)
             .startsAt(ZonedDateTime.parse("2022-01-01T12:00:00.301Z"))
             .recurringOrderState(RecurringOrderState.ACTIVE)
             .schedule(scheduleBuilder -> scheduleBuilder)
             .build()
 
  • Method Details

    • getId

      @NotNull @NotNull String getId()

      Unique identifier of the RecurringOrder.

      Specified by:
      getId in interface BaseResource
      Returns:
      id
    • getKey

      String getKey()

      User-defined unique identifier of the RecurringOrder.

      Returns:
      key
    • getVersion

      @NotNull @NotNull Long getVersion()

      Current version of the RecurringOrder.

      Specified by:
      getVersion in interface BaseResource
      Returns:
      version
    • getCart

      @NotNull @Valid @NotNull @Valid CartReference getCart()

      Reference to the Cart for a RecurringOrder. The referenced Cart will have the RecurringOrder CartOrigin.

      Returns:
      cart
    • getOriginOrder

      @NotNull @Valid @NotNull @Valid OrderReference getOriginOrder()

      Reference to the original Order that generated this RecurringOrder.

      Returns:
      originOrder
    • getStartsAt

      @NotNull @NotNull ZonedDateTime getStartsAt()

      Date and time (UTC) when the RecurringOrder starts creating new Orders.

      Returns:
      startsAt
    • getResumesAt

      ZonedDateTime getResumesAt()

      Date and time (UTC) when the RecurringOrder resumes creating Orders after being unpaused.

      Returns:
      resumesAt
    • getExpiresAt

      ZonedDateTime getExpiresAt()

      Date and time (UTC) when the RecurringOrder expires.

      Returns:
      expiresAt
    • getLastOrderAt

      ZonedDateTime getLastOrderAt()

      Date and time (UTC) when the last Order was created from this RecurringOrder.

      Returns:
      lastOrderAt
    • getNextOrderAt

      ZonedDateTime getNextOrderAt()

      Date and time (UTC) when the next Order will be created from this RecurringOrder.

      Returns:
      nextOrderAt
    • getSkipConfiguration

      @Valid @Valid SkipConfiguration getSkipConfiguration()

      Information about current and future skips for this RecurringOrder.

      Returns:
      skipConfiguration
    • getStore

      @Valid @Valid StoreKeyReference getStore()

      Reference to a Store.

      Returns:
      store
    • getBusinessUnit

      @Valid @Valid BusinessUnitKeyReference getBusinessUnit()

      Reference to the Business Unit that the RecurringOrder belongs to.

      Returns:
      businessUnit
    • getState

      @Valid @Valid StateReference getState()

      State of the RecurringOrder in a custom workflow.

      Returns:
      state
    • getRecurringOrderState

      @NotNull @NotNull RecurringOrderState getRecurringOrderState()

      Current state of the RecurringOrder.

      Returns:
      recurringOrderState
    • getSchedule

      @NotNull @Valid @NotNull @Valid RecurrencePolicySchedule getSchedule()

      Schedule of the RecurringOrder.

      Returns:
      schedule
    • getCustomer

      @Valid @Valid CustomerReference getCustomer()

      The Customer that the RecurringOrder belongs to.

      Returns:
      customer
    • getCustomerEmail

      String getCustomerEmail()

      Email address of the Customer that the RecurringOrder belongs to.

      Returns:
      customerEmail
    • getCustom

      @Valid @Valid CustomFields getCustom()

      Custom Fields of the RecurringOrder.

      Returns:
      custom
    • getCreatedAt

      @NotNull @NotNull ZonedDateTime getCreatedAt()

      Date and time (UTC) when the RecurringOrder was created.

      Specified by:
      getCreatedAt in interface BaseResource
      Returns:
      createdAt
    • getLastModifiedAt

      @NotNull @NotNull ZonedDateTime getLastModifiedAt()

      Date and time (UTC) when the RecurringOrder was last updated.

      Specified by:
      getLastModifiedAt in interface BaseResource
      Returns:
      lastModifiedAt
    • getLastModifiedBy

      @Valid @Valid LastModifiedBy getLastModifiedBy()

      IDs and references that last modified the RecurringOrder.

      Returns:
      lastModifiedBy
    • getCreatedBy

      @Valid @Valid CreatedBy getCreatedBy()

      IDs and references that created the RecurringOrder.

      Returns:
      createdBy
    • setId

      void setId(String id)

      Unique identifier of the RecurringOrder.

      Specified by:
      setId in interface BaseResource
      Parameters:
      id - value to be set
    • setKey

      void setKey(String key)

      User-defined unique identifier of the RecurringOrder.

      Parameters:
      key - value to be set
    • setVersion

      void setVersion(Long version)

      Current version of the RecurringOrder.

      Specified by:
      setVersion in interface BaseResource
      Parameters:
      version - value to be set
    • setCart

      void setCart(CartReference cart)

      Reference to the Cart for a RecurringOrder. The referenced Cart will have the RecurringOrder CartOrigin.

      Parameters:
      cart - value to be set
    • setOriginOrder

      void setOriginOrder(OrderReference originOrder)

      Reference to the original Order that generated this RecurringOrder.

      Parameters:
      originOrder - value to be set
    • setStartsAt

      void setStartsAt(ZonedDateTime startsAt)

      Date and time (UTC) when the RecurringOrder starts creating new Orders.

      Parameters:
      startsAt - value to be set
    • setResumesAt

      void setResumesAt(ZonedDateTime resumesAt)

      Date and time (UTC) when the RecurringOrder resumes creating Orders after being unpaused.

      Parameters:
      resumesAt - value to be set
    • setExpiresAt

      void setExpiresAt(ZonedDateTime expiresAt)

      Date and time (UTC) when the RecurringOrder expires.

      Parameters:
      expiresAt - value to be set
    • setLastOrderAt

      void setLastOrderAt(ZonedDateTime lastOrderAt)

      Date and time (UTC) when the last Order was created from this RecurringOrder.

      Parameters:
      lastOrderAt - value to be set
    • setNextOrderAt

      void setNextOrderAt(ZonedDateTime nextOrderAt)

      Date and time (UTC) when the next Order will be created from this RecurringOrder.

      Parameters:
      nextOrderAt - value to be set
    • setSkipConfiguration

      void setSkipConfiguration(SkipConfiguration skipConfiguration)

      Information about current and future skips for this RecurringOrder.

      Parameters:
      skipConfiguration - value to be set
    • setStore

      void setStore(StoreKeyReference store)

      Reference to a Store.

      Parameters:
      store - value to be set
    • setBusinessUnit

      void setBusinessUnit(BusinessUnitKeyReference businessUnit)

      Reference to the Business Unit that the RecurringOrder belongs to.

      Parameters:
      businessUnit - value to be set
    • setState

      void setState(StateReference state)

      State of the RecurringOrder in a custom workflow.

      Parameters:
      state - value to be set
    • setRecurringOrderState

      void setRecurringOrderState(RecurringOrderState recurringOrderState)

      Current state of the RecurringOrder.

      Parameters:
      recurringOrderState - value to be set
    • setSchedule

      void setSchedule(RecurrencePolicySchedule schedule)

      Schedule of the RecurringOrder.

      Parameters:
      schedule - value to be set
    • setCustomer

      void setCustomer(CustomerReference customer)

      The Customer that the RecurringOrder belongs to.

      Parameters:
      customer - value to be set
    • setCustomerEmail

      void setCustomerEmail(String customerEmail)

      Email address of the Customer that the RecurringOrder belongs to.

      Parameters:
      customerEmail - value to be set
    • setCustom

      void setCustom(CustomFields custom)

      Custom Fields of the RecurringOrder.

      Parameters:
      custom - value to be set
    • setCreatedAt

      void setCreatedAt(ZonedDateTime createdAt)

      Date and time (UTC) when the RecurringOrder was created.

      Specified by:
      setCreatedAt in interface BaseResource
      Parameters:
      createdAt - value to be set
    • setLastModifiedAt

      void setLastModifiedAt(ZonedDateTime lastModifiedAt)

      Date and time (UTC) when the RecurringOrder was last updated.

      Specified by:
      setLastModifiedAt in interface BaseResource
      Parameters:
      lastModifiedAt - value to be set
    • setLastModifiedBy

      void setLastModifiedBy(LastModifiedBy lastModifiedBy)

      IDs and references that last modified the RecurringOrder.

      Parameters:
      lastModifiedBy - value to be set
    • setCreatedBy

      void setCreatedBy(CreatedBy createdBy)

      IDs and references that created the RecurringOrder.

      Parameters:
      createdBy - value to be set
    • of

      static RecurringOrder of()
      factory method
      Returns:
      instance of RecurringOrder
    • of

      static RecurringOrder of(RecurringOrder template)
      factory method to create a shallow copy RecurringOrder
      Parameters:
      template - instance to be copied
      Returns:
      copy instance
    • copyDeep

      RecurringOrder copyDeep()
      Specified by:
      copyDeep in interface BaseResource
    • deepCopy

      @Nullable static RecurringOrder deepCopy(@Nullable RecurringOrder template)
      factory method to create a deep copy of RecurringOrder
      Parameters:
      template - instance to be copied
      Returns:
      copy instance
    • builder

      static RecurringOrderBuilder builder()
      builder factory method for RecurringOrder
      Returns:
      builder
    • builder

      static RecurringOrderBuilder builder(RecurringOrder template)
      create builder for RecurringOrder instance
      Parameters:
      template - instance with prefilled values for the builder
      Returns:
      builder
    • withRecurringOrder

      default <T> T withRecurringOrder(Function<RecurringOrder,T> helper)
      accessor map function
      Type Parameters:
      T - mapped type
      Parameters:
      helper - function to map the object
      Returns:
      mapped value
    • typeReference

      static com.fasterxml.jackson.core.type.TypeReference<RecurringOrder> typeReference()
      gives a TypeReference for usage with Jackson DataBind
      Returns:
      TypeReference