Skip to content

Commit

Permalink
Merge pull request #3650 from loicmathieu/features/mongo_panache
Browse files Browse the repository at this point in the history
Extension: MongoDB with Panache
  • Loading branch information
gsmet authored Sep 24, 2019
2 parents 4be2347 + 1946498 commit b347c6d
Show file tree
Hide file tree
Showing 69 changed files with 6,770 additions and 9 deletions.
1 change: 1 addition & 0 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -262,6 +262,7 @@ stages:
- infinispan-cache-jpa
- infinispan-client
- mongodb-client
- mongodb-panache
- neo4j
name: data

Expand Down
5 changes: 5 additions & 0 deletions bom/deployment/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -216,6 +216,11 @@
<artifactId>quarkus-resteasy-server-common-spi</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-resteasy-common-spi</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-resteasy-server-common-deployment</artifactId>
Expand Down
29 changes: 28 additions & 1 deletion bom/runtime/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,8 @@
<spring-data.version>2.1.9.RELEASE</spring-data.version>
<mvel2.version>2.4.4.Final</mvel2.version>
<mockito.version>3.0.0</mockito.version>
<jna.version>5.3.1</jna.version>
<antlr.version>4.7.2</antlr.version>
</properties>

<dependencyManagement>
Expand Down Expand Up @@ -318,11 +320,21 @@
<artifactId>quarkus-panache-common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-panacheql</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-hibernate-orm-panache</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-mongodb-panache</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-hibernate-search-elasticsearch</artifactId>
Expand Down Expand Up @@ -699,7 +711,6 @@
</dependency>

<!-- Additional dependencies, keep in alphabetical order -->

<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
Expand Down Expand Up @@ -882,6 +893,11 @@
<version>${debezium.version}</version>
<type>test-jar</type>
</dependency>
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
<version>${antlr.version}</version>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-reflect</artifactId>
Expand Down Expand Up @@ -1249,11 +1265,22 @@
<artifactId>json-smart</artifactId>
<version>${json-smart.version}</version>
</dependency>
<!-- JNA dependency is fixed due to transitive dependency issue on testcontainers-->
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
<version>${jna.version}</version>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers</artifactId>
<version>${test-containers.version}</version>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>junit-jupiter</artifactId>
<version>${test-containers.version}</version>
</dependency>

<dependency>
<groupId>org.codehaus.plexus</groupId>
Expand Down
8 changes: 8 additions & 0 deletions build-parent/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,9 @@
<microprofile-reactive-messaging-api.version>1.0</microprofile-reactive-messaging-api.version>
<microprofile-rest-client-api.version>1.2.1</microprofile-rest-client-api.version>
<microprofile-open-api.version>1.1.2</microprofile-open-api.version>

<!-- Antlr is used by the PanacheQL parser-->
<antlr.version>4.7.2</antlr.version>
</properties>

<dependencyManagement>
Expand Down Expand Up @@ -245,6 +248,11 @@
<version>${elasticsearch-server.version}</version>
</configuration>
</plugin>
<plugin>
<groupId>org.antlr</groupId>
<artifactId>antlr4-maven-plugin</artifactId>
<version>${antlr.version}</version><!-- keep it aligned with the runtime bom-->
</plugin>
</plugins>
</pluginManagement>
</build>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ public final class FeatureBuildItem extends MultiBuildItem {
public static final String KUBERNETES_CLIENT = "kubernetes-client";
public static final String MAILER = "mailer";
public static final String MONGODB_CLIENT = "mongodb-client";
public static final String MONGODB_PANACHE = "mongodb-panache";
public static final String NARAYANA_JTA = "narayana-jta";
public static final String REACTIVE_PG_CLIENT = "reactive-pg-client";
public static final String REACTIVE_MYSQL_CLIENT = "reactive-mysql-client";
Expand Down
12 changes: 12 additions & 0 deletions devtools/common/src/main/filtered/extensions.json
Original file line number Diff line number Diff line change
Expand Up @@ -315,6 +315,18 @@
"groupId": "io.quarkus",
"artifactId": "quarkus-mongodb-client"
},
{
"name": "MongoDB with Panache",
"labels": [
"mongo",
"mongodb",
"nosql",
"datastore",
"panache"
],
"groupId": "io.quarkus",
"artifactId": "quarkus-mongodb-panache"
},
{
"name": "Narayana JTA - Transaction manager",
"labels": [
Expand Down
2 changes: 2 additions & 0 deletions docs/src/main/asciidoc/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ include::quarkus-intro.adoc[tag=intro]
* link:kogito-guide.html[Using Kogito (business automation with processes and rules)]
* link:oauth2-guide.html[Using OAuth2 RBAC]
* link:tika-guide.html[Using Apache Tika]
* link:mongo-guide.html[Using MongoDB]
* link:mongodb-panache-guide.html[Simplified MongoDB with Panache]

* link:faq.html[FAQs]

Expand Down
3 changes: 3 additions & 0 deletions docs/src/main/asciidoc/mongo-guide.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -462,6 +462,9 @@ public class CodecFruitService {
}
----

== Simplifying MongoDB with Panache

The link:mongodb-panache-guide.html[MongoDB with Panache] extension facilitates the usage of MongoDB by providing active record style entities (and repositories) like you have in link:hibernate-orm-panache-guide.html[Hibernate ORM with Panache] and focuses on making your entities trivial and fun to write in Quarkus.

== Building a native executable

Expand Down
Loading

0 comments on commit b347c6d

Please sign in to comment.