Interface Project

All Superinterfaces:
WithKey

public interface Project extends WithKey
Project
Example to create an instance using the builder pattern

     Project project = Project.builder()
             .version(0.3)
             .key("{key}")
             .name("{name}")
             .plusCountries(countriesBuilder -> countriesBuilder)
             .plusCurrencies(currenciesBuilder -> currenciesBuilder)
             .plusLanguages(languagesBuilder -> languagesBuilder)
             .createdAt(ZonedDateTime.parse("2022-01-01T12:00:00.301Z"))
             .messages(messagesBuilder -> messagesBuilder)
             .carts(cartsBuilder -> cartsBuilder)
             .build()
 
  • Method Details

    • getVersion

      @NotNull @NotNull Long getVersion()

      Current version of the Project.

      Returns:
      version
    • getKey

      @NotNull @NotNull String getKey()

      User-defined unique identifier of the Project.

      Specified by:
      getKey in interface WithKey
      Returns:
      key
    • getName

      @NotNull @NotNull String getName()

      Name of the Project.

      Returns:
      name
    • getCountries

      @NotNull @NotNull List<String> getCountries()

      Country code of the geographic location.

      Returns:
      countries
    • getCurrencies

      @NotNull @NotNull List<String> getCurrencies()

      Currency code of the country. A Project must have at least one currency.

      Returns:
      currencies
    • getLanguages

      @NotNull @NotNull List<String> getLanguages()

      Language of the country. A Project must have at least one language.

      Returns:
      languages
    • getCreatedAt

      @NotNull @NotNull ZonedDateTime getCreatedAt()

      Date and time (UTC) the Project was initially created.

      Returns:
      createdAt
    • getTrialUntil

      String getTrialUntil()

      Date in YYYY-MM format specifying when the trial period for the Project ends. Only present on Projects in trial period.

      Returns:
      trialUntil
    • getMessages

      @NotNull @Valid @NotNull @Valid MessagesConfiguration getMessages()

      Holds the configuration for the Messages Query feature.

      Returns:
      messages
    • getCarts

      @NotNull @Valid @NotNull @Valid CartsConfiguration getCarts()

      Holds the configuration for the Carts feature.

      Returns:
      carts
    • getShoppingLists

      @Valid @Valid ShoppingListsConfiguration getShoppingLists()

      Holds the configuration for the Shopping Lists feature. This field may not be present on Projects created before January 2020.

      Returns:
      shoppingLists
    • getShippingRateInputType

      @Valid @Valid ShippingRateInputType getShippingRateInputType()

      Holds the configuration for the tiered shipping rates feature.

      Returns:
      shippingRateInputType
    • getExternalOAuth

      @Valid @Valid ExternalOAuth getExternalOAuth()

      Represents a RFC 7662 compliant OAuth 2.0 Token Introspection endpoint.

      Returns:
      externalOAuth
    • getSearchIndexing

      @Valid @Valid SearchIndexingConfiguration getSearchIndexing()

      Controls indexing of resources to be provided on high performance read-only search endpoints.

      Returns:
      searchIndexing
    • getBusinessUnits

      @Valid @Valid BusinessUnitConfiguration getBusinessUnits()

      Holds configuration specific to Business Units.

      Returns:
      businessUnits
    • setVersion

      void setVersion(Long version)

      Current version of the Project.

      Parameters:
      version - value to be set
    • setKey

      void setKey(String key)

      User-defined unique identifier of the Project.

      Parameters:
      key - value to be set
    • setName

      void setName(String name)

      Name of the Project.

      Parameters:
      name - value to be set
    • setCountries

      void setCountries(String... countries)

      Country code of the geographic location.

      Parameters:
      countries - values to be set
    • setCountries

      void setCountries(List<String> countries)

      Country code of the geographic location.

      Parameters:
      countries - values to be set
    • setCurrencies

      void setCurrencies(String... currencies)

      Currency code of the country. A Project must have at least one currency.

      Parameters:
      currencies - values to be set
    • setCurrencies

      void setCurrencies(List<String> currencies)

      Currency code of the country. A Project must have at least one currency.

      Parameters:
      currencies - values to be set
    • setLanguages

      void setLanguages(String... languages)

      Language of the country. A Project must have at least one language.

      Parameters:
      languages - values to be set
    • setLanguages

      void setLanguages(List<String> languages)

      Language of the country. A Project must have at least one language.

      Parameters:
      languages - values to be set
    • setCreatedAt

      void setCreatedAt(ZonedDateTime createdAt)

      Date and time (UTC) the Project was initially created.

      Parameters:
      createdAt - value to be set
    • setTrialUntil

      void setTrialUntil(String trialUntil)

      Date in YYYY-MM format specifying when the trial period for the Project ends. Only present on Projects in trial period.

      Parameters:
      trialUntil - value to be set
    • setMessages

      void setMessages(MessagesConfiguration messages)

      Holds the configuration for the Messages Query feature.

      Parameters:
      messages - value to be set
    • setCarts

      void setCarts(CartsConfiguration carts)

      Holds the configuration for the Carts feature.

      Parameters:
      carts - value to be set
    • setShoppingLists

      void setShoppingLists(ShoppingListsConfiguration shoppingLists)

      Holds the configuration for the Shopping Lists feature. This field may not be present on Projects created before January 2020.

      Parameters:
      shoppingLists - value to be set
    • setShippingRateInputType

      void setShippingRateInputType(ShippingRateInputType shippingRateInputType)

      Holds the configuration for the tiered shipping rates feature.

      Parameters:
      shippingRateInputType - value to be set
    • setExternalOAuth

      void setExternalOAuth(ExternalOAuth externalOAuth)

      Represents a RFC 7662 compliant OAuth 2.0 Token Introspection endpoint.

      Parameters:
      externalOAuth - value to be set
    • setSearchIndexing

      void setSearchIndexing(SearchIndexingConfiguration searchIndexing)

      Controls indexing of resources to be provided on high performance read-only search endpoints.

      Parameters:
      searchIndexing - value to be set
    • setBusinessUnits

      void setBusinessUnits(BusinessUnitConfiguration businessUnits)

      Holds configuration specific to Business Units.

      Parameters:
      businessUnits - value to be set
    • of

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

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

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

      static ProjectBuilder builder()
      builder factory method for Project
      Returns:
      builder
    • builder

      static ProjectBuilder builder(Project template)
      create builder for Project instance
      Parameters:
      template - instance with prefilled values for the builder
      Returns:
      builder
    • withProject

      default <T> T withProject(Function<Project,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<Project> typeReference()
      gives a TypeReference for usage with Jackson DataBind
      Returns:
      TypeReference