Skip to content

Commit 6e6a6d9

Browse files
authored
Merge pull request #24 from PatternAtlas/fix/delete-functionality
Adding functionality for delete/icon frontend features
2 parents 0fdced4 + 70ab13a commit 6e6a6d9

File tree

5 files changed

+21
-1
lines changed

5 files changed

+21
-1
lines changed

src/main/java/com/patternpedia/api/entities/PatternView.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.patternpedia.api.entities;
22

3+
import java.net.URL;
34
import java.util.ArrayList;
45
import java.util.Iterator;
56
import java.util.List;
@@ -19,6 +20,8 @@
1920
@NoArgsConstructor
2021
public class PatternView extends PatternGraph {
2122

23+
private URL logo;
24+
2225
@JsonIgnore
2326
@OneToMany(mappedBy = "patternView", cascade = CascadeType.ALL, orphanRemoval = true)
2427
private List<PatternViewPattern> patterns = new ArrayList<>();

src/main/java/com/patternpedia/api/rest/controller/DesignModelController.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@
88
import com.patternpedia.api.rest.model.PositionDTO;
99
import com.patternpedia.api.service.ConcreteSolutionService;
1010
import com.patternpedia.api.service.DesignModelService;
11+
import io.swagger.v3.oas.annotations.Operation;
12+
import io.swagger.v3.oas.annotations.media.Content;
13+
import io.swagger.v3.oas.annotations.responses.ApiResponse;
1114
import lombok.extern.apachecommons.CommonsLog;
1215
import org.apache.commons.text.CaseUtils;
1316
import org.springframework.hateoas.CollectionModel;
@@ -224,4 +227,11 @@ public List<FileDTO> aggregateConcreteSolutions(@PathVariable UUID designModelId
224227

225228
return this.concreteSolutionService.aggregate(patternInstanceList, directedEdgeList, patternConcreteSolutionMap);
226229
}
230+
231+
@Operation(operationId = "deleteDesignModelById", responses = {@ApiResponse(responseCode = "204"), @ApiResponse(responseCode = "404", content = @Content)}, description = "Delete DesignModel by id")
232+
@DeleteMapping(value = "/{designModelId}")
233+
public ResponseEntity<?> deleteDesignModel(@PathVariable UUID designModelId) {
234+
this.designModelService.deleteDesignModel(designModelId);
235+
return ResponseEntity.noContent().build();
236+
}
227237
}

src/main/java/com/patternpedia/api/rest/controller/PatternViewController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ public ResponseEntity<?> putPatternView(@PathVariable UUID patternViewId, @Reque
146146
return ResponseEntity.ok(patternView);
147147
}
148148

149-
@Operation(operationId = "getPatternViewById", responses = {@ApiResponse(responseCode = "204"), @ApiResponse(responseCode = "404", content = @Content)}, description = "Delete pattern view by id")
149+
@Operation(operationId = "deletePatternViewById", responses = {@ApiResponse(responseCode = "204"), @ApiResponse(responseCode = "404", content = @Content)}, description = "Delete pattern view by id")
150150
@DeleteMapping(value = "/{patternViewId}")
151151
public ResponseEntity<?> deletePatternView(@PathVariable UUID patternViewId) {
152152
this.patternViewService.deletePatternView(patternViewId);

src/main/java/com/patternpedia/api/service/DesignModelService.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,6 @@ public interface DesignModelService {
3131
void addEdge(UUID designModelId, UUID patternInstanceId1, UUID patternInstanceId2, Boolean directed, String type, String description);
3232

3333
void deleteEdge(UUID designModelId, UUID patternInstanceId1, UUID patternInstanceId2);
34+
35+
void deleteDesignModel(UUID designModelId);
3436
}

src/main/java/com/patternpedia/api/service/DesignModelServiceImpl.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,4 +176,9 @@ public void deleteEdge(UUID designModelId, UUID patternInstanceId1, UUID pattern
176176
designModelId, patternInstanceId1, patternInstanceId2
177177
);
178178
}
179+
180+
@Override
181+
public void deleteDesignModel(UUID designModelId) {
182+
this.designModelRepository.deleteById(designModelId);
183+
}
179184
}

0 commit comments

Comments
 (0)