Skip to content

Commit

Permalink
Remove the id automatically generated to have a unique index for ELS (#…
Browse files Browse the repository at this point in the history
…382)

Signed-off-by: Slimane AMAR <[email protected]>
  • Loading branch information
SlimaneAmar authored Nov 24, 2023
1 parent 1abce8b commit b19f5d2
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@

import lombok.*;
import lombok.experimental.SuperBuilder;
import org.springframework.data.annotation.AccessType;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;
Expand All @@ -27,7 +28,16 @@
@EqualsAndHashCode
public class BasicEquipmentInfos {
@Id
private String uniqueId;
@AccessType(AccessType.Type.PROPERTY)
@SuppressWarnings("unused")
public String getUniqueId() {
return networkUuid + "_" + variantId + "_" + id;
}

@SuppressWarnings("unused")
public void setUniqueId(String uniqueId) {
// No setter because it a composite value
}

@MultiField(
mainField = @Field(name = "equipmentId", type = FieldType.Text),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,6 @@ public void cloneVariantModifications(@NonNull UUID networkUuid, @NonNull String
addAllEquipmentInfos(
equipmentInfosRepository.findAllByNetworkUuidAndVariantId(networkUuid, variantToCloneId).stream()
.map(equipmentInfos -> {
equipmentInfos.setUniqueId(null);
equipmentInfos.setVariantId(variantId);
return equipmentInfos;
})
Expand All @@ -74,7 +73,6 @@ public void cloneVariantModifications(@NonNull UUID networkUuid, @NonNull String
addAllTombstonedEquipmentInfos(
tombstonedEquipmentInfosRepository.findAllByNetworkUuidAndVariantId(networkUuid, variantToCloneId).stream()
.map(tombstonedEquipmentInfos -> {
tombstonedEquipmentInfos.setUniqueId(null);
tombstonedEquipmentInfos.setVariantId(variantId);
return tombstonedEquipmentInfos;
})
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,8 +74,26 @@ public void testAddDeleteEquipmentInfos() {
.substations(Set.of(SubstationInfos.builder().id("s1").name("s1").build()))
.build();
equipmentInfosService.addAllEquipmentInfos(List.of(equipmentInfos));
assertNotNull(equipmentInfosRepository.findAllByNetworkUuidAndVariantId(NETWORK_UUID, VARIANT_NAME_1).get(0));
assertEquals(equipmentInfos, equipmentInfosRepository.findAllByNetworkUuidAndVariantId(NETWORK_UUID, VARIANT_NAME_1).get(0));
List<EquipmentInfos> infosDB = equipmentInfosRepository.findAllByNetworkUuidAndVariantId(NETWORK_UUID, VARIANT_NAME_1);
assertEquals(1, infosDB.size());
assertEquals(equipmentInfos, infosDB.get(0));
assertEquals(equipmentInfos.getNetworkUuid() + "_" + equipmentInfos.getVariantId() + "_" + equipmentInfos.getId(), infosDB.get(0).getUniqueId());

// Change name but uniqueIds are same
equipmentInfos = EquipmentInfos.builder()
.networkUuid(NETWORK_UUID)
.id("id1")
.variantId(VARIANT_NAME_1)
.name("newName")
.type(IdentifiableType.LOAD.name())
.voltageLevels(Set.of(VoltageLevelInfos.builder().id("vl1").name("vl1").build()))
.substations(Set.of(SubstationInfos.builder().id("s1").name("s1").build()))
.build();
equipmentInfosService.addAllEquipmentInfos(List.of(equipmentInfos));
infosDB = equipmentInfosRepository.findAllByNetworkUuidAndVariantId(NETWORK_UUID, VARIANT_NAME_1);
assertEquals(1, infosDB.size());
assertEquals(equipmentInfos, infosDB.get(0));
assertEquals(equipmentInfos.getNetworkUuid() + "_" + equipmentInfos.getVariantId() + "_" + equipmentInfos.getId(), infosDB.get(0).getUniqueId());

equipmentInfosRepository.deleteByIdInAndNetworkUuidAndVariantId(List.of(equipmentInfos.getId()), NETWORK_UUID, VARIANT_NAME_1);
assertEquals(0, equipmentInfosRepository.findAllByNetworkUuidAndVariantId(NETWORK_UUID, VARIANT_NAME_1).size());
Expand Down

0 comments on commit b19f5d2

Please sign in to comment.