You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2023/04/26 16:10:43 UTC
[airavata-data-catalog] 04/09: Pick sharing manager implementation based on config
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 ea2a4c62507327ebdffbfa72f24a158ee4e5e3f1
Author: Marcus Christie <ma...@apache.org>
AuthorDate: Tue Apr 25 11:13:00 2023 -0400
Pick sharing manager implementation based on config
---
.../datacatalog/api/DataCatalogApiServiceApplication.java | 8 +++-----
.../airavata/datacatalog/api/sharing/SharingManagerImpl.java | 2 +-
data-catalog-api/server/src/main/resources/application.properties | 3 +++
3 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/DataCatalogApiServiceApplication.java b/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/DataCatalogApiServiceApplication.java
index fb35723..86a0aa8 100644
--- a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/DataCatalogApiServiceApplication.java
+++ b/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/DataCatalogApiServiceApplication.java
@@ -1,8 +1,8 @@
package org.apache.airavata.datacatalog.api;
import org.apache.airavata.datacatalog.api.sharing.SharingManager;
-import org.apache.airavata.datacatalog.api.sharing.SharingManagerImpl;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.domain.EntityScan;
@@ -29,9 +29,7 @@ public class DataCatalogApiServiceApplication {
@Bean
@Primary
- public SharingManager getSharingManager() {
- // TODO: externalize bean name to a property
- // return (SharingManager) applicationContext.getBean("simpleSharingManager");
- return applicationContext.getBean(SharingManagerImpl.class);
+ public SharingManager getSharingManager(@Value("${sharing.manager.bean}") String sharingManagerBeanName) {
+ return applicationContext.getBean(sharingManagerBeanName, SharingManager.class);
}
}
diff --git a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManagerImpl.java b/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManagerImpl.java
index bd7118d..aaf1986 100644
--- a/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManagerImpl.java
+++ b/data-catalog-api/server/src/main/java/org/apache/airavata/datacatalog/api/sharing/SharingManagerImpl.java
@@ -25,7 +25,7 @@ import org.springframework.stereotype.Component;
import jakarta.annotation.PostConstruct;
-@Component
+@Component("custosSharingManager")
public class SharingManagerImpl implements SharingManager {
private static final Logger logger = LoggerFactory.getLogger(SharingManagerImpl.class);
diff --git a/data-catalog-api/server/src/main/resources/application.properties b/data-catalog-api/server/src/main/resources/application.properties
index 914f6da..0ef1d54 100644
--- a/data-catalog-api/server/src/main/resources/application.properties
+++ b/data-catalog-api/server/src/main/resources/application.properties
@@ -8,3 +8,6 @@ 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.manager.bean=simpleSharingManager
+# sharing.manager.bean=custosSharingManager