Class MarketingMessage
java.lang.Object
com.broadleafcommerce.promotion.offer.domain.MarketingMessage
- All Implemented Interfaces:
com.broadleafcommerce.data.tracking.core.ContextStateAware,ActiveDateEntity,Serializable,Comparable<MarketingMessage>
public class MarketingMessage
extends Object
implements Serializable, Comparable<MarketingMessage>, com.broadleafcommerce.data.tracking.core.ContextStateAware, ActiveDateEntity
A MarketingMessage encapsulates information necessary for displaying a marketing
message related to an Offer next to items affected by the offer in different contexts.
This includes such info as:
- the
target type,- whether the message should appear with items targeted by its parent offer
- with items that qualify orders or other items to receive its parent offer
- or with either kind of item.
- the
location types,- whether the message should appear on product detail pages,
- browse pages,
- cart pages,
- or everywhere.
startandenddates,- and the priority of each message relative to any others applicable to the same context—lower integer value means higher priority.
- Author:
- Nathan Moore (nathanmoore).
- See Also:
-
ItemMarketingMessageRequest- Serialized Form
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanintcompareTo(MarketingMessage that) Orders bypriority.booleanDefines the ending time for which this message is activeDefines the beginning time for which this message is activecom.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextStateA subset ofTrackinginformation to expose the context state for this object.Defines a hint to the client on how to display this messagegetId()Deprecated.since 1.6 use translations for different localesDeprecated.since 1.6 functionality moved tolocationTypes.Determines in what locations this message can appear, whether on product detail, browse, search, or cart pages or everywhere.javax.money.MonetaryAmountThe maximum cart subtotal to display this message.javax.money.MonetaryAmountThe minimum cart subtotal to display this message.Id of the parentOffer.When multiple messages match a context, the message with the higher priority wins out, where smaller integer values represent higher priorities.Determines whether this message should appear only next to itsoffer'stargets or qualifiers or next to both.getText()The actual text of the message to display.inthashCode()booleanDetermines whether the message should be show to the customer if the associated offer is already applied to the cart.booleanDetermines whether the message should be show based on the current subtotal of the customer's cart.voidsetActiveEndDate(Instant activeEndDate) Defines the ending time for which this message is activevoidsetActiveStartDate(Instant activeStartDate) Defines the beginning time for which this message is activevoidsetContextState(com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState contextState) A subset ofTrackinginformation to expose the context state for this object.voidsetDisplayHint(String displayHint) Defines a hint to the client on how to display this messagevoidvoidDeprecated.since 1.6 use translations for different localesvoidsetLocationType(String locationType) Deprecated.since 1.6 functionality moved tolocationTypes.voidsetLocationTypes(List<String> locationTypes) Determines in what locations this message can appear, whether on product detail, browse, search, or cart pages or everywhere.voidsetMaxCartSubtotal(javax.money.MonetaryAmount maxCartSubtotal) The maximum cart subtotal to display this message.voidsetMinCartSubtotal(javax.money.MonetaryAmount minCartSubtotal) The minimum cart subtotal to display this message.voidsetOfferId(String offerId) Id of the parentOffer.voidsetPriority(Integer priority) When multiple messages match a context, the message with the higher priority wins out, where smaller integer values represent higher priorities.voidsetShowIfOfferApplied(boolean showIfOfferApplied) Determines whether the message should be show to the customer if the associated offer is already applied to the cart.voidsetTargetType(String targetType) Determines whether this message should appear only next to itsoffer'stargets or qualifiers or next to both.voidThe actual text of the message to display.voidsetUseCartSubtotal(boolean useCartSubtotal) Determines whether the message should be show based on the current subtotal of the customer's cart.toString()Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.broadleafcommerce.promotion.offer.domain.ActiveDateEntity
checkActiveDates, checkActiveDates
-
Constructor Details
-
MarketingMessage
public MarketingMessage()
-
-
Method Details
-
compareTo
Orders bypriority. Nulls are sorted last.- Specified by:
compareToin interfaceComparable<MarketingMessage>- Parameters:
that- another marketing message to whose display order this will be compared- Returns:
- an integer representing whether this item has a greater, less, or equal priority than the other
-
getId
-
getOfferId
Id of the parentOffer.- Returns:
- id of the parent offer
-
getText
The actual text of the message to display.- Returns:
- The text of the message to display.
-
getPriority
When multiple messages match a context, the message with the higher priority wins out, where smaller integer values represent higher priorities. Nulls are implicitly given lower precedence than any other value - they will appear last.- Returns:
- The priority of this message
- See Also:
-
getTargetType
Determines whether this message should appear only next to itsoffer'stargets or qualifiers or next to both.- Returns:
- the target type of this message
- See Also:
-
getLocationType
Deprecated.since 1.6 functionality moved tolocationTypes.Determines in what locations this message can appear, whether on product detail, browse, search, or cart pages or everywhere.- Returns:
- the location type in which this message can appear
- See Also:
-
getLocationTypes
Determines in what locations this message can appear, whether on product detail, browse, search, or cart pages or everywhere.- Returns:
- the location types in which this message can appear
- See Also:
-
getLocale
Deprecated.since 1.6 use translations for different localesTheLocaleto which this message is applicable.- Returns:
- the
Localeto which this message is applicable.
-
getActiveStartDate
Defines the beginning time for which this message is active- Specified by:
getActiveStartDatein interfaceActiveDateEntity- Returns:
- the beginning time for which this message is active
-
getActiveEndDate
Defines the ending time for which this message is active- Specified by:
getActiveEndDatein interfaceActiveDateEntity- Returns:
- the ending time for which this message is active
-
getDisplayHint
Defines a hint to the client on how to display this message- Returns:
- the display hint for this message
-
isShowIfOfferApplied
public boolean isShowIfOfferApplied()Determines whether the message should be show to the customer if the associated offer is already applied to the cart.- Returns:
- whether to show the message if the offer is applied
-
isUseCartSubtotal
public boolean isUseCartSubtotal()Determines whether the message should be show based on the current subtotal of the customer's cart.- Returns:
- whether to use the cart's subtotal to determine display
-
getMinCartSubtotal
public javax.money.MonetaryAmount getMinCartSubtotal()The minimum cart subtotal to display this message. If this value is specified, this message will only display if the cart subtotal is equal to or greater than this value.- Returns:
- the minimum cart subtotal to display this message
-
getMaxCartSubtotal
public javax.money.MonetaryAmount getMaxCartSubtotal()The maximum cart subtotal to display this message. If this value is specified, this message will only display if the cart subtotal is equal to or less than this value.- Returns:
- the maximum cart subtotal to display this message
-
getContextState
public com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState getContextState()A subset ofTrackinginformation to expose the context state for this object.- Specified by:
getContextStatein interfacecom.broadleafcommerce.data.tracking.core.ContextStateAware- Returns:
- a subset of
Trackinginformation to expose the context state for this object
-
setId
-
setOfferId
Id of the parentOffer.- Parameters:
offerId- Id of the parent offer
-
setText
The actual text of the message to display.- Parameters:
text- The actual text of the message to display.
-
setPriority
When multiple messages match a context, the message with the higher priority wins out, where smaller integer values represent higher priorities. Nulls are implicitly given lower precedence than any other value - they will appear last.- Parameters:
priority- The priority of this message when compared to others- See Also:
-
setTargetType
Determines whether this message should appear only next to itsoffer'stargets or qualifiers or next to both.- Parameters:
targetType- the target type of this message- See Also:
-
setLocationType
Deprecated.since 1.6 functionality moved tolocationTypes.Determines in what locations this message can appear, whether on product detail, browse, search, or cart pages or everywhere.- Parameters:
locationType- the location type in which this message can appear- See Also:
-
setLocationTypes
Determines in what locations this message can appear, whether on product detail, browse, search, or cart pages or everywhere.- Parameters:
locationTypes- the location types in which this message can appear- See Also:
-
setLocale
Deprecated.since 1.6 use translations for different localesTheLocaleto which this message is applicable.- Parameters:
locale- theLocaleto which this message is applicable.
-
setActiveStartDate
Defines the beginning time for which this message is active- Parameters:
activeStartDate- the beginning time for which this message is active
-
setActiveEndDate
Defines the ending time for which this message is active- Parameters:
activeEndDate- the ending time for which this message is active
-
setDisplayHint
Defines a hint to the client on how to display this message- Parameters:
displayHint- the display hint for this message
-
setShowIfOfferApplied
public void setShowIfOfferApplied(boolean showIfOfferApplied) Determines whether the message should be show to the customer if the associated offer is already applied to the cart.- Parameters:
showIfOfferApplied- whether to show the message if the offer is applied
-
setUseCartSubtotal
public void setUseCartSubtotal(boolean useCartSubtotal) Determines whether the message should be show based on the current subtotal of the customer's cart.- Parameters:
useCartSubtotal- whether to use the cart's subtotal to determine display
-
setMinCartSubtotal
public void setMinCartSubtotal(javax.money.MonetaryAmount minCartSubtotal) The minimum cart subtotal to display this message. If this value is specified, this message will only display if the cart subtotal is equal to or greater than this value.- Parameters:
minCartSubtotal- the minimum cart subtotal to display this message
-
setMaxCartSubtotal
public void setMaxCartSubtotal(javax.money.MonetaryAmount maxCartSubtotal) The maximum cart subtotal to display this message. If this value is specified, this message will only display if the cart subtotal is equal to or less than this value.- Parameters:
maxCartSubtotal- the maximum cart subtotal to display this message
-
setContextState
public void setContextState(com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState contextState) A subset ofTrackinginformation to expose the context state for this object.- Specified by:
setContextStatein interfacecom.broadleafcommerce.data.tracking.core.ContextStateAware- Parameters:
contextState- a subset ofTrackinginformation to expose the context state for this object
-
equals
-
canEqual
-
hashCode
public int hashCode() -
toString
-