diff options
Diffstat (limited to 'src/test/java/com/juick/config/DataSourceAutoConfiguration.java')
-rw-r--r-- | src/test/java/com/juick/config/DataSourceAutoConfiguration.java | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/test/java/com/juick/config/DataSourceAutoConfiguration.java b/src/test/java/com/juick/config/DataSourceAutoConfiguration.java new file mode 100644 index 00000000..b30de7fc --- /dev/null +++ b/src/test/java/com/juick/config/DataSourceAutoConfiguration.java @@ -0,0 +1,49 @@ +/* + * Copyright (C) 2008-2019, Juick + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ +package com.juick.config; + +import ch.vorburger.mariadb4j.springframework.MariaDB4jSpringService; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.boot.autoconfigure.jdbc.DataSourceProperties; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.boot.jdbc.DataSourceBuilder; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.DependsOn; + +import javax.sql.DataSource; + +@Configuration +@ConfigurationProperties("spring.datasource") +@ConditionalOnProperty(value = "spring.datasource.platform", havingValue = "mysql") +public class DataSourceAutoConfiguration { + + @Bean + public MariaDB4jSpringService mariaDB4j() { + return new MariaDB4jSpringService(); + } + @Bean + @DependsOn("mariaDB4j") + public DataSource dataSource(DataSourceProperties dataSourceProperties) { + return DataSourceBuilder.create() + .driverClassName(dataSourceProperties.getDriverClassName()) + .url(dataSourceProperties.getUrl()) + .username(dataSourceProperties.getUsername()) + .password(dataSourceProperties.getPassword()) + .build(); + } +}
\ No newline at end of file |