Skip to content

Commit a05258a

Browse files
authored
Merge pull request #3593 from ControlSystemStudio/CSSTUDIO-3512
Ensure that unique ids are set when updating objects
2 parents bf6fa78 + d9aebeb commit a05258a

File tree

2 files changed

+8
-0
lines changed
  • services/save-and-restore/src
    • main/java/org/phoebus/service/saveandrestore/persistence/dao/impl/elasticsearch
    • test/java/org/phoebus/service/saveandrestore/persistence/dao/impl

2 files changed

+8
-0
lines changed

services/save-and-restore/src/main/java/org/phoebus/service/saveandrestore/persistence/dao/impl/elasticsearch/ElasticsearchDAO.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -703,6 +703,7 @@ public Configuration updateConfiguration(Configuration configuration) {
703703
// Update last modified date
704704
existingConfigurationNode = updateNode(existingConfigurationNode, false);
705705

706+
configuration.getConfigurationData().setUniqueId(configuration.getConfigurationNode().getUniqueId());
706707
ConfigurationData updatedConfigurationData = configurationDataRepository.save(configuration.getConfigurationData());
707708

708709
return Configuration.builder()
@@ -761,6 +762,7 @@ public Snapshot updateSnapshot(Snapshot snapshot) {
761762
SnapshotData newSnapshotData;
762763
Snapshot newSnapshot = new Snapshot();
763764
try {
765+
snapshot.getSnapshotData().setUniqueId(snapshot.getSnapshotNode().getUniqueId());
764766
newSnapshotData = snapshotDataRepository.save(snapshot.getSnapshotData());
765767
Node updatedNode = updateNode(existingSnapshotNode, false);
766768
newSnapshot.setSnapshotData(newSnapshotData);
@@ -1030,6 +1032,7 @@ public CompositeSnapshot updateCompositeSnapshot(CompositeSnapshot compositeSnap
10301032
existingCompositeSnapshotNode.setLastModified(new Date());
10311033
existingCompositeSnapshotNode = updateNode(existingCompositeSnapshotNode, false);
10321034

1035+
compositeSnapshot.getCompositeSnapshotData().setUniqueId(compositeSnapshot.getCompositeSnapshotNode().getUniqueId());
10331036
CompositeSnapshotData updatedCompositeSnapshotData =
10341037
compositeSnapshotDataRepository.save(compositeSnapshot.getCompositeSnapshotData());
10351038

services/save-and-restore/src/test/java/org/phoebus/service/saveandrestore/persistence/dao/impl/DAOTestIT.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -400,6 +400,7 @@ public void testUpdateCompositeSnapshot() {
400400
assertEquals(compositeSnapshotNode.getUniqueId(), compositeSnapshot.getCompositeSnapshotNode().getUniqueId());
401401
assertEquals("Updated name", compositeSnapshot.getCompositeSnapshotNode().getName());
402402
assertEquals("Updated description", compositeSnapshot.getCompositeSnapshotNode().getDescription());
403+
assertEquals(compositeSnapshotNode.getUniqueId(), compositeSnapshot.getCompositeSnapshotData().getUniqueId());
403404
assertEquals(2, compositeSnapshot.getCompositeSnapshotData().getReferencedSnapshotNodes().size());
404405

405406
nodeDAO.deleteNodes(List.of(compositeSnapshot.getCompositeSnapshotNode().getUniqueId()));
@@ -563,6 +564,7 @@ public void testUpdateSnapshot() {
563564
snapshotNode = snapshot.getSnapshotNode();
564565
assertEquals("other snapshot name", snapshotNode.getName());
565566
assertEquals("other comment", snapshotNode.getDescription());
567+
assertEquals(snapshot.getSnapshotNode().getUniqueId(), snapshot.getSnapshotData().getUniqueId());
566568

567569
}
568570

@@ -810,8 +812,11 @@ public void testUpdateConfig() throws Exception {
810812
configuration.setConfigurationData(configurationData);
811813

812814
configuration = nodeDAO.updateConfiguration(configuration);
815+
816+
assertEquals(configuration.getConfigurationNode().getUniqueId(), configuration.getConfigurationData().getUniqueId());
813817
// Verify the list of PVs
814818
assertEquals(3, configuration.getConfigurationData().getPvList().size());
819+
815820
}
816821

817822
@Test

0 commit comments

Comments
 (0)