Skip to content

Commit df2f5c9

Browse files
committed
Add a delete network endpoint.
Signed-off-by: Gautier Bureau <[email protected]>
1 parent 30f1e03 commit df2f5c9

File tree

5 files changed

+22
-0
lines changed

5 files changed

+22
-0
lines changed

pom.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
<gridsuite-dependencies.version>15</gridsuite-dependencies.version>
3939
<string-template.version>4.3.1</string-template.version>
4040
<commons-lang3.version>3.9</commons-lang3.version>
41+
<lombok.version>1.18.22</lombok.version>
4142
<liquibase-hibernate-package>org.gridsuite.mapping.server</liquibase-hibernate-package>
4243
</properties>
4344

@@ -125,6 +126,7 @@
125126
<dependency>
126127
<groupId>org.projectlombok</groupId>
127128
<artifactId>lombok</artifactId>
129+
<version>${lombok.version}</version>
128130
</dependency>
129131
<dependency>
130132
<groupId>commons-io</groupId>

src/main/java/org/gridsuite/mapping/server/controller/NetworkController.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,4 +73,12 @@ public ResponseEntity<MatchedRule> getNetworkMatches(@PathVariable("networkUuid"
7373
return ResponseEntity.ok().contentType(MediaType.APPLICATION_JSON).body(networkService.getNetworkMatches(networkUuid, ruleToMatch));
7474
}
7575

76+
@DeleteMapping(path = "/{networkUuid}")
77+
@Operation(summary = "delete the network")
78+
@ApiResponse(responseCode = "200", description = "Network deleted")
79+
public ResponseEntity<Void> deleteNetwork(@PathVariable("networkUuid") UUID networkUuid) {
80+
networkService.deleteNetwork(networkUuid);
81+
return ResponseEntity.ok().build();
82+
}
83+
7684
}

src/main/java/org/gridsuite/mapping/server/service/NetworkService.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,6 @@ public interface NetworkService {
3030
Network getNetwork(UUID networkUuid);
3131

3232
MatchedRule getNetworkMatches(UUID networkUuid, RuleToMatch ruleToMatch);
33+
34+
void deleteNetwork(UUID networkUuid);
3335
}

src/main/java/org/gridsuite/mapping/server/service/implementation/NetworkServiceImpl.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,12 @@ public NetworkValues getNetworkValuesFromExistingNetwork(UUID networkUuid) {
101101
return new NetworkValues(networkUuid, equipmentValuesList);
102102
}
103103

104+
@Override
105+
public void deleteNetwork(UUID networkUuid) {
106+
networkRepository.deleteById(networkUuid);
107+
networkStoreService.deleteNetwork(networkUuid);
108+
}
109+
104110
private void setPropertyMap(HashMap<String, Set<String>> propertyMap, String value, String propertyName) {
105111
if (propertyMap.containsKey(propertyName)) {
106112
Set<String> propertyValues = propertyMap.get(propertyName);

src/test/java/org/gridsuite/mapping/server/NetworkControllerTest.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,10 @@ public void fileTest() throws Exception {
126126
NetworkEntity actualEntity = savedNetworks.get(0);
127127
assertTrue(expectedEntity.getNetworkId().equals(actualEntity.getNetworkId()) && expectedEntity.getNetworkName().equals(actualEntity.getNetworkName()));
128128

129+
mvc.perform(MockMvcRequestBuilders.delete("/network/" + networkUUID)).andExpect(status().isOk());
130+
savedNetworks = networkRepository.findAll();
131+
assertEquals(0, savedNetworks.size());
132+
129133
}
130134

131135
private String network(UUID id, String name) {

0 commit comments

Comments
 (0)