Skip to content

Commit 3791685

Browse files
committed
Review DisposalScheduleController and DisposalScheduleService; Small changes to PreservationAgentController.java, FilesController.java
1 parent 658fdd3 commit 3791685

4 files changed

Lines changed: 20 additions & 54 deletions

File tree

roda-ui/roda-wui/src/main/java/org/roda/wui/api/v2/controller/DisposalScheduleController.java

Lines changed: 10 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,27 @@
11
package org.roda.wui.api.v2.controller;
22

3-
import com.google.json.JsonSanitizer;
4-
import jakarta.servlet.http.HttpServletRequest;
3+
import java.io.IOException;
4+
55
import org.roda.core.data.common.RodaConstants;
6-
import org.roda.core.data.exceptions.AuthorizationDeniedException;
76
import org.roda.core.data.exceptions.RODAException;
87
import org.roda.core.data.utils.JsonUtils;
9-
import org.roda.core.data.v2.generics.select.SelectedItemsRequest;
10-
import org.roda.core.data.v2.ip.IndexedAIP;
118
import org.roda.core.data.v2.disposal.schedule.DisposalSchedule;
129
import org.roda.core.data.v2.disposal.schedule.DisposalSchedules;
10+
import org.roda.core.data.v2.generics.select.SelectedItemsRequest;
11+
import org.roda.core.data.v2.ip.IndexedAIP;
1312
import org.roda.core.data.v2.jobs.Job;
14-
import org.roda.core.data.v2.log.LogEntryState;
1513
import org.roda.wui.api.v2.exceptions.RESTException;
1614
import org.roda.wui.api.v2.services.DisposalScheduleService;
1715
import org.roda.wui.api.v2.utils.CommonServicesUtils;
1816
import org.roda.wui.client.services.DisposalScheduleRestService;
19-
import org.roda.wui.common.ControllerAssistant;
2017
import org.roda.wui.common.RequestControllerAssistant;
2118
import org.roda.wui.common.model.RequestContext;
22-
import org.roda.wui.common.utils.RequestUtils;
2319
import org.springframework.beans.factory.annotation.Autowired;
2420
import org.springframework.web.bind.annotation.RequestBody;
2521
import org.springframework.web.bind.annotation.RequestMapping;
2622
import org.springframework.web.bind.annotation.RestController;
2723

28-
import java.io.IOException;
24+
import com.google.json.JsonSanitizer;
2925

3026
/**
3127
* @author Miguel Guimarães <mguimaraes@keep.pt>
@@ -34,9 +30,6 @@
3430
@RequestMapping(path = "/api/v2/disposal/schedules")
3531
public class DisposalScheduleController implements DisposalScheduleRestService {
3632

37-
@Autowired
38-
HttpServletRequest request;
39-
4033
@Autowired
4134
DisposalScheduleService disposalScheduleService;
4235

@@ -49,8 +42,6 @@ public DisposalSchedules listDisposalSchedules() {
4942
@Override
5043
public DisposalSchedules process(RequestContext requestContext, RequestControllerAssistant controllerAssistant)
5144
throws RODAException, RESTException, IOException {
52-
// check user permissions
53-
controllerAssistant.checkRoles(requestContext.getUser());
5445

5546
return disposalScheduleService.getDisposalSchedules(requestContext.getModelService());
5647
}
@@ -64,8 +55,6 @@ public DisposalSchedule retrieveDisposalSchedule(String id) {
6455
public DisposalSchedule process(RequestContext requestContext, RequestControllerAssistant controllerAssistant)
6556
throws RODAException, RESTException, IOException {
6657
controllerAssistant.setRelatedObjectId(id);
67-
// check user permissions
68-
controllerAssistant.checkRoles(requestContext.getUser());
6958

7059
// delegate action to service
7160
return disposalScheduleService.retrieveDisposalSchedule(requestContext.getModelService(), id);
@@ -75,13 +64,11 @@ public DisposalSchedule process(RequestContext requestContext, RequestController
7564

7665
@Override
7766
public DisposalSchedule createDisposalSchedule(@RequestBody DisposalSchedule schedule) {
78-
return requestHandler.processRequest(new RequestHandler.RequestProcessor<DisposalSchedule>() {
67+
return requestHandler.processRequestWithTransaction(new RequestHandler.RequestProcessor<DisposalSchedule>() {
7968
@Override
8069
public DisposalSchedule process(RequestContext requestContext, RequestControllerAssistant controllerAssistant)
8170
throws RODAException, RESTException {
8271
controllerAssistant.setParameters(RodaConstants.CONTROLLER_DISPOSAL_SCHEDULE_PARAM, schedule);
83-
// check user permissions
84-
controllerAssistant.checkRoles(requestContext.getUser());
8572

8673
// sanitize the input
8774
String sanitize = JsonSanitizer.sanitize(JsonUtils.getJsonFromObject(schedule));
@@ -97,13 +84,11 @@ public DisposalSchedule process(RequestContext requestContext, RequestController
9784

9885
@Override
9986
public DisposalSchedule updateDisposalSchedule(@RequestBody DisposalSchedule schedule) {
100-
return requestHandler.processRequest(new RequestHandler.RequestProcessor<DisposalSchedule>() {
87+
return requestHandler.processRequestWithTransaction(new RequestHandler.RequestProcessor<DisposalSchedule>() {
10188
@Override
10289
public DisposalSchedule process(RequestContext requestContext, RequestControllerAssistant controllerAssistant)
10390
throws RODAException, RESTException {
10491
controllerAssistant.setParameters(RodaConstants.CONTROLLER_DISPOSAL_SCHEDULE_PARAM, schedule);
105-
// check user permissions
106-
controllerAssistant.checkRoles(requestContext.getUser());
10792

10893
// sanitize the input
10994
String sanitize = JsonSanitizer.sanitize(JsonUtils.getJsonFromObject(schedule));
@@ -120,14 +105,12 @@ public DisposalSchedule process(RequestContext requestContext, RequestController
120105

121106
@Override
122107
public Void deleteDisposalSchedule(String id) {
123-
return requestHandler.processRequest(new RequestHandler.RequestProcessor<Void>() {
108+
return requestHandler.processRequestWithTransaction(new RequestHandler.RequestProcessor<Void>() {
124109
@Override
125110
public Void process(RequestContext requestContext, RequestControllerAssistant controllerAssistant)
126111
throws RODAException, RESTException {
127112
controllerAssistant.setRelatedObjectId(id);
128113
controllerAssistant.setParameters(RodaConstants.CONTROLLER_DISPOSAL_SCHEDULE_ID_PARAM, id);
129-
// check user permissions
130-
controllerAssistant.checkRoles(requestContext.getUser());
131114

132115
// delegate action to service
133116
disposalScheduleService.deleteDisposalSchedule(id, requestContext.getModelService());
@@ -139,14 +122,12 @@ public Void process(RequestContext requestContext, RequestControllerAssistant co
139122

140123
@Override
141124
public Job associatedDisposalSchedule(@RequestBody SelectedItemsRequest selectedItems, String disposalScheduleId) {
142-
return requestHandler.processRequest(new RequestHandler.RequestProcessor<Job>() {
125+
return requestHandler.processRequestWithTransaction(new RequestHandler.RequestProcessor<Job>() {
143126
@Override
144127
public Job process(RequestContext requestContext, RequestControllerAssistant controllerAssistant)
145128
throws RODAException, RESTException, IOException {
146129
controllerAssistant.setParameters(RodaConstants.CONTROLLER_SELECTED_PARAM, selectedItems,
147130
RodaConstants.CONTROLLER_DISPOSAL_SCHEDULE_ID_PARAM, disposalScheduleId);
148-
// check user permissions
149-
controllerAssistant.checkRoles(requestContext.getUser());
150131

151132
// delegate
152133
return disposalScheduleService.associateDisposalSchedule(requestContext.getUser(),
@@ -157,13 +138,11 @@ public Job process(RequestContext requestContext, RequestControllerAssistant con
157138

158139
@Override
159140
public Job disassociatedDisposalSchedule(@RequestBody SelectedItemsRequest selectedItems) {
160-
return requestHandler.processRequest(new RequestHandler.RequestProcessor<Job>() {
141+
return requestHandler.processRequestWithTransaction(new RequestHandler.RequestProcessor<Job>() {
161142
@Override
162143
public Job process(RequestContext requestContext, RequestControllerAssistant controllerAssistant)
163144
throws RODAException, RESTException {
164145
controllerAssistant.setParameters(RodaConstants.CONTROLLER_SELECTED_PARAM, selectedItems);
165-
// check user permissions
166-
controllerAssistant.checkRoles(requestContext.getUser());
167146

168147
// delegate
169148
return disposalScheduleService.disassociateDisposalSchedule(requestContext.getUser(),

roda-ui/roda-wui/src/main/java/org/roda/wui/api/v2/controller/FilesController.java

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,7 @@
99

1010
import org.roda.core.RodaCoreFactory;
1111
import org.roda.core.data.common.RodaConstants;
12-
import org.roda.core.data.exceptions.AlreadyExistsException;
13-
import org.roda.core.data.exceptions.AuthorizationDeniedException;
14-
import org.roda.core.data.exceptions.GenericException;
15-
import org.roda.core.data.exceptions.NotFoundException;
1612
import org.roda.core.data.exceptions.RODAException;
17-
import org.roda.core.data.exceptions.RequestNotValidException;
18-
import org.roda.core.data.exceptions.TechnicalMetadataNotFoundException;
1913
import org.roda.core.data.v2.StreamResponse;
2014
import org.roda.core.data.v2.file.CreateFolderRequest;
2115
import org.roda.core.data.v2.file.MoveFilesRequest;
@@ -35,7 +29,6 @@
3529
import org.roda.core.data.v2.ip.IndexedRepresentation;
3630
import org.roda.core.data.v2.ip.metadata.TechnicalMetadataInfos;
3731
import org.roda.core.data.v2.jobs.Job;
38-
import org.roda.core.data.v2.log.LogEntryState;
3932
import org.roda.core.model.utils.UserUtility;
4033
import org.roda.core.storage.ContentPayload;
4134
import org.roda.core.storage.RangeConsumesOutputStream;
@@ -49,7 +42,6 @@
4942
import org.roda.wui.api.v2.utils.ApiUtils;
5043
import org.roda.wui.api.v2.utils.CommonServicesUtils;
5144
import org.roda.wui.client.services.FileRestService;
52-
import org.roda.wui.common.ControllerAssistant;
5345
import org.roda.wui.common.RequestControllerAssistant;
5446
import org.roda.wui.common.model.RequestContext;
5547
import org.roda.wui.common.utils.RequestUtils;
@@ -82,17 +74,18 @@
8274
@RestController
8375
@RequestMapping(path = "/api/v2/files")
8476
public class FilesController implements FileRestService, Exportable {
77+
8578
@Autowired
86-
private HttpServletRequest request;
79+
HttpServletRequest request;
8780

8881
@Autowired
89-
private FilesService filesService;
82+
FilesService filesService;
9083

9184
@Autowired
92-
private IndexService indexService;
85+
IndexService indexService;
9386

9487
@Autowired
95-
private RequestHandler requestHandler;
88+
RequestHandler requestHandler;
9689

9790
@RequestMapping(path = "{uuid}/preview", method = RequestMethod.GET, produces = MediaType.APPLICATION_OCTET_STREAM_VALUE)
9891
@Operation(summary = "Previews a file", description = "Previews a particular file using streaming capabilities", responses = {
@@ -199,13 +192,11 @@ public ResponseEntity<StreamingResponseBody> process(RequestContext requestConte
199192

200193
@Override
201194
public IndexedFile findByUuid(String uuid, String localeString) {
202-
RequestContext requestContext = RequestUtils.parseHTTPRequest(request);
203195
return indexService.retrieve(IndexedFile.class, uuid, new ArrayList<>());
204196
}
205197

206198
@Override
207199
public IndexResult<IndexedFile> find(@RequestBody FindRequest findRequest, String localeString) {
208-
RequestContext requestContext = RequestUtils.parseHTTPRequest(request);
209200
return indexService.find(IndexedFile.class, findRequest, localeString);
210201
}
211202

@@ -221,7 +212,6 @@ public LongResponse count(@RequestBody CountRequest countRequest) {
221212

222213
@Override
223214
public List<String> suggest(@RequestBody SuggestRequest suggestRequest) {
224-
RequestContext requestContext = RequestUtils.parseHTTPRequest(request);
225215
return indexService.suggest(suggestRequest, IndexedFile.class);
226216
}
227217

roda-ui/roda-wui/src/main/java/org/roda/wui/api/v2/controller/PreservationAgentController.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,13 @@
1212
import org.roda.core.data.v2.index.IndexResult;
1313
import org.roda.core.data.v2.index.SuggestRequest;
1414
import org.roda.core.data.v2.ip.metadata.IndexedPreservationAgent;
15-
import org.roda.core.data.v2.log.LogEntryState;
1615
import org.roda.core.model.utils.UserUtility;
1716
import org.roda.wui.api.v2.exceptions.RESTException;
1817
import org.roda.wui.api.v2.exceptions.model.ErrorResponseMessage;
1918
import org.roda.wui.api.v2.services.IndexService;
2019
import org.roda.wui.api.v2.services.PreservationAgentService;
2120
import org.roda.wui.api.v2.utils.ApiUtils;
2221
import org.roda.wui.client.services.PreservationAgentRestService;
23-
import org.roda.wui.common.ControllerAssistant;
2422
import org.roda.wui.common.RequestControllerAssistant;
2523
import org.roda.wui.common.model.RequestContext;
2624
import org.roda.wui.common.utils.RequestUtils;

roda-ui/roda-wui/src/main/java/org/roda/wui/api/v2/services/DisposalScheduleService.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
package org.roda.wui.api.v2.services;
22

3-
import org.roda.core.RodaCoreFactory;
3+
import java.io.IOException;
4+
import java.util.Collections;
5+
import java.util.HashMap;
6+
import java.util.Map;
7+
48
import org.roda.core.data.common.RodaConstants;
59
import org.roda.core.data.exceptions.AlreadyExistsException;
610
import org.roda.core.data.exceptions.AuthorizationDeniedException;
@@ -26,11 +30,6 @@
2630
import org.roda.wui.common.model.RequestContext;
2731
import org.springframework.stereotype.Service;
2832

29-
import java.io.IOException;
30-
import java.util.Collections;
31-
import java.util.HashMap;
32-
import java.util.Map;
33-
3433
/**
3534
* @author Miguel Guimarães <mguimaraes@keep.pt>
3635
*/

0 commit comments

Comments
 (0)