- public DataNode getDataNode(final String cmHandle, final String xpath,
- final FetchDescendantsOption fetchDescendantsOption) {
- return cpsDataService.getDataNode(getDataspaceName(), cmHandle, xpath, fetchDescendantsOption);
+ public void updateDmiRegistrationAndSyncModule(final DmiPluginRegistration dmiPluginRegistration) {
+ dmiPluginRegistration.validateDmiPluginRegistration();
+ try {
+ if (dmiPluginRegistration.getCreatedCmHandles() != null) {
+ parseAndCreateCmHandlesInDmiRegistrationAndSyncModules(dmiPluginRegistration);
+ }
+ if (dmiPluginRegistration.getUpdatedCmHandles() != null) {
+ parseAndUpdateCmHandlesInDmiRegistration(dmiPluginRegistration);
+ }
+ if (dmiPluginRegistration.getRemovedCmHandles() != null) {
+ parseAndRemoveCmHandlesInDmiRegistration(dmiPluginRegistration);
+ }
+ } catch (final JsonProcessingException | DataNodeNotFoundException e) {
+ final String errorMessage = String.format(
+ "Error occurred while processing the CM-handle registration request [%s] ,caused by : [%s]",
+ dmiPluginRegistration, e.getMessage());
+ throw new DataValidationException(errorMessage, e.getMessage(), e);
+ }