From 27fd2bcb8c1bace521290179a2e3e28a73d5ccbb Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Tue, 22 Dec 2020 09:49:06 +0100 Subject: [PATCH] Introduce support for H2 with PostgreSQL compatibility mode. --- .../cms/internal/jcr/JackrabbitType.java | 2 + .../cms/internal/jcr/RepositoryBuilder.java | 6 ++ .../internal/jcr/repository-h2_postgresql.xml | 86 +++++++++++++++++++ 3 files changed, 94 insertions(+) create mode 100644 org.argeo.cms/src/org/argeo/cms/internal/jcr/repository-h2_postgresql.xml diff --git a/org.argeo.cms/src/org/argeo/cms/internal/jcr/JackrabbitType.java b/org.argeo.cms/src/org/argeo/cms/internal/jcr/JackrabbitType.java index cbb793016..40c83f6df 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/jcr/JackrabbitType.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/jcr/JackrabbitType.java @@ -6,6 +6,8 @@ enum JackrabbitType { localfs, /** Embedded Java H2 database */ h2, + /** Embedded Java H2 database in PostgreSQL compatibility mode */ + h2_postgresql, /** PostgreSQL */ postgresql, /** PostgreSQL with datastore */ diff --git a/org.argeo.cms/src/org/argeo/cms/internal/jcr/RepositoryBuilder.java b/org.argeo.cms/src/org/argeo/cms/internal/jcr/RepositoryBuilder.java index d4a42fdcc..9480a2913 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/jcr/RepositoryBuilder.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/jcr/RepositoryBuilder.java @@ -155,6 +155,12 @@ public class RepositoryBuilder { setProp(props, RepoConf.dbuser, "sa"); setProp(props, RepoConf.dbpassword, ""); break; + case h2_postgresql: + dburl = "jdbc:h2:" + homePath.toAbsolutePath() + "/h2/repository;MODE=PostgreSQL;DATABASE_TO_LOWER=TRUE"; + setProp(props, RepoConf.dburl, dburl); + setProp(props, RepoConf.dbuser, "sa"); + setProp(props, RepoConf.dbpassword, ""); + break; case postgresql: case postgresql_ds: case postgresql_cluster: diff --git a/org.argeo.cms/src/org/argeo/cms/internal/jcr/repository-h2_postgresql.xml b/org.argeo.cms/src/org/argeo/cms/internal/jcr/repository-h2_postgresql.xml new file mode 100644 index 000000000..430367656 --- /dev/null +++ b/org.argeo.cms/src/org/argeo/cms/internal/jcr/repository-h2_postgresql.xml @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file -- 2.30.2