Package de.hybris.platform.voucher.jalo
Class Restriction
- All Implemented Interfaces:
Serializable,Comparable
- Direct Known Subclasses:
GeneratedDateRestriction,GeneratedNewCustomerRestriction,GeneratedOrderRestriction,GeneratedProductRestriction,GeneratedRegularCustomerOrderQuantityRestriction,GeneratedRegularCustomerOrderTotalRestriction,GeneratedUserRestriction
The [y] hybris Platform voucher extension enables users to assign a set of restrictions to a voucher for
confining the usage of it. A combination of none, one, or many of the restrictions is possible. Developers can
implement other restrictions in addition to those already there.
In an order containing multiple items, (percentage) discounts will apply only to the products that match all of the
criteria given by its assigned restrictions. The other products in the order are not discounted. Vouchers provide an
interface for getting the eligible entries within an given order.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class de.hybris.platform.jalo.GenericItem
GenericItem.GenericItemImplNested classes/interfaces inherited from class de.hybris.platform.jalo.c2l.LocalizableItem
LocalizableItem.LocalizableItemImplNested classes/interfaces inherited from class de.hybris.platform.jalo.ExtensibleItem
ExtensibleItem.ExtensibleItemImplNested classes/interfaces inherited from class de.hybris.platform.jalo.Item
Item.AttributeFilter, Item.AttributeMode, Item.CachedGetter, Item.CachedSetter, Item.ItemAttributeMap, Item.ItemConstraint, Item.ItemImpl, Item.JaloCachedComputationException -
Field Summary
Fields inherited from class de.hybris.platform.voucher.jalo.GeneratedRestriction
DEFAULT_INITIAL_ATTRIBUTES, DESCRIPTION, POSITIVE, RESTRICTIONTYPE, VIOLATIONMESSAGE, VOUCHER, VOUCHERHANDLER, VOUCHERPOSFields inherited from class de.hybris.platform.jalo.c2l.LocalizableItem
LANGUAGE_FALLBACK_ENABLEDFields inherited from class de.hybris.platform.jalo.Item
_CREATION_TIME_INTERNAL, _MODIFIED_TIME_INTERNAL, accessorLog, CREATION_TIME, DISABLE_ATTRIBUTE_CHECK, DISABLE_ITEMCHECK_BEFORE_REMOVABLE, EVEN, FEATURE_ACCESSMAP_QUALIFIER, HJMPTS, INITIAL_CREATION_FLAG, isJaloOnly, MODIFIED_TIME, NEGATIVE, NOT_FOUND, OWNER, PK, SAVE_FROM_SERVICE_LAYER, staticTransientObjects, TYPEFields inherited from class de.hybris.platform.util.BridgeAbstraction
impl, tenant -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturns a map containing all localized names of the type of this restriction.getApplicableEntries(AbstractOrder anOrder) Returns a description for this restriction.protected String[]Returns the values for making violation messages more useful.Convenience method.final StringReturns a message explaining on what terms this restriction is fulfilled.final booleanisFulfilled(AbstractOrder anOrder) Returns true if the specified abstract order is not null and fulfills this restriction.final booleanisFulfilled(Product aProduct) Returns true if the specified product is not null and fulfills this restriction.protected abstract booleanisFulfilledInternal(AbstractOrder anOrder) Returns true if the specified abstract order fulfills this restriction.protected abstract booleanisFulfilledInternal(Product aProduct) Returns true if the specified product fulfills this restriction.Methods inherited from class de.hybris.platform.voucher.jalo.GeneratedRestriction
createItem, getAllDescription, getAllDescription, getAllRestrictionType, getAllViolationMessage, getAllViolationMessage, getDefaultAttributeModes, getDescription, getRestrictionType, getViolationMessage, getVoucher, getVoucher, isPositive, isPositive, isPositiveAsPrimitive, isPositiveAsPrimitive, setAllDescription, setAllDescription, setAllViolationMessage, setAllViolationMessage, setDescription, setDescription, setPositive, setPositive, setPositive, setPositive, setViolationMessage, setViolationMessage, setVoucher, setVoucherMethods inherited from class de.hybris.platform.jalo.GenericItem
getImplementation, getInitialProperties, getNonInitialAttributes, getRelatedItems, getRelatedItems, setRelatedItemsMethods inherited from class de.hybris.platform.jalo.c2l.LocalizableItem
getAllLocalizedProperties, getAllLocalizedProperties, getAllLocalizedProperties, getAllLocalizedProperties, getAllValuesSessionContext, getLocalizedProperty, getLocalizedProperty, getLocalizedPropertyInternal, getLocalizedPropertyNames, getLocalizedPropertyNames, hasLanguage, isEmptyValue, isFallbackEnabled, removeLocalizedProperty, removeLocalizedProperty, setAllLocalizedProperties, setAllLocalizedProperties, setLocalizedProperty, setLocalizedPropertyMethods inherited from class de.hybris.platform.jalo.ExtensibleItem
createNonClassAccessor, getAllProperties, getAllProperties, getProperty, getProperty, getPropertyNames, getPropertyNames, removeProperty, removeProperty, setAllProperties, setAllProperties, setProperty, setPropertyMethods inherited from class de.hybris.platform.jalo.Item
addLinkedItems, addLinkedItems, addLinkedItems, addLinkedItems, addLinkedItems, addLinkedItems, addLinkedItems, addLinkedItems, addLinkedItems, addNegativePermission, addPermission, addPositivePermission, assureExtensionsLoaded, changeTypeAfterCreation, checkConstraint, checkItemPermission, checkMandatoryAttribute, checkMandatoryAttribute, checkPermission, checkPermission, checkRemovable, clearPermission, compareTo, ctx, doAfterRemove, doBeforeRemove, equals, getAccessorFor, getAllAttributes, getAllAttributes, getAllAttributes, getAllAttributes, getAllAttributesInternal, getAllLinkedItems, getAndCheckCacheBoundItem, getAttribute, getAttribute, getCacheBoundItem, getComposedType, getComposedTypePK, getCreationTime, getCurrentlyRemovingCount, getLinkedItems, getLinkedItems, getLinkedItems, getLinkedItems, getLinkedItems, getLinkedItems, getLinkedItems, getLinkedItemsCount, getLinkedItemsCount, getLinkedItemsCount, getModificationTime, getNegativePermissions, getOwner, getPartOfRemovedSessionMarker, getPermissionMap, getPermissions, getPersistenceVersion, getPK, getPositivePermissions, getRestrictedPrincipals, getSession, getSyncObject, getTenant, getTransientObject, getTransientObjectMap, hashCode, hasRegisteredClassAccessorFor, internal_registerClassAccessorFor, internal_registerNonClassAccessorFor, invalidateLocalCaches, isAlive, isCacheBound, isCurrentlyRemoving, isCurrentlyRemoving, isEmptyRelationValue, isInCreate, isInstanceOf, isItemCheckBeforeRemoveableDisabled, isMarkModifiedDisabled, isRelationLocalizationFallbackEnabled, newInstance, notifyExtensionsAfterItemCreation, notifyExtensionsBeforeItemCreation, notifyItemRemoval, notifyManagerAboutItemRemoval, readResolve, registerAccessFor, registerAccessFor, registerJaloInvalidationListeners, remove, remove, removeItemCollection, removeItemCollection, removeLinkedItems, removeLinkedItems, removeLinkedItems, removeLinkedItems, removeLinks, removePartOfItems, removePartOfItems, setAllAttributes, setAllAttributes, setAllAttributesInternal, setAllLinkedItems, setAllLinkedItems, setAllLinkedItems, setAllLinkedItems, setAttribute, setAttribute, setAttributeFromString, setAttributeFromString, setCacheBound, setComposedType, setCreationTime, setImplementation, setLinkedItems, setLinkedItems, setLinkedItems, setLinkedItems, setLinkedItems, setLinkedItems, setLinkedItems, setLinkedItems, setModificationTime, setNonInitialAttributes, setOwner, setPermissionsByMap, setTransientObject, setUseTA, suppressRelation, toString, useTA, writeReplaceMethods inherited from class de.hybris.platform.util.BridgeAbstraction
setTenant
-
Constructor Details
-
Restriction
public Restriction()
-
-
Method Details
-
getAllRestrictionType
Returns a map containing all localized names of the type of this restriction.- Specified by:
getAllRestrictionTypein classGeneratedRestriction- Parameters:
ctx- the context of the actual session- Returns:
- a Map associating String objects as values to Language objects as keys.
-
getApplicableEntries
-
getDescription
Returns a description for this restriction. To get a more specific description, this method replaces all place holders in the localized description returned by super.getDescription(SessionContext) by the values returned by getMessageAttributeValues().- Overrides:
getDescriptionin classGeneratedRestriction- Returns:
- a description for this restriction.
-
getRestrictionType
Convenience method. Returns the localized name of the type of this restriction, equivalent to getComposedType().getName().- Specified by:
getRestrictionTypein classGeneratedRestriction- Parameters:
ctx- the context of the actual session.- Returns:
- the locaalized name of this restriction's type.
-
getViolationMessage
Returns a message explaining on what terms this restriction is fulfilled. To get a more specific violation message, this method replaces all place holders in the localized message returned by super.getViolationMessage(SessionContext) by the values returned by getMessageAttributeValues().- Overrides:
getViolationMessagein classGeneratedRestriction- Returns:
- a message explaining on what terms this restriction is fulfilled.
-
getMessageAttributeValues
Returns the values for making violation messages more useful. -
isFulfilled
Returns true if the specified abstract order is not null and fulfills this restriction.- Parameters:
anOrder- the abstract order to check whether it fullfills this restriction.- Returns:
- true if the specified abstract order is not null and fulfills this restriction, false else.
-
isFulfilled
Returns true if the specified product is not null and fulfills this restriction.- Parameters:
aProduct- the product to check whether it fullfills this restriction.- Returns:
- true if the specified product is not null and fulfills this restriction, false else.
-
isFulfilledInternal
Returns true if the specified abstract order fulfills this restriction.- Parameters:
anOrder- the abstract order to check whether it fullfills this restriction.- Returns:
- true if the specified abstract order fulfills this restriction, false else.
-
isFulfilledInternal
Returns true if the specified product fulfills this restriction.- Parameters:
aProduct- the product to check whether it fullfills this restriction.- Returns:
- true if the specified product fulfills this restriction, false else.
-