Interface ConfigurationCopyStrategy
-
- All Known Implementing Classes:
DefaultConfigurationCopyStrategyImpl,PersistenceConfigurationCopyStrategyImpl
public interface ConfigurationCopyStrategystrategy to handle coping/cloning of product configurations
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.StringdeepCopyConfiguration(java.lang.String configId, java.lang.String productCode, java.lang.String externalConfiguration, boolean force)Deep Copies a configuration.voidfinalizeClone(AbstractOrderModel source, AbstractOrderModel target)Hook to be called after a document with a confguration attached was cloned.
-
-
-
Method Detail
-
deepCopyConfiguration
java.lang.String deepCopyConfiguration(java.lang.String configId, java.lang.String productCode, java.lang.String externalConfiguration, boolean force)Deep Copies a configuration. The implementation can decide if a deep copy is needed; if not, the input ID is simply returned.- Parameters:
configId- ID of existing configurationexternalConfiguration- optional - externalConfiguration, if provided this will be used as source, instead of obtaining the external config via the provided configIdproductCode- optional - product code of configurable product to be copiedforce- iftruea deep copy is enforced- Returns:
- ID of new configuration if a deep copy was performed; input otherwise
-
finalizeClone
void finalizeClone(AbstractOrderModel source, AbstractOrderModel target)
Hook to be called after a document with a confguration attached was cloned. It might be necessary to clone the respective configuration, as well. THis happens typically were the configuration is stored in an external system and only reference in hybris (CPS). In case the configuration is attached in an extenal seriliazed form, no more actions are necessary (SSC).- Parameters:
source- source documenttarget- target document
-
-