Interface CloneAbstractOrderStrategy
-
- All Known Implementing Classes:
DefaultCloneAbstractOrderStrategy
,DefaultCloneB2BCartStrategy
,ProductConfigCloneAbstractOrderStrategyImpl
public interface CloneAbstractOrderStrategy
Order cloning strategy defined on an genericAbstractOrderModel
level. It is extended by Cart and Order dedicated strategy that define the contract onCartModel
andOrderModel
levels. If you need to define a strategy for your own order type, please extend this interface for it.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <T extends AbstractOrderModel>
Tclone(ComposedTypeModel orderType, ComposedTypeModel entryType, AbstractOrderModel original, java.lang.String code, java.lang.Class abstractOrderClassResult, java.lang.Class abstractOrderEntryClassResult)
Make a clone of an abstract order (eventually change the type).<T extends AbstractOrderEntryModel>
java.util.Collection<T>cloneEntries(ComposedTypeModel entriesType, AbstractOrderModel original)
Make a clone of entries (eventually change their type).
-
-
-
Method Detail
-
clone
<T extends AbstractOrderModel> T clone(ComposedTypeModel orderType, ComposedTypeModel entryType, AbstractOrderModel original, java.lang.String code, java.lang.Class abstractOrderClassResult, java.lang.Class abstractOrderEntryClassResult)
Make a clone of an abstract order (eventually change the type).- Parameters:
orderType
- type of newly created orderentryType
- type of order entry of newly created orderoriginal
- original ordercode
- code of created order
-
cloneEntries
<T extends AbstractOrderEntryModel> java.util.Collection<T> cloneEntries(ComposedTypeModel entriesType, AbstractOrderModel original)
Make a clone of entries (eventually change their type). If entriesType is null, the type will be calculated according toAbstractOrderEntryTypeService.getAbstractOrderEntryType(AbstractOrderModel)
method.- Parameters:
entriesType
- type of cloned entriesoriginal
- original abstractOrder- Returns:
- cloned order entries (same order as original)
- Throws:
java.lang.IllegalArgumentException
- if original is null
-
-