This is an automated email from the ASF dual-hosted git repository.

dimuthuupe pushed a commit to branch agent-framewok-refactoring
in repository https://gitbox.apache.org/repos/asf/airavata.git

commit 7781882abc4655fa0761d347871cef9e2d4ca407
Author: Dimuthu Wannipurage <[email protected]>
AuthorDate: Mon Sep 16 17:00:04 2024 -0400

    Refactoring agent service and adding db connection
---
 .../{connection-service => agent-service}/pom.xml  |  23 +++++--
 .../main/assembly/agent-service-bin-assembly.xml}  |   2 +-
 .../service/AgentServiceApplication.java}          |   6 +-
 .../agent/connection/service/UserContext.java      |   0
 .../service/config/AuthzTokenFilter.java           |   0
 .../service/config/ClusterApplicationConfig.java   |   0
 .../service/controllers/AgentController.java       |  24 +++----
 .../service/controllers/ExperimentController.java  |  16 ++---
 .../service/db/entity/AgentDeploymentInfo.java     |  59 ++++++++++++++++
 .../service/db/entity/AgentExecution.java          |  48 +++++++++++++
 .../service/db/entity/AgentExecutionStatus.java    |  76 +++++++++++++++++++++
 .../service/db/repo/AgentDeploymentInfoRepo.java   |   9 +++
 .../service/db/repo/AgentExecutionRepo.java        |   9 +++
 .../service/db/repo/AgentExecutionStatusRepo.java  |   9 +++
 .../service/handlers/AgentConnectionHandler.java}  |   6 +-
 .../service/handlers/AgentManagementHandler.java}  |   6 +-
 .../connection/service/handlers/FuseFSHandler.java |   0
 .../connection/service/models/AgentCommandAck.java |   0
 .../service/models/AgentCommandRequest.java        |   0
 .../service/models/AgentCommandResponse.java       |   0
 .../service/models/AgentInfoResponse.java          |   0
 .../connection/service/models/AgentTunnelAck.java  |   0
 .../service/models/AgentTunnelCreationRequest.java |   0
 .../connection/service/models/DirectoryInfo.java   |   0
 .../service/models/ExperimentStorageResponse.java  |   0
 .../agent/connection/service/models/FileInfo.java  |   0
 .../service/models/JupyterExecutionAck.java        |   0
 .../service/models/JupyterExecutionRequest.java    |   0
 .../service/models/JupyterExecutionResponse.java   |   0
 .../service/models/LaunchAgentRequest.java         |   0
 .../service/models/LaunchAgentResponse.java        |   0
 .../service/models/TerminateAgentResponse.java     |   0
 .../service/services/AiravataFileService.java      |   0
 .../service/services/AiravataService.java          |   0
 .../src/main/proto/agent-communication.proto       |   0
 .../src/main/proto/airavata-fuse.proto             |   0
 .../src/main/resources/application.yml             |  37 ++++++++++
 .../distribution/bin/connection-service-daemon.sh  |   0
 .../distribution/bin/connection-service.sh         |   0
 .../src/main/resources/distribution/bin/setenv.sh  |   0
 .../resources/distribution/conf/application.yml    |   2 +-
 .../resources/distribution/conf/truststore.jks     | Bin
 .../src/main/resources/truststore.jks              | Bin
 .../src/main/resources/application.yml             |  19 ------
 modules/agent-framework/pom.xml                    |   2 +-
 45 files changed, 298 insertions(+), 55 deletions(-)

diff --git a/modules/agent-framework/connection-service/pom.xml 
b/modules/agent-framework/agent-service/pom.xml
similarity index 87%
rename from modules/agent-framework/connection-service/pom.xml
rename to modules/agent-framework/agent-service/pom.xml
index 619c872692..167d08871b 100644
--- a/modules/agent-framework/connection-service/pom.xml
+++ b/modules/agent-framework/agent-service/pom.xml
@@ -9,7 +9,7 @@
         <version>0.21-SNAPSHOT</version>
     </parent>
 
-    <artifactId>connection-service</artifactId>
+    <artifactId>agent-service</artifactId>
 
     <properties>
         <maven.compiler.source>11</maven.compiler.source>
@@ -24,7 +24,7 @@
         <protobuf.version>3.23.4</protobuf.version>
         <protobuf-plugin.version>0.6.1</protobuf-plugin.version>
         <grpc.version>1.63.0</grpc.version>
-        
<connection.service.dist.name>Connection-Service-0.01</connection.service.dist.name>
+        <agent.service.dist.name>Agent-Service-0.01</agent.service.dist.name>
     </properties>
 
     <dependencyManagement>
@@ -40,6 +40,11 @@
     </dependencyManagement>
 
     <dependencies>
+        <dependency>
+            <groupId>org.mariadb.jdbc</groupId>
+            <artifactId>mariadb-java-client</artifactId>
+            <version>1.5.7</version>
+        </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
@@ -50,6 +55,16 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-data-jpa</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.logging.log4j</groupId>
+                    <artifactId>log4j-to-slf4j</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
         <dependency>
             <groupId>io.grpc</groupId>
             <artifactId>grpc-stub</artifactId>
@@ -105,9 +120,9 @@
                         </goals>
                         <configuration>
                             <tarLongFileMode>posix</tarLongFileMode>
-                            
<finalName>${connection.service.dist.name}</finalName>
+                            <finalName>${agent.service.dist.name}</finalName>
                             <descriptors>
-                                
<descriptor>src/main/assembly/connection-service-bin-assembly.xml</descriptor>
+                                
<descriptor>src/main/assembly/agent-service-bin-assembly.xml</descriptor>
                             </descriptors>
                             <attach>false</attach>
                         </configuration>
diff --git 
a/modules/agent-framework/connection-service/src/main/assembly/connection-service-bin-assembly.xml
 
b/modules/agent-framework/agent-service/src/main/assembly/agent-service-bin-assembly.xml
similarity index 97%
rename from 
modules/agent-framework/connection-service/src/main/assembly/connection-service-bin-assembly.xml
rename to 
modules/agent-framework/agent-service/src/main/assembly/agent-service-bin-assembly.xml
index 38d8f1c565..0d47334a4b 100644
--- 
a/modules/agent-framework/connection-service/src/main/assembly/connection-service-bin-assembly.xml
+++ 
b/modules/agent-framework/agent-service/src/main/assembly/agent-service-bin-assembly.xml
@@ -38,7 +38,7 @@
 <assembly>
     <id>bin</id>
     <includeBaseDirectory>true</includeBaseDirectory>
-    <baseDirectory>${connection.service.dist.name}</baseDirectory>
+    <baseDirectory>${agent.service.dist.name}</baseDirectory>
     <formats>
         <format>tar.gz</format>
         <format>zip</format>
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/ConnectionServiceApplication.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/AgentServiceApplication.java
similarity index 54%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/ConnectionServiceApplication.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/AgentServiceApplication.java
index b76217a554..a001f961a5 100644
--- 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/ConnectionServiceApplication.java
+++ 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/AgentServiceApplication.java
@@ -2,10 +2,12 @@ package org.apache.airavata.agent.connection.service;
 
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
 
 @SpringBootApplication
-public class ConnectionServiceApplication {
+@EnableJpaRepositories()
+public class AgentServiceApplication {
     public static void main(String[] args) {
-        SpringApplication.run(ConnectionServiceApplication.class, args);
+        SpringApplication.run(AgentServiceApplication.class, args);
     }
 }
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/UserContext.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/UserContext.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/UserContext.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/UserContext.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/config/AuthzTokenFilter.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/config/AuthzTokenFilter.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/config/AuthzTokenFilter.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/config/AuthzTokenFilter.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/config/ClusterApplicationConfig.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/config/ClusterApplicationConfig.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/config/ClusterApplicationConfig.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/config/ClusterApplicationConfig.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/AgentController.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/AgentController.java
similarity index 69%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/AgentController.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/AgentController.java
index 19a35fe0e6..aaa0f30894 100644
--- 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/AgentController.java
+++ 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/AgentController.java
@@ -1,6 +1,6 @@
 package org.apache.airavata.agent.connection.service.controllers;
 
-import org.apache.airavata.agent.connection.service.handlers.AgentHandler;
+import 
org.apache.airavata.agent.connection.service.handlers.AgentConnectionHandler;
 import org.apache.airavata.agent.connection.service.models.*;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -16,27 +16,27 @@ public class AgentController {
 
     private final static Logger logger = 
LoggerFactory.getLogger(AgentController.class);
 
-    private AgentHandler agentHandler;
+    private AgentConnectionHandler agentConnectionHandler;
 
-    public AgentController(AgentHandler agentHandler) {
-        this.agentHandler = agentHandler;
+    public AgentController(AgentConnectionHandler agentConnectionHandler) {
+        this.agentConnectionHandler = agentConnectionHandler;
     }
 
     @GetMapping("/{agentId}")
     public ResponseEntity<AgentInfoResponse> 
getAgentInfo(@PathVariable("agentId") String agentId) {
-        return ResponseEntity.accepted().body(agentHandler.isAgentUp(agentId));
+        return 
ResponseEntity.accepted().body(agentConnectionHandler.isAgentUp(agentId));
     }
 
     @PostMapping("/tunnel")
     public ResponseEntity<AgentTunnelAck> runTunnelCreationOnAgent(@Valid 
@RequestBody AgentTunnelCreationRequest tunnelRequest) {
-        return 
ResponseEntity.accepted().body(agentHandler.runTunnelOnAgent(tunnelRequest));
+        return 
ResponseEntity.accepted().body(agentConnectionHandler.runTunnelOnAgent(tunnelRequest));
     }
 
     @PostMapping("/executecommandrequest")
     public ResponseEntity<AgentCommandAck> runCommandOnAgent(@Valid 
@RequestBody AgentCommandRequest commandRequest) {
         logger.info("Received command request to run on agent {}", 
commandRequest.getAgentId());
-        if (agentHandler.isAgentUp(commandRequest.getAgentId()).isAgentUp()) {
-            return 
ResponseEntity.accepted().body(agentHandler.runCommandOnAgent(commandRequest));
+        if 
(agentConnectionHandler.isAgentUp(commandRequest.getAgentId()).isAgentUp()) {
+            return 
ResponseEntity.accepted().body(agentConnectionHandler.runCommandOnAgent(commandRequest));
         } else {
             logger.warn("No agent is available to run on agent {}", 
commandRequest.getAgentId());
             AgentCommandAck ack = new AgentCommandAck();
@@ -47,14 +47,14 @@ public class AgentController {
 
     @GetMapping("/executecommandresponse/{executionId}")
     public ResponseEntity<AgentCommandResponse> 
getExecutionResponse(@PathVariable("executionId") String executionId) {
-        return 
ResponseEntity.accepted().body(agentHandler.getAgentCommandResponse(executionId));
+        return 
ResponseEntity.accepted().body(agentConnectionHandler.getAgentCommandResponse(executionId));
     }
 
     @PostMapping("/executejupyterrequest")
     public ResponseEntity<JupyterExecutionAck> runJupyterOnAgent(@Valid 
@RequestBody JupyterExecutionRequest executionRequest) {
         logger.info("Received jupyter execution request to run on agent {}", 
executionRequest.getAgentId());
-        if (agentHandler.isAgentUp(executionRequest.getAgentId()).isAgentUp()) 
{
-            return 
ResponseEntity.accepted().body(agentHandler.runJupyterOnAgent(executionRequest));
+        if 
(agentConnectionHandler.isAgentUp(executionRequest.getAgentId()).isAgentUp()) {
+            return 
ResponseEntity.accepted().body(agentConnectionHandler.runJupyterOnAgent(executionRequest));
         } else {
             logger.warn("No agent is available to run on agent {}", 
executionRequest.getAgentId());
             JupyterExecutionAck ack = new JupyterExecutionAck();
@@ -65,7 +65,7 @@ public class AgentController {
 
     @GetMapping("/executejupyterresponse/{executionId}")
     public ResponseEntity<JupyterExecutionResponse> 
getJupyterResponse(@PathVariable("executionId") String executionId) {
-        return 
ResponseEntity.accepted().body(agentHandler.getJupyterExecutionResponse(executionId));
+        return 
ResponseEntity.accepted().body(agentConnectionHandler.getJupyterExecutionResponse(executionId));
     }
 
 }
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/ExperimentController.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/ExperimentController.java
similarity index 67%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/ExperimentController.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/ExperimentController.java
index 00ea9481db..2e59fac479 100644
--- 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/ExperimentController.java
+++ 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/ExperimentController.java
@@ -1,6 +1,6 @@
 package org.apache.airavata.agent.connection.service.controllers;
 
-import org.apache.airavata.agent.connection.service.handlers.ExperimentHandler;
+import 
org.apache.airavata.agent.connection.service.handlers.AgentManagementHandler;
 import org.apache.airavata.agent.connection.service.models.LaunchAgentRequest;
 import org.apache.airavata.agent.connection.service.models.LaunchAgentResponse;
 import 
org.apache.airavata.agent.connection.service.models.TerminateAgentResponse;
@@ -8,34 +8,32 @@ import org.apache.airavata.model.experiment.ExperimentModel;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.*;
-import org.springframework.web.servlet.support.ServletUriComponentsBuilder;
 
 import javax.validation.Valid;
-import java.net.URI;
 
 @RestController
 @RequestMapping("/api/v1/exp")
 public class ExperimentController {
 
-    private final ExperimentHandler experimentHandler;
+    private final AgentManagementHandler agentManagementHandler;
 
-    public ExperimentController(ExperimentHandler experimentHandler) {
-        this.experimentHandler = experimentHandler;
+    public ExperimentController(AgentManagementHandler agentManagementHandler) 
{
+        this.agentManagementHandler = agentManagementHandler;
     }
 
     @GetMapping(value = "/{expId}", produces = 
MediaType.APPLICATION_JSON_VALUE)
     public ResponseEntity<ExperimentModel> 
getExperiment(@PathVariable("expId") String expId) {
-        return ResponseEntity.ok(experimentHandler.getExperiment(expId));
+        return ResponseEntity.ok(agentManagementHandler.getExperiment(expId));
     }
 
     @PostMapping(value = "/launch", consumes = 
MediaType.APPLICATION_JSON_VALUE)
     public ResponseEntity<LaunchAgentResponse> 
createAndLaunchExperiment(@Valid @RequestBody LaunchAgentRequest request) {
-        LaunchAgentResponse agentResponse = 
experimentHandler.createAndLaunchExperiment(request);
+        LaunchAgentResponse agentResponse = 
agentManagementHandler.createAndLaunchExperiment(request);
         return ResponseEntity.ok(agentResponse);
     }
 
     @GetMapping(value = "/terminate/{expId}", produces = 
MediaType.APPLICATION_JSON_VALUE)
     public ResponseEntity<TerminateAgentResponse> 
terminateExperiment(@PathVariable("expId") String expId) {
-        return ResponseEntity.ok(experimentHandler.terminateExperiment(expId));
+        return 
ResponseEntity.ok(agentManagementHandler.terminateExperiment(expId));
     }
 }
diff --git 
a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentDeploymentInfo.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentDeploymentInfo.java
new file mode 100644
index 0000000000..13e4c98e3c
--- /dev/null
+++ 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentDeploymentInfo.java
@@ -0,0 +1,59 @@
+package org.apache.airavata.agent.connection.service.db.entity;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
+import org.hibernate.annotations.GenericGenerator;
+
+
+@Entity(name = "AGENT_DEPLOYMENT_INFO")
+public class AgentDeploymentInfo {
+
+    @Id
+    @Column(name = "AGENT_DEPLOYMENT_INFO_ID")
+    @GeneratedValue(generator = "uuid")
+    @GenericGenerator(name = "uuid", strategy = "uuid2")
+    private String id;
+
+    @Column(unique = true, name = "USER_FRINEDLY_NAME")
+    private String userFriendlyName;
+
+    @Column(name= "COMPUTE_RESOURCE_ID")
+    private String computeResourceId;
+
+    @Column(name ="AGENT_APPLICATION_ID")
+    private String agentApplicationId;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getUserFriendlyName() {
+        return userFriendlyName;
+    }
+
+    public void setUserFriendlyName(String userFriendlyName) {
+        this.userFriendlyName = userFriendlyName;
+    }
+
+    public String getComputeResourceId() {
+        return computeResourceId;
+    }
+
+    public void setComputeResourceId(String computeResourceId) {
+        this.computeResourceId = computeResourceId;
+    }
+
+    public String getAgentApplicationId() {
+        return agentApplicationId;
+    }
+
+    public void setAgentApplicationId(String agentApplicationId) {
+        this.agentApplicationId = agentApplicationId;
+    }
+}
diff --git 
a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentExecution.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentExecution.java
new file mode 100644
index 0000000000..c80865d9f3
--- /dev/null
+++ 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentExecution.java
@@ -0,0 +1,48 @@
+package org.apache.airavata.agent.connection.service.db.entity;
+
+import org.hibernate.annotations.GenericGenerator;
+
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
+
+
+@Entity(name = "AGENT_EXECUTION")
+public class AgentExecution {
+    @Id
+    @GeneratedValue(generator = "uuid")
+    @GenericGenerator(name = "uuid", strategy = "uuid2")
+    @Column(name = "AGENT_EXECUTION_ID")
+    private String id;
+
+    @Column(name = "AGENT_ID")
+    private String agentId;
+
+    @Column(name = "AIRAVATA_EXPERIMENT_ID")
+    private String airavataExperimentId;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getAgentId() {
+        return agentId;
+    }
+
+    public void setAgentId(String agentId) {
+        this.agentId = agentId;
+    }
+
+    public String getAiravataExperimentId() {
+        return airavataExperimentId;
+    }
+
+    public void setAiravataExperimentId(String airavataExperimentId) {
+        this.airavataExperimentId = airavataExperimentId;
+    }
+}
diff --git 
a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentExecutionStatus.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentExecutionStatus.java
new file mode 100644
index 0000000000..e69c028874
--- /dev/null
+++ 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentExecutionStatus.java
@@ -0,0 +1,76 @@
+package org.apache.airavata.agent.connection.service.db.entity;
+
+import jakarta.persistence.*;
+import org.hibernate.annotations.GenericGenerator;
+
+
+@Entity(name = "AGENT_EXECUTION_STATUS")
+public class AgentExecutionStatus {
+
+    public static enum ExecutionStatus {
+        SUBMITTED_TO_CLUSTER,
+        FAILED,
+        CONNECTED,
+        CONNECTION_BROKEN,
+        TERMINATING,
+        TERMINATED,
+    }
+
+    @Id
+    @GeneratedValue(generator = "uuid")
+    @GenericGenerator(name = "uuid", strategy = "uuid2")
+    @Column(name = "AGENT_EXECUTION_STATUS_ID")
+    private String id;
+
+    @ManyToOne(targetEntity = AgentExecution.class, fetch = FetchType.EAGER, 
cascade = CascadeType.ALL)
+    private AgentExecution agentExecution;
+
+    @Column(name = "UPDATED_TIME")
+    private long updateTime;
+
+    @Column(name = "STATUS")
+    private ExecutionStatus status;
+
+    @Column(name = "ADDITIONAL_INFO", length = 2000)
+    private String additionalInfo;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public AgentExecution getAgentExecution() {
+        return agentExecution;
+    }
+
+    public void setAgentExecution(AgentExecution agentExecution) {
+        this.agentExecution = agentExecution;
+    }
+
+    public long getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(long updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public ExecutionStatus getStatus() {
+        return status;
+    }
+
+    public void setStatus(ExecutionStatus status) {
+        this.status = status;
+    }
+
+    public String getAdditionalInfo() {
+        return additionalInfo;
+    }
+
+    public void setAdditionalInfo(String additionalInfo) {
+        this.additionalInfo = additionalInfo;
+    }
+}
diff --git 
a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/repo/AgentDeploymentInfoRepo.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/repo/AgentDeploymentInfoRepo.java
new file mode 100644
index 0000000000..4dd7cfd551
--- /dev/null
+++ 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/repo/AgentDeploymentInfoRepo.java
@@ -0,0 +1,9 @@
+package org.apache.airavata.agent.connection.service.db.repo;
+
+import 
org.apache.airavata.agent.connection.service.db.entity.AgentDeploymentInfo;
+import org.springframework.data.repository.CrudRepository;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface AgentDeploymentInfoRepo extends 
CrudRepository<AgentDeploymentInfo, String> {
+}
diff --git 
a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/repo/AgentExecutionRepo.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/repo/AgentExecutionRepo.java
new file mode 100644
index 0000000000..99cee93c2a
--- /dev/null
+++ 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/repo/AgentExecutionRepo.java
@@ -0,0 +1,9 @@
+package org.apache.airavata.agent.connection.service.db.repo;
+
+import org.apache.airavata.agent.connection.service.db.entity.AgentExecution;
+import org.springframework.data.repository.CrudRepository;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface AgentExecutionRepo extends CrudRepository<AgentExecution, 
String> {
+}
diff --git 
a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/repo/AgentExecutionStatusRepo.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/repo/AgentExecutionStatusRepo.java
new file mode 100644
index 0000000000..c7e605f46f
--- /dev/null
+++ 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/repo/AgentExecutionStatusRepo.java
@@ -0,0 +1,9 @@
+package org.apache.airavata.agent.connection.service.db.repo;
+
+import 
org.apache.airavata.agent.connection.service.db.entity.AgentExecutionStatus;
+import org.springframework.data.repository.CrudRepository;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface AgentExecutionStatusRepo extends 
CrudRepository<AgentExecutionStatus, String> {
+}
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentHandler.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentConnectionHandler.java
similarity index 98%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentHandler.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentConnectionHandler.java
index fc9138c840..199cff852a 100644
--- 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentHandler.java
+++ 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentConnectionHandler.java
@@ -18,9 +18,9 @@ import java.util.concurrent.ConcurrentHashMap;
 
 
 @GrpcService
-public class AgentHandler extends 
AgentCommunicationServiceGrpc.AgentCommunicationServiceImplBase {
+public class AgentConnectionHandler extends 
AgentCommunicationServiceGrpc.AgentCommunicationServiceImplBase {
 
-    private final static Logger logger = 
LoggerFactory.getLogger(AgentHandler.class);
+    private final static Logger logger = 
LoggerFactory.getLogger(AgentConnectionHandler.class);
 
     // <streamId, StreamObserver>
     private final Map<String, StreamObserver<ServerMessage>> ACTIVE_STREAMS = 
new ConcurrentHashMap<>();
@@ -33,7 +33,7 @@ public class AgentHandler extends 
AgentCommunicationServiceGrpc.AgentCommunicati
 
     private final AiravataFileService airavataFileService;
 
-    public AgentHandler(AiravataFileService airavataFileService) {
+    public AgentConnectionHandler(AiravataFileService airavataFileService) {
         this.airavataFileService = airavataFileService;
     }
 
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/ExperimentHandler.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentManagementHandler.java
similarity index 97%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/ExperimentHandler.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentManagementHandler.java
index c4f2a37d94..f50fb4f9d8 100644
--- 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/ExperimentHandler.java
+++ 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentManagementHandler.java
@@ -25,16 +25,16 @@ import java.util.UUID;
 import java.util.stream.Collectors;
 
 @Service
-public class ExperimentHandler {
+public class AgentManagementHandler {
 
-    private final static Logger LOGGER = 
LoggerFactory.getLogger(ExperimentHandler.class);
+    private final static Logger LOGGER = 
LoggerFactory.getLogger(AgentManagementHandler.class);
     private final AiravataService airavataService;
     private final ClusterApplicationConfig clusterApplicationConfig;
 
     @Value("${airavata.storageResourceId}")
     private String storageResourceId;
 
-    public ExperimentHandler(AiravataService airavataService, 
ClusterApplicationConfig clusterApplicationConfig) {
+    public AgentManagementHandler(AiravataService airavataService, 
ClusterApplicationConfig clusterApplicationConfig) {
         this.airavataService = airavataService;
         this.clusterApplicationConfig = clusterApplicationConfig;
     }
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/FuseFSHandler.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/FuseFSHandler.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/FuseFSHandler.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/FuseFSHandler.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandAck.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandAck.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandAck.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandAck.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandRequest.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandRequest.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandRequest.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandRequest.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandResponse.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandResponse.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandResponse.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentCommandResponse.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentInfoResponse.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentInfoResponse.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentInfoResponse.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentInfoResponse.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentTunnelAck.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentTunnelAck.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentTunnelAck.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentTunnelAck.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentTunnelCreationRequest.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentTunnelCreationRequest.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentTunnelCreationRequest.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentTunnelCreationRequest.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/DirectoryInfo.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/DirectoryInfo.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/DirectoryInfo.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/DirectoryInfo.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/ExperimentStorageResponse.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/ExperimentStorageResponse.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/ExperimentStorageResponse.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/ExperimentStorageResponse.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/FileInfo.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/FileInfo.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/FileInfo.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/FileInfo.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionAck.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionAck.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionAck.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionAck.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionRequest.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionRequest.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionRequest.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionRequest.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionResponse.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionResponse.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionResponse.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/JupyterExecutionResponse.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/LaunchAgentRequest.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/LaunchAgentRequest.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/LaunchAgentRequest.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/LaunchAgentRequest.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/LaunchAgentResponse.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/LaunchAgentResponse.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/LaunchAgentResponse.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/LaunchAgentResponse.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/TerminateAgentResponse.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/TerminateAgentResponse.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/models/TerminateAgentResponse.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/TerminateAgentResponse.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataFileService.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataFileService.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataFileService.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataFileService.java
diff --git 
a/modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java
 
b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java
rename to 
modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java
diff --git 
a/modules/agent-framework/connection-service/src/main/proto/agent-communication.proto
 
b/modules/agent-framework/agent-service/src/main/proto/agent-communication.proto
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/proto/agent-communication.proto
rename to 
modules/agent-framework/agent-service/src/main/proto/agent-communication.proto
diff --git 
a/modules/agent-framework/connection-service/src/main/proto/airavata-fuse.proto 
b/modules/agent-framework/agent-service/src/main/proto/airavata-fuse.proto
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/proto/airavata-fuse.proto
rename to 
modules/agent-framework/agent-service/src/main/proto/airavata-fuse.proto
diff --git 
a/modules/agent-framework/agent-service/src/main/resources/application.yml 
b/modules/agent-framework/agent-service/src/main/resources/application.yml
new file mode 100644
index 0000000000..6f810f668b
--- /dev/null
+++ b/modules/agent-framework/agent-service/src/main/resources/application.yml
@@ -0,0 +1,37 @@
+grpc:
+  server:
+    port: 19900
+
+server:
+  port: 18880
+  address: 0.0.0.0
+
+spring:
+  servlet:
+    multipart:
+      max-file-size: 200MB
+      max-request-size: 200MB
+  datasource:
+    url: "jdbc:mariadb://localhost:13306/app_catalog"
+    username: "root"
+    password: "123456"
+    driver-class-name: org.mariadb.jdbc.Driver
+    hikari:
+      pool-name: AppCatalogPool
+      leak-detection-threshold: 20000
+  jpa:
+    hibernate:
+      ddl-auto: create
+    open-in-view: false
+
+airavata:
+  server:
+    url: scigap02.sciencegateways.iu.edu
+    port: 9930
+    truststore:
+      path: CHANGE_ME
+  storageResourceId: gf4.ucs.indiana.edu_61552681-96f0-462a-a36c-a62a010bffc6
+  cluster:
+    applicationInterfaceId:
+      expanse: AiravataAgent_f4313e4d-20c2-4bf6-bff1-8aa0f0b0c1d6
+      jetstream: UPDATE
diff --git 
a/modules/agent-framework/connection-service/src/main/resources/distribution/bin/connection-service-daemon.sh
 
b/modules/agent-framework/agent-service/src/main/resources/distribution/bin/connection-service-daemon.sh
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/resources/distribution/bin/connection-service-daemon.sh
rename to 
modules/agent-framework/agent-service/src/main/resources/distribution/bin/connection-service-daemon.sh
diff --git 
a/modules/agent-framework/connection-service/src/main/resources/distribution/bin/connection-service.sh
 
b/modules/agent-framework/agent-service/src/main/resources/distribution/bin/connection-service.sh
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/resources/distribution/bin/connection-service.sh
rename to 
modules/agent-framework/agent-service/src/main/resources/distribution/bin/connection-service.sh
diff --git 
a/modules/agent-framework/connection-service/src/main/resources/distribution/bin/setenv.sh
 
b/modules/agent-framework/agent-service/src/main/resources/distribution/bin/setenv.sh
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/resources/distribution/bin/setenv.sh
rename to 
modules/agent-framework/agent-service/src/main/resources/distribution/bin/setenv.sh
diff --git 
a/modules/agent-framework/connection-service/src/main/resources/distribution/conf/application.yml
 
b/modules/agent-framework/agent-service/src/main/resources/distribution/conf/application.yml
similarity index 88%
rename from 
modules/agent-framework/connection-service/src/main/resources/distribution/conf/application.yml
rename to 
modules/agent-framework/agent-service/src/main/resources/distribution/conf/application.yml
index b7f87714ed..35e899b31e 100644
--- 
a/modules/agent-framework/connection-service/src/main/resources/distribution/conf/application.yml
+++ 
b/modules/agent-framework/agent-service/src/main/resources/distribution/conf/application.yml
@@ -11,7 +11,7 @@ airavata:
     url: scigap02.sciencegateways.iu.edu
     port: 9930
     truststore:
-      path: 
/Users/lahiruj/Projects/airavata/lahiruj/modules/agent-framework/connection-service/src/main/resources/trustore.jks
+      path: 
/Users/lahiruj/Projects/airavata/lahiruj/modules/agent-framework/agent-service/src/main/resources/trustore.jks
   storageResourceId: gf4.ucs.indiana.edu_61552681-96f0-462a-a36c-a62a010bffc6
   cluster:
     applicationInterfaceId:
diff --git 
a/modules/agent-framework/connection-service/src/main/resources/distribution/conf/truststore.jks
 
b/modules/agent-framework/agent-service/src/main/resources/distribution/conf/truststore.jks
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/resources/distribution/conf/truststore.jks
rename to 
modules/agent-framework/agent-service/src/main/resources/distribution/conf/truststore.jks
diff --git 
a/modules/agent-framework/connection-service/src/main/resources/truststore.jks 
b/modules/agent-framework/agent-service/src/main/resources/truststore.jks
similarity index 100%
rename from 
modules/agent-framework/connection-service/src/main/resources/truststore.jks
rename to 
modules/agent-framework/agent-service/src/main/resources/truststore.jks
diff --git 
a/modules/agent-framework/connection-service/src/main/resources/application.yml 
b/modules/agent-framework/connection-service/src/main/resources/application.yml
deleted file mode 100644
index f995f7045f..0000000000
--- 
a/modules/agent-framework/connection-service/src/main/resources/application.yml
+++ /dev/null
@@ -1,19 +0,0 @@
-grpc:
-  server:
-    port: 19900
-
-server:
-  port: 18880
-  address: 0.0.0.0
-
-airavata:
-  server:
-    url: scigap02.sciencegateways.iu.edu
-    port: 9930
-    truststore:
-      path: CHANGE_ME
-  storageResourceId: gf4.ucs.indiana.edu_61552681-96f0-462a-a36c-a62a010bffc6
-  cluster:
-    applicationInterfaceId:
-      expanse: AiravataAgent_f4313e4d-20c2-4bf6-bff1-8aa0f0b0c1d6
-      jetstream: UPDATE
diff --git a/modules/agent-framework/pom.xml b/modules/agent-framework/pom.xml
index d07570f03b..0d19265b9c 100644
--- a/modules/agent-framework/pom.xml
+++ b/modules/agent-framework/pom.xml
@@ -13,7 +13,7 @@
     <artifactId>agent-framework</artifactId>
     <packaging>pom</packaging>
     <modules>
-        <module>connection-service</module>
+        <module>agent-service</module>
     </modules>
 
     <properties>


Reply via email to