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 <[email protected]> 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
