1 package org.onap.sdc.workflow.api.impl;
3 import static org.onap.sdc.workflow.api.RestConstants.USER_ID_HEADER_PARAM;
5 import java.util.Collection;
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;
24 @RestController("workflowsVersionController")
25 public class WorkflowVersionControllerImpl implements WorkflowVersionController {
27 private final WorkflowVersionManager workflowVersionManager;
30 public WorkflowVersionControllerImpl(@Qualifier("workflowVersionManager") WorkflowVersionManager workflowVersionManager) {
31 this.workflowVersionManager = workflowVersionManager;
35 public CollectionWrapper<Version> list(@PathVariable("id") String id,@RequestHeader(USER_ID_HEADER_PARAM) String user) {
36 return new CollectionWrapper<>(workflowVersionManager.list(id));
40 public ResponseEntity<?> create(@PathVariable("id") String id,@RequestBody Version version,
41 @RequestHeader(USER_ID_HEADER_PARAM) String user) {
43 Version createdVersion = workflowVersionManager.create(id, version);
45 return new ResponseEntity<>(createdVersion, HttpStatus.CREATED);
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);
56 public void update(@PathVariable("id") String id, @PathVariable("versionId") String versionId,
57 @RequestBody Version version, @RequestHeader(USER_ID_HEADER_PARAM) String user) {
59 version.setId(versionId);
60 workflowVersionManager.update(id,version);