Files
DisCal-Discord-Bot/pom.xml
NovaFox161 5c0c1e514d Convert all database calls to being reactive
This commit introduces the r2dbc api for all database handling to make
it fully reactive so future updates to make the bot fully reactive.
While most calls to the database are still blocking, this does use a
reactive driver for it so further work down the line will be able to use
the database reactively without much additional work.

These changes have not been tested, and will need to be tested
thoroughly as database use is the backbone for the bot's persistence
data scheme.
2020-04-07 22:18:43 -05:00

249 lines
7.2 KiB
XML

<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<packaging>pom</packaging>
<properties>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.testTarget>1.8</maven.compiler.testTarget>
<maven.compiler.testSource>1.8</maven.compiler.testSource>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<project.build.targetEncoding>UTF-8</project.build.targetEncoding>
<thymeleaf.version>3.0.11.RELEASE</thymeleaf.version>
<thymeleaf-layout-dialect.version>2.3.0</thymeleaf-layout-dialect.version>
<spring.version>2.1.5.RELEASE</spring.version>
<spring.security.version>5.1.5.RELEASE</spring.security.version>
<discord4j.version>3.0.13</discord4j.version>
<discord4j.stores.version>3.0.13</discord4j.stores.version>
<google.client-api.version>1.28.0</google.client-api.version>
<r2dbc.version>0.8.1.RELEASE</r2dbc.version>
<revision>3.1.0-SNAPSHOT</revision>
</properties>
<groupId>org.dreamexposure</groupId>
<artifactId>DisCal</artifactId>
<version>${revision}</version>
<modules>
<module>core</module>
<module>client</module>
<module>server</module>
<module>web</module>
</modules>
<distributionManagement>
<repository>
<id>nova-release-pub</id>
<name>Releases</name>
<url>https://repo.novafox161.com/repository/nova-release-pub/</url>
</repository>
<snapshotRepository>
<id>nova-snapshots-pub</id>
<name>Snapshots</name>
<url>https://repo.novafox161.com/repository/nova-snapshots-pub/</url>
</snapshotRepository>
</distributionManagement>
<repositories>
<repository>
<id>nova-public</id>
<url>https://repo.novafox161.com/repository/nova-public/</url>
</repository>
<repository>
<id>jcenter</id>
<url>https://jcenter.bintray.com</url>
</repository>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
<repository>
<id>spring-releases</id>
<url>https://repo.spring.io/libs-release</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-releases</id>
<url>https://repo.spring.io/libs-release</url>
</pluginRepository>
</pluginRepositories>
<dependencies>
<!--For Annotations-->
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>17.0.0</version>
</dependency>
<!--NovaUtils API-->
<dependency>
<groupId>org.dreamexposure</groupId>
<artifactId>NovaUtils</artifactId>
<version>1.0.0-SNAPSHOT</version>
<type>jar</type>
</dependency>
<!--discordbots.net API library-->
<dependency>
<groupId>com.github.DiscordBotList</groupId>
<artifactId>Java-Wrapper</artifactId>
<version>v1.0</version>
</dependency>
<!--Google Client API-->
<dependency>
<groupId>com.google.api-client</groupId>
<artifactId>google-api-client</artifactId>
<version>${google.client-api.version}</version>
<optional>false</optional>
</dependency>
<!--Google Calendar API-->
<dependency>
<groupId>com.google.apis</groupId>
<artifactId>google-api-services-calendar</artifactId>
<version>v3-rev371-1.25.0</version>
</dependency>
<!--Google oauth client API-->
<dependency>
<groupId>com.google.oauth-client</groupId>
<artifactId>google-oauth-client-jetty</artifactId>
<version>${google.client-api.version}</version>
<exclusions>
<exclusion>
<groupId>org.mortbay.jetty</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--r2jdbc API for reactive database queries-->
<dependency>
<groupId>dev.miku</groupId>
<artifactId>r2dbc-mysql</artifactId>
<version>${r2dbc.version}</version>
</dependency>
<!--r2dbc pools API for mysql connection pooling-->
<dependency>
<groupId>io.r2dbc</groupId>
<artifactId>r2dbc-pool</artifactId>
<version>${r2dbc.version}</version>
</dependency>
<!--JSON API-->
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20180813</version>
</dependency>
<!--Joda Time-->
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.10.1</version>
</dependency>
<!--OkHTTP API-->
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>3.14.0</version>
</dependency>
<!--Discord Webhook Library-->
<dependency>
<groupId>club.minnced</groupId>
<artifactId>discord-webhooks</artifactId>
<version>0.1.7</version>
</dependency>
<!--Thymeleaf-->
<dependency>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf</artifactId>
<version>${thymeleaf.version}</version>
<scope>compile</scope>
</dependency>
<!--Thymeleaf 5 for Spring-->
<dependency>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf-spring5</artifactId>
<version>${thymeleaf.version}</version>
<scope>compile</scope>
</dependency>
<!--Thymeleaf dialect-->
<dependency>
<groupId>nz.net.ultraq.thymeleaf</groupId>
<artifactId>thymeleaf-layout-dialect</artifactId>
<version>${thymeleaf-layout-dialect.version}</version>
<scope>compile</scope>
</dependency>
<!--Spring Boot starter Thymeleaf API-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
<version>${spring.version}</version>
<scope>compile</scope>
</dependency>
<!--Spring Boot starter web API-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>${spring.version}</version>
</dependency>
<!--Spring Session API-->
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
<version>${spring.version}</version>
</dependency>
<!--Spring Security Core-->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>${spring.security.version}</version>
<scope>compile</scope>
</dependency>
<!--Spring Security Web-->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>${spring.security.version}</version>
</dependency>
<!--FlywayDB API for Database Migrations-->
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
<version>5.2.4</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.7</version>
<configuration>
<skip>true</skip>
</configuration>
<inherited>false</inherited>
</plugin>
</plugins>
</build>
</project>