Package de.hybris.platform.order.impl
Class DefaultEntryGroupService
java.lang.Object
de.hybris.platform.order.impl.DefaultEntryGroupService
- All Implemented Interfaces:
EntryGroupService
Default implementation of
EntryGroupService-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintfindMaxGroupNumber(List<EntryGroup> roots) Searches for maximum value ofEntryGroup.getGroupNumber().voidAsEntryGroupis not a DB entity, changing it does not cause parent order to save.getGroup(AbstractOrderModel order, Integer groupNumber) ReturnsEntryGroupby groupNumbergetGroupOfType(AbstractOrderModel order, Collection<Integer> groupNumbers, GroupType type) Find entry group in the cart by number and type.getLeaves(EntryGroup entryGroup) Returns all leafEntryGroups of given one.protected ModelServicegetNestedGroups(EntryGroup entryGroup) Gets all nestedEntryGroups of given one, including the given one.getParent(AbstractOrderModel order, Integer groupNumber) Returns parent entry group of the tree within the order's entry group trees which has given group.getRoot(AbstractOrderModel order, Integer groupNumber) Returns root of the tree within the order's entry group trees which has given group.voidsetModelService(ModelService modelService)
-
Constructor Details
-
DefaultEntryGroupService
public DefaultEntryGroupService()
-
-
Method Details
-
getNestedGroups
Description copied from interface:EntryGroupServiceGets all nestedEntryGroups of given one, including the given one.- Specified by:
getNestedGroupsin interfaceEntryGroupService- Parameters:
entryGroup- rootEntryGroup- Returns:
- all
EntryGroups for subtree where the givenEntryGroupis root, including the root
-
getLeaves
Description copied from interface:EntryGroupServiceReturns all leafEntryGroups of given one. If that one is already leaf it will return itself.- Specified by:
getLeavesin interfaceEntryGroupService- Parameters:
entryGroup- rootEntryGroup- Returns:
- all leaf
EntryGroups for subtree where the givenEntryGroupis root or givenEntryGroupif it is a leaf.
-
getGroup
@Nonnull public EntryGroup getGroup(@Nonnull AbstractOrderModel order, @Nonnull Integer groupNumber) Description copied from interface:EntryGroupServiceReturnsEntryGroupby groupNumber- Specified by:
getGroupin interfaceEntryGroupService- Parameters:
order- order containing entry group treesgroupNumber- number of the group to search for- Returns:
EntryGroupwith given groupNumber from the order
-
getRoot
Description copied from interface:EntryGroupServiceReturns root of the tree within the order's entry group trees which has given group.- Specified by:
getRootin interfaceEntryGroupService- Parameters:
order- order to take trees fromgroupNumber- number of group to search for- Returns:
- root of the tree that contains
groupNumber
-
getParent
Description copied from interface:EntryGroupServiceReturns parent entry group of the tree within the order's entry group trees which has given group.- Specified by:
getParentin interfaceEntryGroupService- Parameters:
order- order to take trees fromgroupNumber- number of group to search for- Returns:
- parent of the
groupNumberor null if it is root
-
forceOrderSaving
Description copied from interface:EntryGroupServiceAsEntryGroupis not a DB entity, changing it does not cause parent order to save. This method updates the wholeentryGroupsfield, so the order is marked as changes and correctly saved to DB.- Specified by:
forceOrderSavingin interfaceEntryGroupService- Parameters:
order- order to save
-
findMaxGroupNumber
Description copied from interface:EntryGroupServiceSearches for maximum value ofEntryGroup.getGroupNumber(). Is useful for assigning unique values to entry group numbers.- Specified by:
findMaxGroupNumberin interfaceEntryGroupService- Parameters:
roots- list of root groups- Returns:
- maximum value of groupNumber field
-
getGroupOfType
public EntryGroup getGroupOfType(@Nonnull AbstractOrderModel order, @Nonnull Collection<Integer> groupNumbers, @Nonnull GroupType type) Description copied from interface:EntryGroupServiceFind entry group in the cart by number and type.- Specified by:
getGroupOfTypein interfaceEntryGroupService- Parameters:
order- user's cartgroupNumbers- group numbers of the entrytype- group type- Returns:
EntryGroupobject or null if no groups of given type in collection
-
getModelService
-
setModelService
-