This is an automated email from the ASF dual-hosted git repository. yasith pushed a commit to branch feat/grpc-armeria-migration in repository https://gitbox.apache.org/repos/asf/airavata.git
commit 0c6f05ec276d67af63687b4a51b75776fa311574 Author: yasithdev <[email protected]> AuthorDate: Wed Apr 1 13:32:30 2026 -0400 feat: expand research-service with experiments, projects, apps, parsers, notifications --- airavata-api/agent-service/pom.xml | 5 +++++ .../service/services/AiravataService.java | 6 +++--- airavata-api/research-service/pom.xml | 24 ++++++++++++++++++++++ .../service/ApplicationCatalogService.java | 2 +- .../research}/service/ExperimentService.java | 6 +++++- .../research}/service/NotificationService.java | 4 +++- .../airavata/research}/service/ParserService.java | 2 +- .../airavata/research}/service/ProjectService.java | 6 +++++- .../service/ApplicationCatalogServiceTest.java | 2 +- .../research}/service/ExperimentServiceTest.java | 5 ++++- .../research}/service/NotificationServiceTest.java | 4 +++- .../research}/service/ParserServiceTest.java | 2 +- .../research}/service/ProjectServiceTest.java | 5 ++++- .../server/config/ServiceWiringConfig.java | 2 +- .../services/ApplicationCatalogGrpcService.java | 2 +- .../grpc/services/ExperimentGrpcService.java | 2 +- .../grpc/services/NotificationGrpcService.java | 2 +- .../server/grpc/services/ParserGrpcService.java | 2 +- .../server/grpc/services/ProjectGrpcService.java | 2 +- 19 files changed, 66 insertions(+), 19 deletions(-) diff --git a/airavata-api/agent-service/pom.xml b/airavata-api/agent-service/pom.xml index 6915dadc7f..fd9316f392 100644 --- a/airavata-api/agent-service/pom.xml +++ b/airavata-api/agent-service/pom.xml @@ -124,6 +124,11 @@ under the License. <artifactId>compute-service</artifactId> <version>${project.version}</version> </dependency> + <dependency> + <groupId>org.apache.airavata</groupId> + <artifactId>research-service</artifactId> + <version>${project.version}</version> + </dependency> <dependency> <groupId>org.apache.airavata</groupId> <artifactId>airavata-api</artifactId> diff --git a/airavata-api/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java b/airavata-api/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java index 400c4ff767..4a2076f0a6 100644 --- a/airavata-api/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java +++ b/airavata-api/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java @@ -27,10 +27,10 @@ import java.util.Optional; import java.util.stream.Collectors; import java.util.stream.Stream; import org.apache.airavata.common.security.UserContext; -import org.apache.airavata.compute.service.ApplicationCatalogService; import org.apache.airavata.compute.service.GroupResourceProfileService; -import org.apache.airavata.execution.service.ExperimentService; -import org.apache.airavata.execution.service.ProjectService; +import org.apache.airavata.research.service.ApplicationCatalogService; +import org.apache.airavata.research.service.ExperimentService; +import org.apache.airavata.research.service.ProjectService; import org.apache.airavata.execution.service.RequestContext; import org.apache.airavata.execution.service.ServiceException; import org.apache.airavata.model.appcatalog.groupresourceprofile.proto.GroupComputeResourcePreference; diff --git a/airavata-api/research-service/pom.xml b/airavata-api/research-service/pom.xml index e22b961894..57072953bf 100644 --- a/airavata-api/research-service/pom.xml +++ b/airavata-api/research-service/pom.xml @@ -142,6 +142,30 @@ under the License. </exclusion> </exclusions> </dependency> + <dependency> + <groupId>org.apache.airavata</groupId> + <artifactId>credential-service</artifactId> + <version>${project.version}</version> + </dependency> + + <!-- Test dependencies --> + <dependency> + <groupId>org.junit.jupiter</groupId> + <artifactId>junit-jupiter</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.mockito</groupId> + <artifactId>mockito-core</artifactId> + <version>5.23.0</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.mockito</groupId> + <artifactId>mockito-junit-jupiter</artifactId> + <version>5.23.0</version> + <scope>test</scope> + </dependency> </dependencies> <build> diff --git a/airavata-api/compute-service/src/main/java/org/apache/airavata/compute/service/ApplicationCatalogService.java b/airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ApplicationCatalogService.java similarity index 99% rename from airavata-api/compute-service/src/main/java/org/apache/airavata/compute/service/ApplicationCatalogService.java rename to airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ApplicationCatalogService.java index 3ec333518a..18b14c3fdc 100644 --- a/airavata-api/compute-service/src/main/java/org/apache/airavata/compute/service/ApplicationCatalogService.java +++ b/airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ApplicationCatalogService.java @@ -17,7 +17,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.airavata.compute.service; +package org.apache.airavata.research.service; import java.util.ArrayList; import java.util.List; diff --git a/airavata-api/src/main/java/org/apache/airavata/execution/service/ExperimentService.java b/airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ExperimentService.java similarity index 99% rename from airavata-api/src/main/java/org/apache/airavata/execution/service/ExperimentService.java rename to airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ExperimentService.java index 8df022bd13..72e7d58145 100644 --- a/airavata-api/src/main/java/org/apache/airavata/execution/service/ExperimentService.java +++ b/airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ExperimentService.java @@ -17,7 +17,11 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.airavata.execution.service; +package org.apache.airavata.research.service; +import org.apache.airavata.execution.service.RequestContext; +import org.apache.airavata.execution.service.ServiceException; +import org.apache.airavata.execution.service.ServiceNotFoundException; +import org.apache.airavata.execution.service.ServiceAuthorizationException; import java.util.ArrayList; import java.util.Comparator; diff --git a/airavata-api/src/main/java/org/apache/airavata/execution/service/NotificationService.java b/airavata-api/research-service/src/main/java/org/apache/airavata/research/service/NotificationService.java similarity index 94% rename from airavata-api/src/main/java/org/apache/airavata/execution/service/NotificationService.java rename to airavata-api/research-service/src/main/java/org/apache/airavata/research/service/NotificationService.java index c96f3e7aee..68c72febde 100644 --- a/airavata-api/src/main/java/org/apache/airavata/execution/service/NotificationService.java +++ b/airavata-api/research-service/src/main/java/org/apache/airavata/research/service/NotificationService.java @@ -17,7 +17,9 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.airavata.execution.service; +package org.apache.airavata.research.service; +import org.apache.airavata.execution.service.RequestContext; +import org.apache.airavata.execution.service.ServiceException; import java.util.List; import org.apache.airavata.execution.handler.RegistryServerHandler; diff --git a/airavata-api/compute-service/src/main/java/org/apache/airavata/compute/service/ParserService.java b/airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ParserService.java similarity index 99% rename from airavata-api/compute-service/src/main/java/org/apache/airavata/compute/service/ParserService.java rename to airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ParserService.java index 1d85f107b0..e567cd84ac 100644 --- a/airavata-api/compute-service/src/main/java/org/apache/airavata/compute/service/ParserService.java +++ b/airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ParserService.java @@ -17,7 +17,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.airavata.compute.service; +package org.apache.airavata.research.service; import java.util.List; import org.apache.airavata.execution.handler.RegistryServerHandler; diff --git a/airavata-api/src/main/java/org/apache/airavata/execution/service/ProjectService.java b/airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ProjectService.java similarity index 97% rename from airavata-api/src/main/java/org/apache/airavata/execution/service/ProjectService.java rename to airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ProjectService.java index 7621f7db20..fc2c9fa589 100644 --- a/airavata-api/src/main/java/org/apache/airavata/execution/service/ProjectService.java +++ b/airavata-api/research-service/src/main/java/org/apache/airavata/research/service/ProjectService.java @@ -17,7 +17,11 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.airavata.execution.service; +package org.apache.airavata.research.service; +import org.apache.airavata.execution.service.RequestContext; +import org.apache.airavata.execution.service.ServiceException; +import org.apache.airavata.execution.service.ServiceNotFoundException; +import org.apache.airavata.execution.service.ServiceAuthorizationException; import java.util.ArrayList; import java.util.Collections; diff --git a/airavata-api/compute-service/src/test/java/org/apache/airavata/compute/service/ApplicationCatalogServiceTest.java b/airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ApplicationCatalogServiceTest.java similarity index 99% rename from airavata-api/compute-service/src/test/java/org/apache/airavata/compute/service/ApplicationCatalogServiceTest.java rename to airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ApplicationCatalogServiceTest.java index 233c1205bd..df5e5e049a 100644 --- a/airavata-api/compute-service/src/test/java/org/apache/airavata/compute/service/ApplicationCatalogServiceTest.java +++ b/airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ApplicationCatalogServiceTest.java @@ -17,7 +17,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.airavata.compute.service; +package org.apache.airavata.research.service; import static org.junit.jupiter.api.Assertions.*; import static org.mockito.Mockito.*; diff --git a/airavata-api/src/test/java/org/apache/airavata/execution/service/ExperimentServiceTest.java b/airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ExperimentServiceTest.java similarity index 98% rename from airavata-api/src/test/java/org/apache/airavata/execution/service/ExperimentServiceTest.java rename to airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ExperimentServiceTest.java index fbf8ec8ee6..b34441c499 100644 --- a/airavata-api/src/test/java/org/apache/airavata/execution/service/ExperimentServiceTest.java +++ b/airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ExperimentServiceTest.java @@ -17,7 +17,10 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.airavata.execution.service; +package org.apache.airavata.research.service; +import org.apache.airavata.execution.service.RequestContext; +import org.apache.airavata.execution.service.ServiceException; +import org.apache.airavata.execution.service.ServiceAuthorizationException; import static org.junit.jupiter.api.Assertions.*; import static org.mockito.Mockito.*; diff --git a/airavata-api/src/test/java/org/apache/airavata/execution/service/NotificationServiceTest.java b/airavata-api/research-service/src/test/java/org/apache/airavata/research/service/NotificationServiceTest.java similarity index 96% rename from airavata-api/src/test/java/org/apache/airavata/execution/service/NotificationServiceTest.java rename to airavata-api/research-service/src/test/java/org/apache/airavata/research/service/NotificationServiceTest.java index d27cd48259..cb6d3a7b4c 100644 --- a/airavata-api/src/test/java/org/apache/airavata/execution/service/NotificationServiceTest.java +++ b/airavata-api/research-service/src/test/java/org/apache/airavata/research/service/NotificationServiceTest.java @@ -17,7 +17,9 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.airavata.execution.service; +package org.apache.airavata.research.service; +import org.apache.airavata.execution.service.RequestContext; +import org.apache.airavata.execution.service.ServiceException; import static org.junit.jupiter.api.Assertions.*; import static org.mockito.Mockito.*; diff --git a/airavata-api/compute-service/src/test/java/org/apache/airavata/compute/service/ParserServiceTest.java b/airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ParserServiceTest.java similarity index 99% rename from airavata-api/compute-service/src/test/java/org/apache/airavata/compute/service/ParserServiceTest.java rename to airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ParserServiceTest.java index 40ac5ff637..414ee21cc1 100644 --- a/airavata-api/compute-service/src/test/java/org/apache/airavata/compute/service/ParserServiceTest.java +++ b/airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ParserServiceTest.java @@ -17,7 +17,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.airavata.compute.service; +package org.apache.airavata.research.service; import static org.junit.jupiter.api.Assertions.*; import static org.mockito.Mockito.*; diff --git a/airavata-api/src/test/java/org/apache/airavata/execution/service/ProjectServiceTest.java b/airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ProjectServiceTest.java similarity index 95% rename from airavata-api/src/test/java/org/apache/airavata/execution/service/ProjectServiceTest.java rename to airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ProjectServiceTest.java index fcfc45d02f..7a6a043d36 100644 --- a/airavata-api/src/test/java/org/apache/airavata/execution/service/ProjectServiceTest.java +++ b/airavata-api/research-service/src/test/java/org/apache/airavata/research/service/ProjectServiceTest.java @@ -17,7 +17,10 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.airavata.execution.service; +package org.apache.airavata.research.service; +import org.apache.airavata.execution.service.RequestContext; +import org.apache.airavata.execution.service.ServiceException; +import org.apache.airavata.execution.service.ServiceAuthorizationException; import static org.junit.jupiter.api.Assertions.*; import static org.mockito.Mockito.*; diff --git a/airavata-server/src/main/java/org/apache/airavata/server/config/ServiceWiringConfig.java b/airavata-server/src/main/java/org/apache/airavata/server/config/ServiceWiringConfig.java index c4a0b842da..c02f1b81bd 100644 --- a/airavata-server/src/main/java/org/apache/airavata/server/config/ServiceWiringConfig.java +++ b/airavata-server/src/main/java/org/apache/airavata/server/config/ServiceWiringConfig.java @@ -20,7 +20,7 @@ package org.apache.airavata.server.config; import org.apache.airavata.compute.service.GroupResourceProfileService; -import org.apache.airavata.execution.service.ExperimentService; +import org.apache.airavata.research.service.ExperimentService; import org.springframework.context.annotation.Configuration; /** diff --git a/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ApplicationCatalogGrpcService.java b/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ApplicationCatalogGrpcService.java index 3e11b27b14..0d8b322ca9 100644 --- a/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ApplicationCatalogGrpcService.java +++ b/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ApplicationCatalogGrpcService.java @@ -24,7 +24,7 @@ import io.grpc.stub.StreamObserver; import java.util.List; import java.util.Map; import org.apache.airavata.api.appcatalog.*; -import org.apache.airavata.compute.service.ApplicationCatalogService; +import org.apache.airavata.research.service.ApplicationCatalogService; import org.apache.airavata.execution.service.RequestContext; import org.apache.airavata.model.appcatalog.appdeployment.proto.ApplicationDeploymentDescription; import org.apache.airavata.model.appcatalog.appdeployment.proto.ApplicationModule; diff --git a/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ExperimentGrpcService.java b/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ExperimentGrpcService.java index e18c9bd0de..1f5253f53c 100644 --- a/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ExperimentGrpcService.java +++ b/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ExperimentGrpcService.java @@ -25,7 +25,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import org.apache.airavata.api.experiment.*; -import org.apache.airavata.execution.service.ExperimentService; +import org.apache.airavata.research.service.ExperimentService; import org.apache.airavata.execution.service.RequestContext; import org.apache.airavata.model.application.io.proto.OutputDataObjectType; import org.apache.airavata.model.experiment.proto.ExperimentModel; diff --git a/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/NotificationGrpcService.java b/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/NotificationGrpcService.java index fececd51e2..f4aed96d4d 100644 --- a/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/NotificationGrpcService.java +++ b/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/NotificationGrpcService.java @@ -23,7 +23,7 @@ import com.google.protobuf.Empty; import io.grpc.stub.StreamObserver; import java.util.List; import org.apache.airavata.api.notification.*; -import org.apache.airavata.execution.service.NotificationService; +import org.apache.airavata.research.service.NotificationService; import org.apache.airavata.execution.service.RequestContext; import org.apache.airavata.model.workspace.proto.Notification; import org.apache.airavata.server.grpc.GrpcStatusMapper; diff --git a/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ParserGrpcService.java b/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ParserGrpcService.java index 6aac4b8a43..b5b11e2726 100644 --- a/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ParserGrpcService.java +++ b/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ParserGrpcService.java @@ -23,7 +23,7 @@ import com.google.protobuf.Empty; import io.grpc.stub.StreamObserver; import java.util.List; import org.apache.airavata.api.parser.*; -import org.apache.airavata.compute.service.ParserService; +import org.apache.airavata.research.service.ParserService; import org.apache.airavata.execution.service.RequestContext; import org.apache.airavata.model.appcatalog.parser.proto.Parser; import org.apache.airavata.model.appcatalog.parser.proto.ParsingTemplate; diff --git a/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ProjectGrpcService.java b/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ProjectGrpcService.java index 1c2da3b11d..e5fd96fe3a 100644 --- a/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ProjectGrpcService.java +++ b/airavata-server/src/main/java/org/apache/airavata/server/grpc/services/ProjectGrpcService.java @@ -25,7 +25,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import org.apache.airavata.api.project.*; -import org.apache.airavata.execution.service.ProjectService; +import org.apache.airavata.research.service.ProjectService; import org.apache.airavata.execution.service.RequestContext; import org.apache.airavata.model.experiment.proto.ProjectSearchFields; import org.apache.airavata.model.workspace.proto.Project;
