Interface ConfigDataMergeProcessor
- All Known Implementing Classes:
ConfigDataMergeProcessorImpl
public interface ConfigDataMergeProcessor
This class is able to merge two UI States for CPQ.
This is required, because the CPQ UI usually renders only the part (
Especially for big configurations, with a lot of cstics, this process is much faster than rendering the full state and sending it back along with the updated values.
This is required, because the CPQ UI usually renders only the part (
UiGroupData) the user is currently
working on. hence when the controller receives the update request from the UI, the data is incomplete, There is the
need to fetch the the actual complete state and merge the updates from the UI into it, so that a complete and fully
updated configuration state is available for further processing.Especially for big configurations, with a lot of cstics, this process is much faster than rendering the full state and sending it back along with the updated values.
-
Method Summary
Modifier and TypeMethodDescriptionvoidcompleteInput(ConfigurationData targetConfigData) Fetches the actual configuration sate from the underlying layers and uses it to complete the given partial configuration state to build a complete and fully update state.voidmergeConfigurationData(ConfigurationData source, ConfigurationData target) Merges the source configuration into the target configuration.
-
Method Details
-
completeInput
Fetches the actual configuration sate from the underlying layers and uses it to complete the given partial configuration state to build a complete and fully update state. So after the method call the given configuration will contain all values and each value will be updated to the most recent user input.- Parameters:
targetConfigData- partial configuration to complete
-
mergeConfigurationData
Merges the source configuration into the target configuration. User input in the target configuration has the highest priority, so that it will be kept. The corresponding values of the source configuration are considered out dated and will be discarded.- Parameters:
source- source configuration, missing data in the target configuration will be read from heretarget- target configuration, any values present will be kept, only missing data is read from source configuration
-