From a992f910cb6ae784c50923c332617683b9f50ed6 Mon Sep 17 00:00:00 2001 From: sumedh Date: Thu, 17 Oct 2024 16:32:09 +0530 Subject: [PATCH] java-parse-get-status config implementation done --- .../apollo/controllers/TestController.java | 6 +++ .../services/JavaParserModuleService.java | 8 +++- .../com/olympus/apollo/models/KSGitInfo.java | 1 + .../olympus/apollo/models/ParseProcess.java | 42 +++++++++++++++++++ 4 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/olympus/apollo/models/ParseProcess.java diff --git a/src/main/java/com/olympus/apollo/controllers/TestController.java b/src/main/java/com/olympus/apollo/controllers/TestController.java index b9d0d0e..d893cfb 100644 --- a/src/main/java/com/olympus/apollo/controllers/TestController.java +++ b/src/main/java/com/olympus/apollo/controllers/TestController.java @@ -4,6 +4,7 @@ import java.util.List; import com.olympus.apollo.dto.ResultDTO; import com.olympus.apollo.feign.services.JavaParserModuleService; +import com.olympus.apollo.models.ParseProcess; import com.olympus.apollo.services.GitService; import com.olympus.dto.JavaParseRequest; import org.slf4j.Logger; @@ -105,4 +106,9 @@ public class TestController { javaParserModuleService.getJavaParsedDetails(javaParseRequest); return ResponseEntity.accepted().body("Request to parse the java application is being processed"); } + + @GetMapping("get-parse-status") + public ResponseEntity getParseStatus(@RequestParam String id){ + return javaParserModuleService.getParseStatusDetails(id); + } } diff --git a/src/main/java/com/olympus/apollo/feign/services/JavaParserModuleService.java b/src/main/java/com/olympus/apollo/feign/services/JavaParserModuleService.java index 25a7579..10058ac 100644 --- a/src/main/java/com/olympus/apollo/feign/services/JavaParserModuleService.java +++ b/src/main/java/com/olympus/apollo/feign/services/JavaParserModuleService.java @@ -1,8 +1,10 @@ package com.olympus.apollo.feign.services; +import com.olympus.apollo.models.ParseProcess; import com.olympus.feign.JavaParserModule; import com.olympus.dto.JavaParseRequest; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.ResponseEntity; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -13,8 +15,12 @@ public class JavaParserModuleService { @Autowired private JavaParserModule javaParserModule; - @Async + public void getJavaParsedDetails(JavaParseRequest javaParseRequest){ CompletableFuture.completedFuture(javaParserModule.getJavaParsedDetails(javaParseRequest)); } + + public ResponseEntity getParseStatusDetails(String parseId){ + return javaParserModule.getParseStatus(parseId); + } } diff --git a/src/main/java/com/olympus/apollo/models/KSGitInfo.java b/src/main/java/com/olympus/apollo/models/KSGitInfo.java index e4e30bc..3b4a8f1 100644 --- a/src/main/java/com/olympus/apollo/models/KSGitInfo.java +++ b/src/main/java/com/olympus/apollo/models/KSGitInfo.java @@ -30,4 +30,5 @@ public class KSGitInfo { private String parseStatus; private String reverseEngineeringStatus; private String codeType; + private String parseId; } diff --git a/src/main/java/com/olympus/apollo/models/ParseProcess.java b/src/main/java/com/olympus/apollo/models/ParseProcess.java new file mode 100644 index 0000000..4b2a7ec --- /dev/null +++ b/src/main/java/com/olympus/apollo/models/ParseProcess.java @@ -0,0 +1,42 @@ +package com.olympus.apollo.models; + +import lombok.Getter; +import lombok.Setter; +import org.springframework.data.annotation.Id; +import org.springframework.data.mongodb.core.mapping.Document; + +import java.util.Date; + +@Document(collection = "parse_process") +@Getter +@Setter +public class ParseProcess { + + public ParseProcess(String applicationName) { + this.applicationName = applicationName; + this.status = "IN_PROGRESS"; + this.parsedFiles = 0; + this.startDate = new Date(); + } + + @Id + private String id; + + private String repositoryId; + + private String applicationName; + + private Integer totalFiles; + + private Integer parsedFiles; + + private String currentFile; + + private Date startDate; + + private Date endDate; + + private String status; + + +}