diff --git a/faircommons-services/api-service/src/main/java/eu/fairkom/faircommons/api_service/api/WorksApi.java b/faircommons-services/api-service/src/main/java/eu/fairkom/faircommons/api_service/api/WorksApi.java new file mode 100644 index 0000000000000000000000000000000000000000..20f668cf5e24a4babe256d0f4a1c7df0cc72064b --- /dev/null +++ b/faircommons-services/api-service/src/main/java/eu/fairkom/faircommons/api_service/api/WorksApi.java @@ -0,0 +1,47 @@ +package eu.fairkom.faircommons.api_service.api; + +import eu.fairkom.faircommons.common.model.WorkCreateView; +import eu.fairkom.faircommons.common.model.WorkView; +import eu.fairkom.faircommons.common.rabbitmq.RabbitMqService; +import eu.fairkom.faircommons.common.rabbitmq.message.HashingMessage; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@RestController +@RequestMapping("/{userId}/works") +public class WorksApi { + + private final RabbitMqService rabbitMqService; + + public WorksApi(RabbitMqService rabbitMqService) { + this.rabbitMqService = rabbitMqService; + } + + + @GetMapping + public ResponseEntity<List<WorkView>> getWorksByUserId(@PathVariable String userId) { + return null; + } + + @GetMapping("/{workId}") + public ResponseEntity<WorkView> getWorkById(@PathVariable String userId, @PathVariable String workId) { + return null; + } + + @PutMapping("/{workId}") + public ResponseEntity<Void> updateWork(@PathVariable String userId, @PathVariable String workId) { + return null; + } + + @PostMapping("/register") + public ResponseEntity<Void> registerWork(@PathVariable String userId, @RequestBody WorkCreateView workCreateView) { + var message = new HashingMessage(); + message.setName("Test Hashing Message"); + + rabbitMqService.sendMessage(message); + + return ResponseEntity.ok().build(); + } +}