Skip to content

Commit

Permalink
Upgrade to Mongock 5.1.6
Browse files Browse the repository at this point in the history
  • Loading branch information
Matt Raible committed Oct 13, 2022
1 parent 14503ed commit 3cf3bd5
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 23 deletions.
4 changes: 2 additions & 2 deletions generators/server/templates/quarkus/gradle.properties.ejs
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ embeddedRedisVersion=0.6
camel_quarkus_jackson_version=1.5.0
<%_ } _%>
<%_ if (databaseType === 'mongodb') { _%>
mongockBom_version=4.1.19
mongodb_driverSync_version=4.1.1
mongockBom_version=5.1.6
mongodb_driverSync_version=5.1.6
commons_vfs2_version=2.0
graal_version=21.0.0.2
<%_ } _%>
Expand Down
2 changes: 1 addition & 1 deletion generators/server/templates/quarkus/pom.xml.ejs
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@
<camel-quarkus-jackson.version>2.13.0</camel-quarkus-jackson.version>
<%_ } _%>
<%_ if (databaseType === 'mongodb') { _%>
<mongock-bom.version>4.1.19</mongock-bom.version>
<mongock-bom.version>5.1.6</mongock-bom.version>
<commons-vfs2.version>2.0</commons-vfs2.version>
<graal.version>21.0.0.2</graal.version>
<%_ } _%>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@
-%>
package <%=packageName%>.config;

import com.github.cloudyrock.mongock.MongockAnnotationProcessor;
import com.github.cloudyrock.mongock.driver.mongodb.sync.v4.driver.MongoSync4Driver;
import com.github.cloudyrock.standalone.MongockStandalone;
import com.github.cloudyrock.mongock.ChangeLog;
import com.mongodb.MongoClientSettings;
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.oracle.svm.core.annotate.AutomaticFeature;
import io.mongock.driver.mongodb.sync.v4.driver.MongoSync4Driver;
import io.mongock.runner.standalone.MongockStandalone;
import io.quarkus.runtime.StartupEvent;
import org.eclipse.microprofile.config.inject.ConfigProperty;
import org.graalvm.nativeimage.hosted.Feature;
Expand All @@ -33,21 +33,9 @@ import org.reflections.Reflections;

import javax.enterprise.context.ApplicationScoped;
import javax.enterprise.event.Observes;
import java.util.List;
import java.util.stream.Collectors;

@ApplicationScoped
public class MongockConfiguration {
private static final List<Class<?>> changeLogs;

static {
changeLogs = new MongockAnnotationProcessor().getChangeLogAnnotationClass()
.stream()
.flatMap(changeLogClass ->
new Reflections("<%=packageName%>.config.dbmigrations").getTypesAnnotatedWith(changeLogClass).stream()
)
.collect(Collectors.toList());
}

@ConfigProperty(name = "quarkus.mongodb.database")
String databaseName;
Expand All @@ -57,7 +45,7 @@ public class MongockConfiguration {
MongockStandalone
.builder()
.setDriver(MongoSync4Driver.withDefaultLock(mongoClient, databaseName))
.addChangeLogClasses(changeLogs)
.addMigrationScanPackage("<%=packageName%>.config.dbmigrations")
.buildRunner()
.execute();
}
Expand All @@ -66,10 +54,11 @@ public class MongockConfiguration {
private static class NativeSupport implements Feature {
@Override
public void beforeAnalysis(BeforeAnalysisAccess access) {
changeLogs.forEach(clazz -> {
RuntimeReflection.register(clazz);
RuntimeReflection.register(clazz.getConstructors());
RuntimeReflection.register(clazz.getMethods());
new Reflections("<%=packageName%>.config.dbmigrations")
.getTypesAnnotatedWith(ChangeLog.class).forEach(clazz -> {
RuntimeReflection.register(clazz);
RuntimeReflection.register(clazz.getConstructors());
RuntimeReflection.register(clazz.getMethods());
});
}
}
Expand Down

0 comments on commit 3cf3bd5

Please sign in to comment.