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

machristie pushed a commit to branch custos-integration
in repository https://gitbox.apache.org/repos/asf/airavata-data-catalog.git

commit bf71050dc0de667a2a636015a6b9f6ad9f3e9364
Author: Marcus Christie <[email protected]>
AuthorDate: Tue May 2 10:27:18 2023 -0400

    Refactored projects splitting out core and simple sharing impl and custos 
sharing impl
---
 README.md                                          |   2 +-
 data-catalog-api/server/core/pom.xml               |  39 ++++++
 .../datacatalog/api/model/DataProductEntity.java   |   0
 .../api/model/MetadataSchemaEntity.java            |   0
 .../api/model/MetadataSchemaFieldEntity.java       |   0
 .../datacatalog/api/model/TenantEntity.java        |   0
 .../airavata/datacatalog/api/model/UserEntity.java |   0
 .../api/repository/DataProductRepository.java      |   0
 .../repository/MetadataSchemaFieldRepository.java  |   0
 .../api/repository/MetadataSchemaRepository.java   |   0
 .../api/repository/TenantRepository.java           |   0
 .../datacatalog/api/repository/UserRepository.java |   0
 .../datacatalog/api/sharing/SharingManager.java    |   2 +-
 .../api/sharing}/exception/SharingException.java   |   2 +-
 data-catalog-api/server/custos-sharing/pom.xml     |  51 ++++++++
 .../api/sharing/SharingManagerImpl.java            |   2 +-
 .../resources/custos_data_product_sharing_view.sql |   0
 data-catalog-api/server/pom.xml                    | 143 +++++++--------------
 data-catalog-api/server/{ => service}/pom.xml      |  64 +++------
 .../api/DataCatalogApiServiceApplication.java      |   0
 .../api/exception/EntityNotFoundException.java     |   0
 .../exception/MetadataSchemaSqlParseException.java |   0
 .../MetadataSchemaSqlValidateException.java        |   0
 .../datacatalog/api/mapper/DataProductMapper.java  |   0
 .../api/mapper/MetadataSchemaFieldMapper.java      |   0
 .../api/mapper/MetadataSchemaMapper.java           |   0
 .../datacatalog/api/mapper/UserInfoMapper.java     |   0
 .../api/query/MetadataSchemaQueryExecutor.java     |   0
 .../api/query/MetadataSchemaQueryResult.java       |   0
 .../api/query/MetadataSchemaQueryWriter.java       |   0
 .../impl/MetadataSchemaQueryExecutorImpl.java      |   0
 .../PostgresqlMetadataSchemaQueryWriterImpl.java   |   0
 .../api/service/DataCatalogAPIService.java         |   2 +-
 .../api/service/DataCatalogService.java            |   2 +-
 .../api/service/impl/DataCatalogServiceImpl.java   |   2 +-
 .../src/main/resources/application.properties      |   0
 .../{ => service}/src/main/resources/logback.xml   |   0
 .../api/DataCatalogApiServerApplicationTests.java  |   0
 data-catalog-api/server/simple-sharing/pom.xml     |  35 +++++
 .../model/sharing/simple/SimpleGroupEntity.java    |   0
 .../sharing/simple/SimpleGroupSharingEntity.java   |   0
 .../sharing/simple/SimplePublicSharingEntity.java  |   0
 .../model/sharing/simple/SimpleTenantEntity.java   |   0
 .../api/model/sharing/simple/SimpleUserEntity.java |   0
 .../sharing/simple/SimpleUserSharingEntity.java    |   0
 .../sharing/simple/SimpleGroupRepository.java      |   0
 .../simple/SimpleGroupSharingRepository.java       |   0
 .../simple/SimplePublicSharingRepository.java      |   0
 .../sharing/simple/SimpleTenantRepository.java     |   0
 .../sharing/simple/SimpleUserRepository.java       |   0
 .../simple/SimpleUserSharingRepository.java        |   0
 .../api/sharing/SimpleSharingManagerImpl.java      |   2 +-
 .../src/main/resources/schema.sql                  |   0
 .../api/sharing/SimpleSharingManagerImplTest.java  |  20 ++-
 .../src/test}/resources/application.properties     |  13 --
 55 files changed, 211 insertions(+), 170 deletions(-)

diff --git a/README.md b/README.md
index 0f57854..b376cc5 100644
--- a/README.md
+++ b/README.md
@@ -12,7 +12,7 @@ Run the API server
 
 ```
 mvn install
-cd data-catalog-api/server
+cd data-catalog-api/server/service
 mvn spring-boot:run
 ```
 
diff --git a/data-catalog-api/server/core/pom.xml 
b/data-catalog-api/server/core/pom.xml
new file mode 100644
index 0000000..d554be7
--- /dev/null
+++ b/data-catalog-api/server/core/pom.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0";
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
https://maven.apache.org/xsd/maven-4.0.0.xsd";>
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.airavata</groupId>
+        <artifactId>data-catalog-api-server</artifactId>
+        <version>0.1-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>data-catalog-api-server-core</artifactId>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-data-jpa</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.postgresql</groupId>
+            <artifactId>postgresql</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>data-catalog-api-stubs</artifactId>
+            <version>0.1-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <groupId>io.hypersistence</groupId>
+            <artifactId>hypersistence-utils-hibernate-60</artifactId>
+            <version>3.1.1</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.module</groupId>
+            <artifactId>jackson-module-jakarta-xmlbind-annotations</artifactId>
+            <version>2.14.1</version>
+        </dependency>
+    </dependencies>
+
+</project>
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/DataProductEntity.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/model/DataProductEntity.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/DataProductEntity.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/model/DataProductEntity.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/MetadataSchemaEntity.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/model/MetadataSchemaEntity.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/MetadataSchemaEntity.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/model/MetadataSchemaEntity.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/MetadataSchemaFieldEntity.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/model/MetadataSchemaFieldEntity.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/MetadataSchemaFieldEntity.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/model/MetadataSchemaFieldEntity.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/TenantEntity.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/model/TenantEntity.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/TenantEntity.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/model/TenantEntity.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/UserEntity.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/model/UserEntity.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/UserEntity.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/model/UserEntity.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/DataProductRepository.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/repository/DataProductRepository.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/DataProductRepository.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/repository/DataProductRepository.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/MetadataSchemaFieldRepository.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/repository/MetadataSchemaFieldRepository.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/MetadataSchemaFieldRepository.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/repository/MetadataSchemaFieldRepository.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/MetadataSchemaRepository.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/repository/MetadataSchemaRepository.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/MetadataSchemaRepository.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/repository/MetadataSchemaRepository.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/TenantRepository.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/repository/TenantRepository.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/TenantRepository.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/repository/TenantRepository.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/UserRepository.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/repository/UserRepository.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/UserRepository.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/repository/UserRepository.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManager.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManager.java
similarity index 98%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManager.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManager.java
index 6e0fbf3..a44c649 100644
--- 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManager.java
+++ 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManager.java
@@ -4,8 +4,8 @@ import org.apache.airavata.datacatalog.api.DataProduct;
 import org.apache.airavata.datacatalog.api.GroupInfo;
 import org.apache.airavata.datacatalog.api.Permission;
 import org.apache.airavata.datacatalog.api.UserInfo;
-import org.apache.airavata.datacatalog.api.exception.SharingException;
 import org.apache.airavata.datacatalog.api.model.UserEntity;
+import org.apache.airavata.datacatalog.api.sharing.exception.SharingException;
 
 public interface SharingManager {
 
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/exception/SharingException.java
 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/sharing/exception/SharingException.java
similarity index 89%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/exception/SharingException.java
rename to 
data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/sharing/exception/SharingException.java
index d8b0368..7bff3bc 100644
--- 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/exception/SharingException.java
+++ 
b/data-catalog-api/server/core/src/main/java/org/apache/airavata/datacatalog/api/sharing/exception/SharingException.java
@@ -1,4 +1,4 @@
-package org.apache.airavata.datacatalog.api.exception;
+package org.apache.airavata.datacatalog.api.sharing.exception;
 
 public class SharingException extends Exception {
 
diff --git a/data-catalog-api/server/custos-sharing/pom.xml 
b/data-catalog-api/server/custos-sharing/pom.xml
new file mode 100644
index 0000000..7181e95
--- /dev/null
+++ b/data-catalog-api/server/custos-sharing/pom.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0";
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
https://maven.apache.org/xsd/maven-4.0.0.xsd";>
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.airavata</groupId>
+        <artifactId>data-catalog-api-server</artifactId>
+        <version>0.1-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>data-catalog-api-server-custos-sharing</artifactId>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>data-catalog-api-server-core</artifactId>
+            <version>0.1-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.custos</groupId>
+            <artifactId>sharing-core-impl</artifactId>
+            <version>1.1-SNAPSHOT</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>com.mysql</groupId>
+                    <artifactId>mysql-connector-j</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>jakarta.persistence</groupId>
+                    <artifactId>jakarta.persistence-api</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.custos</groupId>
+            <artifactId>custos-java-sdk</artifactId>
+            <version>1.1-SNAPSHOT</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>io.grpc</groupId>
+                    <artifactId>grpc-netty</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>io.grpc</groupId>
+                    <artifactId>grpc-core</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+    </dependencies>
+
+</project>
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManagerImpl.java
 
b/data-catalog-api/server/custos-sharing/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManagerImpl.java
similarity index 99%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManagerImpl.java
rename to 
data-catalog-api/server/custos-sharing/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManagerImpl.java
index 3a90c3d..d576560 100644
--- 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManagerImpl.java
+++ 
b/data-catalog-api/server/custos-sharing/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManagerImpl.java
@@ -12,11 +12,11 @@ import org.apache.airavata.datacatalog.api.DataProduct;
 import org.apache.airavata.datacatalog.api.GroupInfo;
 import org.apache.airavata.datacatalog.api.Permission;
 import org.apache.airavata.datacatalog.api.UserInfo;
-import org.apache.airavata.datacatalog.api.exception.SharingException;
 import org.apache.airavata.datacatalog.api.model.TenantEntity;
 import org.apache.airavata.datacatalog.api.model.UserEntity;
 import org.apache.airavata.datacatalog.api.repository.TenantRepository;
 import org.apache.airavata.datacatalog.api.repository.UserRepository;
+import org.apache.airavata.datacatalog.api.sharing.exception.SharingException;
 import org.apache.custos.clients.CustosClientProvider;
 import org.apache.custos.group.management.client.GroupManagementClient;
 import org.apache.custos.iam.service.FindUsersResponse;
diff --git 
a/data-catalog-api/server/src/main/resources/custos_data_product_sharing_view.sql
 
b/data-catalog-api/server/custos-sharing/src/main/resources/custos_data_product_sharing_view.sql
similarity index 100%
rename from 
data-catalog-api/server/src/main/resources/custos_data_product_sharing_view.sql
rename to 
data-catalog-api/server/custos-sharing/src/main/resources/custos_data_product_sharing_view.sql
diff --git a/data-catalog-api/server/pom.xml b/data-catalog-api/server/pom.xml
index 20ca602..58261a9 100644
--- a/data-catalog-api/server/pom.xml
+++ b/data-catalog-api/server/pom.xml
@@ -1,107 +1,52 @@
-<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
 <project xmlns="http://maven.apache.org/POM/4.0.0";
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
https://maven.apache.org/xsd/maven-4.0.0.xsd";>
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.apache.airavata</groupId>
-        <artifactId>data-catalog-api</artifactId>
-        <version>0.1-SNAPSHOT</version>
-    </parent>
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
 
-    <artifactId>data-catalog-api-server</artifactId>
+  <parent>
+    <groupId>org.apache.airavata</groupId>
+    <artifactId>data-catalog-api</artifactId>
+    <version>0.1-SNAPSHOT</version>
+  </parent>
 
-    <dependencyManagement>
-        <dependencies>
-            <dependency>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-starter-parent</artifactId>
-                <version>${spring.boot.version}</version>
-                <type>pom</type>
-                <scope>import</scope>
-            </dependency>
-        </dependencies>
-    </dependencyManagement>
+  <artifactId>data-catalog-api-server</artifactId>
+  <modelVersion>4.0.0</modelVersion>
 
+  <packaging>pom</packaging>
+
+  <dependencyManagement>
     <dependencies>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-data-jpa</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>io.github.lognet</groupId>
-            <artifactId>grpc-spring-boot-starter</artifactId>
-            <version>${grpc.spring.boot}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.springframework.boot</groupId>
-                    <artifactId>spring-boot-starter</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-test</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-devtools</artifactId>
-            <optional>true</optional>
-        </dependency>
-        <dependency>
-            <groupId>org.postgresql</groupId>
-            <artifactId>postgresql</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>data-catalog-api-stubs</artifactId>
-            <version>0.1-SNAPSHOT</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.custos</groupId>
-            <artifactId>sharing-core-impl</artifactId>
-            <version>1.1-SNAPSHOT</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>com.mysql</groupId>
-                    <artifactId>mysql-connector-j</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>jakarta.persistence</groupId>
-                    <artifactId>jakarta.persistence-api</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>io.hypersistence</groupId>
-            <artifactId>hypersistence-utils-hibernate-60</artifactId>
-            <version>3.1.1</version>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.module</groupId>
-            <artifactId>jackson-module-jakarta-xmlbind-annotations</artifactId>
-            <version>2.14.1</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.calcite</groupId>
-            <artifactId>calcite-core</artifactId>
-            <version>1.32.0</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.custos</groupId>
-            <artifactId>custos-java-sdk</artifactId>
-            <version>1.1-SNAPSHOT</version>
-        </dependency>
+      <dependency>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-starter-parent</artifactId>
+        <version>${spring.boot.version}</version>
+        <type>pom</type>
+        <scope>import</scope>
+      </dependency>
     </dependencies>
+  </dependencyManagement>
 
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-maven-plugin</artifactId>
-                <version>${spring.boot.version}</version>
-            </plugin>
-        </plugins>
-    </build>
-
+  <modules>
+    <module>core</module>
+    <module>service</module>
+    <module>simple-sharing</module>
+    <module>custos-sharing</module>
+  </modules>
 </project>
diff --git a/data-catalog-api/server/pom.xml 
b/data-catalog-api/server/service/pom.xml
similarity index 52%
copy from data-catalog-api/server/pom.xml
copy to data-catalog-api/server/service/pom.xml
index 20ca602..9263f7b 100644
--- a/data-catalog-api/server/pom.xml
+++ b/data-catalog-api/server/service/pom.xml
@@ -4,29 +4,13 @@
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.airavata</groupId>
-        <artifactId>data-catalog-api</artifactId>
+        <artifactId>data-catalog-api-server</artifactId>
         <version>0.1-SNAPSHOT</version>
     </parent>
 
-    <artifactId>data-catalog-api-server</artifactId>
-
-    <dependencyManagement>
-        <dependencies>
-            <dependency>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-starter-parent</artifactId>
-                <version>${spring.boot.version}</version>
-                <type>pom</type>
-                <scope>import</scope>
-            </dependency>
-        </dependencies>
-    </dependencyManagement>
+    <artifactId>data-catalog-api-service</artifactId>
 
     <dependencies>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-data-jpa</artifactId>
-        </dependency>
         <dependency>
             <groupId>io.github.lognet</groupId>
             <artifactId>grpc-spring-boot-starter</artifactId>
@@ -48,49 +32,31 @@
             <artifactId>spring-boot-devtools</artifactId>
             <optional>true</optional>
         </dependency>
-        <dependency>
-            <groupId>org.postgresql</groupId>
-            <artifactId>postgresql</artifactId>
-        </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
-            <artifactId>data-catalog-api-stubs</artifactId>
+            <artifactId>data-catalog-api-server-core</artifactId>
             <version>0.1-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.custos</groupId>
-            <artifactId>sharing-core-impl</artifactId>
-            <version>1.1-SNAPSHOT</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>com.mysql</groupId>
-                    <artifactId>mysql-connector-j</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>jakarta.persistence</groupId>
-                    <artifactId>jakarta.persistence-api</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>io.hypersistence</groupId>
-            <artifactId>hypersistence-utils-hibernate-60</artifactId>
-            <version>3.1.1</version>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>data-catalog-api-server-simple-sharing</artifactId>
+            <version>0.1-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>com.fasterxml.jackson.module</groupId>
-            <artifactId>jackson-module-jakarta-xmlbind-annotations</artifactId>
-            <version>2.14.1</version>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>data-catalog-api-server-custos-sharing</artifactId>
+            <version>0.1-SNAPSHOT</version>
         </dependency>
         <dependency>
             <groupId>org.apache.calcite</groupId>
             <artifactId>calcite-core</artifactId>
             <version>1.32.0</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.custos</groupId>
-            <artifactId>custos-java-sdk</artifactId>
-            <version>1.1-SNAPSHOT</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>com.google.protobuf</groupId>
+                    <artifactId>protobuf-java</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
     </dependencies>
 
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/DataCatalogApiServiceApplication.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/DataCatalogApiServiceApplication.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/DataCatalogApiServiceApplication.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/DataCatalogApiServiceApplication.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/exception/EntityNotFoundException.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/exception/EntityNotFoundException.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/exception/EntityNotFoundException.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/exception/EntityNotFoundException.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/exception/MetadataSchemaSqlParseException.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/exception/MetadataSchemaSqlParseException.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/exception/MetadataSchemaSqlParseException.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/exception/MetadataSchemaSqlParseException.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/exception/MetadataSchemaSqlValidateException.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/exception/MetadataSchemaSqlValidateException.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/exception/MetadataSchemaSqlValidateException.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/exception/MetadataSchemaSqlValidateException.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/mapper/DataProductMapper.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/mapper/DataProductMapper.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/mapper/DataProductMapper.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/mapper/DataProductMapper.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/mapper/MetadataSchemaFieldMapper.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/mapper/MetadataSchemaFieldMapper.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/mapper/MetadataSchemaFieldMapper.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/mapper/MetadataSchemaFieldMapper.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/mapper/MetadataSchemaMapper.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/mapper/MetadataSchemaMapper.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/mapper/MetadataSchemaMapper.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/mapper/MetadataSchemaMapper.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/mapper/UserInfoMapper.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/mapper/UserInfoMapper.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/mapper/UserInfoMapper.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/mapper/UserInfoMapper.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryExecutor.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryExecutor.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryExecutor.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryExecutor.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryResult.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryResult.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryResult.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryResult.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryWriter.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryWriter.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryWriter.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/query/MetadataSchemaQueryWriter.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/query/impl/MetadataSchemaQueryExecutorImpl.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/query/impl/MetadataSchemaQueryExecutorImpl.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/query/impl/MetadataSchemaQueryExecutorImpl.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/query/impl/MetadataSchemaQueryExecutorImpl.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/query/impl/PostgresqlMetadataSchemaQueryWriterImpl.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/query/impl/PostgresqlMetadataSchemaQueryWriterImpl.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/query/impl/PostgresqlMetadataSchemaQueryWriterImpl.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/query/impl/PostgresqlMetadataSchemaQueryWriterImpl.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogAPIService.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogAPIService.java
similarity index 99%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogAPIService.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogAPIService.java
index e658fc4..77b5bda 100644
--- 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogAPIService.java
+++ 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogAPIService.java
@@ -41,9 +41,9 @@ import org.apache.airavata.datacatalog.api.UserInfo;
 import org.apache.airavata.datacatalog.api.exception.EntityNotFoundException;
 import 
org.apache.airavata.datacatalog.api.exception.MetadataSchemaSqlParseException;
 import 
org.apache.airavata.datacatalog.api.exception.MetadataSchemaSqlValidateException;
-import org.apache.airavata.datacatalog.api.exception.SharingException;
 import org.apache.airavata.datacatalog.api.query.MetadataSchemaQueryResult;
 import org.apache.airavata.datacatalog.api.sharing.SharingManager;
+import org.apache.airavata.datacatalog.api.sharing.exception.SharingException;
 import org.lognet.springboot.grpc.GRpcService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogService.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogService.java
similarity index 96%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogService.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogService.java
index 0e514ce..9e48ff5 100644
--- 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogService.java
+++ 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/service/DataCatalogService.java
@@ -8,8 +8,8 @@ import org.apache.airavata.datacatalog.api.MetadataSchemaField;
 import org.apache.airavata.datacatalog.api.UserInfo;
 import 
org.apache.airavata.datacatalog.api.exception.MetadataSchemaSqlParseException;
 import 
org.apache.airavata.datacatalog.api.exception.MetadataSchemaSqlValidateException;
-import org.apache.airavata.datacatalog.api.exception.SharingException;
 import org.apache.airavata.datacatalog.api.query.MetadataSchemaQueryResult;
+import org.apache.airavata.datacatalog.api.sharing.exception.SharingException;
 
 /**
  * Transactional service layer for CRUD operations on data catalog database.
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/service/impl/DataCatalogServiceImpl.java
 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/service/impl/DataCatalogServiceImpl.java
similarity index 99%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/service/impl/DataCatalogServiceImpl.java
rename to 
data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/service/impl/DataCatalogServiceImpl.java
index fb23e02..89bcc15 100644
--- 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/service/impl/DataCatalogServiceImpl.java
+++ 
b/data-catalog-api/server/service/src/main/java/org/apache/airavata/datacatalog/api/service/impl/DataCatalogServiceImpl.java
@@ -13,7 +13,6 @@ import org.apache.airavata.datacatalog.api.UserInfo;
 import org.apache.airavata.datacatalog.api.exception.EntityNotFoundException;
 import 
org.apache.airavata.datacatalog.api.exception.MetadataSchemaSqlParseException;
 import 
org.apache.airavata.datacatalog.api.exception.MetadataSchemaSqlValidateException;
-import org.apache.airavata.datacatalog.api.exception.SharingException;
 import org.apache.airavata.datacatalog.api.mapper.DataProductMapper;
 import org.apache.airavata.datacatalog.api.mapper.MetadataSchemaFieldMapper;
 import org.apache.airavata.datacatalog.api.mapper.MetadataSchemaMapper;
@@ -28,6 +27,7 @@ import 
org.apache.airavata.datacatalog.api.repository.MetadataSchemaFieldReposit
 import org.apache.airavata.datacatalog.api.repository.MetadataSchemaRepository;
 import org.apache.airavata.datacatalog.api.service.DataCatalogService;
 import org.apache.airavata.datacatalog.api.sharing.SharingManager;
+import org.apache.airavata.datacatalog.api.sharing.exception.SharingException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
diff --git a/data-catalog-api/server/src/main/resources/application.properties 
b/data-catalog-api/server/service/src/main/resources/application.properties
similarity index 100%
copy from data-catalog-api/server/src/main/resources/application.properties
copy to 
data-catalog-api/server/service/src/main/resources/application.properties
diff --git a/data-catalog-api/server/src/main/resources/logback.xml 
b/data-catalog-api/server/service/src/main/resources/logback.xml
similarity index 100%
rename from data-catalog-api/server/src/main/resources/logback.xml
rename to data-catalog-api/server/service/src/main/resources/logback.xml
diff --git 
a/data-catalog-api/server/src/test/java/org/apache/airavata/datacatalog/api/DataCatalogApiServerApplicationTests.java
 
b/data-catalog-api/server/service/src/test/java/org/apache/airavata/datacatalog/api/DataCatalogApiServerApplicationTests.java
similarity index 100%
rename from 
data-catalog-api/server/src/test/java/org/apache/airavata/datacatalog/api/DataCatalogApiServerApplicationTests.java
rename to 
data-catalog-api/server/service/src/test/java/org/apache/airavata/datacatalog/api/DataCatalogApiServerApplicationTests.java
diff --git a/data-catalog-api/server/simple-sharing/pom.xml 
b/data-catalog-api/server/simple-sharing/pom.xml
new file mode 100644
index 0000000..d2b85d8
--- /dev/null
+++ b/data-catalog-api/server/simple-sharing/pom.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0";
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
https://maven.apache.org/xsd/maven-4.0.0.xsd";>
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.airavata</groupId>
+        <artifactId>data-catalog-api-server</artifactId>
+        <version>0.1-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>data-catalog-api-server-simple-sharing</artifactId>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.postgresql</groupId>
+            <artifactId>postgresql</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>data-catalog-api-stubs</artifactId>
+            <version>0.1-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>data-catalog-api-server-core</artifactId>
+            <version>0.1-SNAPSHOT</version>
+        </dependency>
+    </dependencies>
+
+</project>
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleGroupEntity.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleGroupEntity.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleGroupEntity.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleGroupEntity.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleGroupSharingEntity.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleGroupSharingEntity.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleGroupSharingEntity.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleGroupSharingEntity.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimplePublicSharingEntity.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimplePublicSharingEntity.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimplePublicSharingEntity.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimplePublicSharingEntity.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleTenantEntity.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleTenantEntity.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleTenantEntity.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleTenantEntity.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleUserEntity.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleUserEntity.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleUserEntity.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleUserEntity.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleUserSharingEntity.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleUserSharingEntity.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleUserSharingEntity.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/model/sharing/simple/SimpleUserSharingEntity.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleGroupRepository.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleGroupRepository.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleGroupRepository.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleGroupRepository.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleGroupSharingRepository.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleGroupSharingRepository.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleGroupSharingRepository.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleGroupSharingRepository.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimplePublicSharingRepository.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimplePublicSharingRepository.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimplePublicSharingRepository.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimplePublicSharingRepository.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleTenantRepository.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleTenantRepository.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleTenantRepository.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleTenantRepository.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleUserRepository.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleUserRepository.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleUserRepository.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleUserRepository.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleUserSharingRepository.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleUserSharingRepository.java
similarity index 100%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleUserSharingRepository.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/repository/sharing/simple/SimpleUserSharingRepository.java
diff --git 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImpl.java
 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImpl.java
similarity index 99%
rename from 
data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImpl.java
rename to 
data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImpl.java
index 8b98573..293ae6e 100644
--- 
a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImpl.java
+++ 
b/data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImpl.java
@@ -7,7 +7,6 @@ import org.apache.airavata.datacatalog.api.DataProduct;
 import org.apache.airavata.datacatalog.api.GroupInfo;
 import org.apache.airavata.datacatalog.api.Permission;
 import org.apache.airavata.datacatalog.api.UserInfo;
-import org.apache.airavata.datacatalog.api.exception.SharingException;
 import org.apache.airavata.datacatalog.api.model.DataProductEntity;
 import org.apache.airavata.datacatalog.api.model.TenantEntity;
 import org.apache.airavata.datacatalog.api.model.UserEntity;
@@ -26,6 +25,7 @@ import 
org.apache.airavata.datacatalog.api.repository.sharing.simple.SimplePubli
 import 
org.apache.airavata.datacatalog.api.repository.sharing.simple.SimpleTenantRepository;
 import 
org.apache.airavata.datacatalog.api.repository.sharing.simple.SimpleUserRepository;
 import 
org.apache.airavata.datacatalog.api.repository.sharing.simple.SimpleUserSharingRepository;
+import org.apache.airavata.datacatalog.api.sharing.exception.SharingException;
 import org.springframework.beans.factory.annotation.Autowired;
 
 import jakarta.persistence.EntityManager;
diff --git a/data-catalog-api/server/src/main/resources/schema.sql 
b/data-catalog-api/server/simple-sharing/src/main/resources/schema.sql
similarity index 100%
rename from data-catalog-api/server/src/main/resources/schema.sql
rename to data-catalog-api/server/simple-sharing/src/main/resources/schema.sql
diff --git 
a/data-catalog-api/server/src/test/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImplTest.java
 
b/data-catalog-api/server/simple-sharing/src/test/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImplTest.java
similarity index 96%
rename from 
data-catalog-api/server/src/test/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImplTest.java
rename to 
data-catalog-api/server/simple-sharing/src/test/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImplTest.java
index fe8240b..956c504 100644
--- 
a/data-catalog-api/server/src/test/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImplTest.java
+++ 
b/data-catalog-api/server/simple-sharing/src/test/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImplTest.java
@@ -14,7 +14,6 @@ import org.apache.airavata.datacatalog.api.DataProduct;
 import org.apache.airavata.datacatalog.api.GroupInfo;
 import org.apache.airavata.datacatalog.api.Permission;
 import org.apache.airavata.datacatalog.api.UserInfo;
-import org.apache.airavata.datacatalog.api.exception.SharingException;
 import org.apache.airavata.datacatalog.api.model.DataProductEntity;
 import org.apache.airavata.datacatalog.api.model.TenantEntity;
 import org.apache.airavata.datacatalog.api.model.UserEntity;
@@ -27,15 +26,34 @@ import 
org.apache.airavata.datacatalog.api.repository.UserRepository;
 import 
org.apache.airavata.datacatalog.api.repository.sharing.simple.SimpleGroupRepository;
 import 
org.apache.airavata.datacatalog.api.repository.sharing.simple.SimpleTenantRepository;
 import 
org.apache.airavata.datacatalog.api.repository.sharing.simple.SimpleUserRepository;
+import 
org.apache.airavata.datacatalog.api.sharing.SimpleSharingManagerImplTest.MyConfiguration;
+import org.apache.airavata.datacatalog.api.sharing.exception.SharingException;
 import org.junit.jupiter.api.Test;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.autoconfigure.domain.EntityScan;
 import 
org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase;
 import 
org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase.Replace;
 import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
+import org.springframework.test.context.ContextConfiguration;
 
 @DataJpaTest
 @AutoConfigureTestDatabase(replace = Replace.NONE)
+@ContextConfiguration(classes = MyConfiguration.class)
 public class SimpleSharingManagerImplTest {
+
+    @Configuration
+    @EnableJpaRepositories("org.apache.airavata.datacatalog.api.repository")
+    @EntityScan("org.apache.airavata.datacatalog.api.model")
+    public static class MyConfiguration {
+        @Bean
+        public SharingManager getSharingManager() {
+            return new SimpleSharingManagerImpl();
+        }
+    }
+
     @Autowired
     SimpleSharingManagerImpl simpleSharingManagerImpl;
 
diff --git a/data-catalog-api/server/src/main/resources/application.properties 
b/data-catalog-api/server/simple-sharing/src/test/resources/application.properties
similarity index 56%
rename from data-catalog-api/server/src/main/resources/application.properties
rename to 
data-catalog-api/server/simple-sharing/src/test/resources/application.properties
index d56da73..914f6da 100644
--- a/data-catalog-api/server/src/main/resources/application.properties
+++ 
b/data-catalog-api/server/simple-sharing/src/test/resources/application.properties
@@ -8,16 +8,3 @@ spring.jpa.show-sql=true
 # 
https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html#howto.data-initialization.using-basic-sql-scripts
 spring.jpa.defer-datasource-initialization=true
 spring.sql.init.mode=always
-
-# Sharing configuration
-
-## Simple Sharing
-sharing.manager.class.name=org.apache.airavata.datacatalog.api.sharing.SimpleSharingManagerImpl
-
-## Custos Sharing
-# 
sharing.manager.class.name=org.apache.airavata.datacatalog.api.sharing.SharingManagerImpl
-
-# identity.server.hostname=
-# identity.server.port=0
-# identity.server.clientId=
-# identity.server.clientSec=

Reply via email to