49c31f5b5a28bba753bdc8b99b3626addc9ce542
[sdc/sdc-workflow-designer.git] /
1 package org.onap.sdc.workflow.api.impl;
2
3 import static org.onap.sdc.workflow.api.RestConstants.USER_ID_HEADER_PARAM;
4
5 import java.util.Collection;
6 import java.util.List;
7 import java.util.Optional;
8 import org.onap.sdc.workflow.api.WorkflowVersionController;
9 import org.onap.sdc.workflow.api.types.CollectionWrapper;
10 import org.onap.sdc.workflow.services.WorkflowVersionManager;
11 import org.openecomp.sdc.versioning.dao.types.Version;
12 import org.openecomp.sdc.versioning.types.VersionCreationMethod;
13 import org.springframework.beans.factory.annotation.Autowired;
14 import org.springframework.beans.factory.annotation.Qualifier;
15 import org.springframework.core.io.Resource;
16 import org.springframework.http.HttpStatus;
17 import org.springframework.http.ResponseEntity;
18 import org.springframework.web.bind.annotation.PathVariable;
19 import org.springframework.web.bind.annotation.RequestBody;
20 import org.springframework.web.bind.annotation.RequestHeader;
21 import org.springframework.web.bind.annotation.RestController;
22 import org.springframework.web.multipart.MultipartFile;
23
24 @RestController("workflowsVersionController")
25 public class WorkflowVersionControllerImpl implements WorkflowVersionController {
26
27     private final WorkflowVersionManager workflowVersionManager;
28
29     @Autowired
30     public WorkflowVersionControllerImpl(@Qualifier("workflowVersionManager") WorkflowVersionManager workflowVersionManager) {
31         this.workflowVersionManager = workflowVersionManager;
32     }
33
34     @Override
35     public CollectionWrapper<Version> list(@PathVariable("id") String id,@RequestHeader(USER_ID_HEADER_PARAM) String user) {
36         return new CollectionWrapper<>(workflowVersionManager.list(id));
37     }
38
39     @Override
40     public ResponseEntity<?>  create(@PathVariable("id") String id,@RequestBody Version version,
41             @RequestHeader(USER_ID_HEADER_PARAM) String user) {
42
43          Version createdVersion = workflowVersionManager.create(id, version);
44
45         return new ResponseEntity<>(createdVersion, HttpStatus.CREATED);
46     }
47
48     @Override
49     public Version get(@PathVariable("id") String id,@PathVariable("versionId") String versionId,
50             @RequestHeader(USER_ID_HEADER_PARAM)  String user) {
51         Version version = new Version(versionId);
52         return workflowVersionManager.get(id,version);
53     }
54
55     @Override
56     public void update(@PathVariable("id") String id, @PathVariable("versionId") String versionId,
57             @RequestBody Version version, @RequestHeader(USER_ID_HEADER_PARAM) String user) {
58
59         version.setId(versionId);
60         workflowVersionManager.update(id,version);
61     }
62
63 }