From 3d2e0e9f84a1081d639a142260a2039ce00e2e68 Mon Sep 17 00:00:00 2001 From: Carlos Ortiz <carlos.ortiz@craftercms.org> Date: Tue, 5 Nov 2013 17:07:59 -0600 Subject: [PATCH] Change de.flapdoodle.embed.mongo to 1.40, Change Documentations to match maven 3 and maven 3.1 --- pom.xml | 4 +- .../embedmongo/StartEmbeddedMongoMojo.java | 61 +++++++++---------- .../embedmongo/StopEmbeddedMongoMojo.java | 5 +- .../joelittlejohn/embedmongo/log/Loggers.java | 3 +- 4 files changed, 37 insertions(+), 36 deletions(-) diff --git a/pom.xml b/pom.xml index 1df3256..4e06141 100644 --- a/pom.xml +++ b/pom.xml @@ -105,12 +105,12 @@ <dependency> <groupId>de.flapdoodle.embed</groupId> <artifactId>de.flapdoodle.embed.mongo</artifactId> - <version>1.31</version> + <version>1.40</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit-dep</artifactId> - <version>4.10</version> + <version>4.11</version> <scope>test</scope> </dependency> </dependencies> diff --git a/src/main/java/com/github/joelittlejohn/embedmongo/StartEmbeddedMongoMojo.java b/src/main/java/com/github/joelittlejohn/embedmongo/StartEmbeddedMongoMojo.java index 2ee89da..5f6d230 100644 --- a/src/main/java/com/github/joelittlejohn/embedmongo/StartEmbeddedMongoMojo.java +++ b/src/main/java/com/github/joelittlejohn/embedmongo/StartEmbeddedMongoMojo.java @@ -42,19 +42,20 @@ import de.flapdoodle.embed.mongo.Command; import de.flapdoodle.embed.mongo.MongodExecutable; import de.flapdoodle.embed.mongo.MongodProcess; import de.flapdoodle.embed.mongo.MongodStarter; -import de.flapdoodle.embed.mongo.config.AbstractMongoConfig.Net; -import de.flapdoodle.embed.mongo.config.AbstractMongoConfig.Storage; -import de.flapdoodle.embed.mongo.config.AbstractMongoConfig.Timeout; import de.flapdoodle.embed.mongo.config.ArtifactStoreBuilder; import de.flapdoodle.embed.mongo.config.DownloadConfigBuilder; -import de.flapdoodle.embed.mongo.config.MongodConfig; +import de.flapdoodle.embed.mongo.config.IMongodConfig; +import de.flapdoodle.embed.mongo.config.MongodConfigBuilder; +import de.flapdoodle.embed.mongo.config.Net; import de.flapdoodle.embed.mongo.config.RuntimeConfigBuilder; +import de.flapdoodle.embed.mongo.config.Storage; +import de.flapdoodle.embed.mongo.distribution.IFeatureAwareVersion; import de.flapdoodle.embed.mongo.distribution.Version; +import de.flapdoodle.embed.mongo.distribution.Versions; import de.flapdoodle.embed.process.config.IRuntimeConfig; import de.flapdoodle.embed.process.config.io.ProcessOutput; import de.flapdoodle.embed.process.config.store.IDownloadConfig; import de.flapdoodle.embed.process.distribution.Distribution; -import de.flapdoodle.embed.process.distribution.GenericVersion; import de.flapdoodle.embed.process.distribution.IVersion; import de.flapdoodle.embed.process.exceptions.DistributionException; import de.flapdoodle.embed.process.runtime.ICommandLinePostProcessor; @@ -230,28 +231,25 @@ public class StartEmbeddedMongoMojo extends AbstractMojo { commandLinePostProcessor = new ICommandLinePostProcessor.Noop(); } - IRuntimeConfig runtimeConfig = new RuntimeConfigBuilder() - .defaults(Command.MongoD) - .processOutput(getOutputConfig()) - .artifactStore(getArtifactStore()) - .commandLinePostProcessor(commandLinePostProcessor) - .build(); + IRuntimeConfig runtimeConfig = new RuntimeConfigBuilder().defaults(Command.MongoD).processOutput + (getOutputConfig()).artifactStore(getArtifactStore()).commandLinePostProcessor + (commandLinePostProcessor).build(); if (randomPort) { port = PortUtils.allocateRandomPort(); } savePortToProjectProperties(); - MongodConfig mongoConfig = new MongodConfig(getVersion(), - new Net(bindIp, port, Network.localhostIsIPv6()), - new Storage(getDataDirectory(), null, 0), - new Timeout()); + IMongodConfig config = new MongodConfigBuilder().version(getVersion()).net(new Net(bindIp, port, + Network.localhostIsIPv6())).replication(new Storage(getDataDirectory(), null, 0)).build(); - executable = MongodStarter.getInstance(runtimeConfig).prepare(mongoConfig); + executable = MongodStarter.getInstance(runtimeConfig).prepare(config); } catch (UnknownHostException e) { throw new MojoExecutionException("Unable to determine if localhost is ipv6", e); } catch (DistributionException e) { throw new MojoExecutionException("Failed to download MongoDB distribution: " + e.withDistribution(), e); + } catch (IOException e) { + throw new MojoExecutionException("Unable to Config MongoDB: ", e); } try { @@ -294,21 +292,17 @@ public class StartEmbeddedMongoMojo extends AbstractMojo { case NONE: return Loggers.none(); default: - throw new MojoFailureException("Unexpected logging style encountered: \"" + logging + "\" -> " + loggingStyle); + throw new MojoFailureException("Unexpected logging style encountered: \"" + logging + "\" -> " + + loggingStyle); } } - private IArtifactStore getArtifactStore() - { - IDownloadConfig downloadConfig = new DownloadConfigBuilder() - .defaultsForCommand(Command.MongoD) - .downloadPath(downloadPath) - .build(); - IArtifactStore artifactStore = new ArtifactStoreBuilder() - .defaults(Command.MongoD) - .download(downloadConfig) - .build(); + private IArtifactStore getArtifactStore() { + IDownloadConfig downloadConfig = new DownloadConfigBuilder().defaultsForCommand(Command.MongoD).downloadPath + (downloadPath).build(); + IArtifactStore artifactStore = new ArtifactStoreBuilder().defaults(Command.MongoD).download(downloadConfig) + .build(); return artifactStore; } @@ -341,18 +335,23 @@ public class StartEmbeddedMongoMojo extends AbstractMojo { }); } - private IVersion getVersion() { + private IFeatureAwareVersion getVersion() { String versionEnumName = this.version.toUpperCase().replaceAll("\\.", "_"); if (versionEnumName.charAt(0) != 'V') { versionEnumName = "V" + versionEnumName; } - try { return Version.valueOf(versionEnumName); } catch (IllegalArgumentException e) { - getLog().warn("Unrecognised MongoDB version '" + this.version + "', this might be a new version that we don't yet know about. Attemping download anyway..."); - return new GenericVersion(this.version); + getLog().warn("Unrecognised MongoDB version '" + this.version + "', this might be a new version that we " + + "don't yet know about. Attemping download anyway..."); + return Versions.withFeatures(new IVersion() { + @Override + public String asInDownloadPath() { + return version; + } + }); } } diff --git a/src/main/java/com/github/joelittlejohn/embedmongo/StopEmbeddedMongoMojo.java b/src/main/java/com/github/joelittlejohn/embedmongo/StopEmbeddedMongoMojo.java index c8bd407..c786546 100644 --- a/src/main/java/com/github/joelittlejohn/embedmongo/StopEmbeddedMongoMojo.java +++ b/src/main/java/com/github/joelittlejohn/embedmongo/StopEmbeddedMongoMojo.java @@ -32,10 +32,11 @@ public class StopEmbeddedMongoMojo extends AbstractMojo { @Override public void execute() throws MojoExecutionException, MojoFailureException { - Object mongod = getPluginContext().get(StartEmbeddedMongoMojo.MONGOD_CONTEXT_PROPERTY_NAME); + MongodProcess mongod = (MongodProcess)getPluginContext().get(StartEmbeddedMongoMojo + .MONGOD_CONTEXT_PROPERTY_NAME); if (mongod != null) { - ((MongodProcess) mongod).stop(); + mongod.stop(); } else { throw new MojoFailureException("No mongod process found, it appears embedmongo:start was not called"); } diff --git a/src/main/java/com/github/joelittlejohn/embedmongo/log/Loggers.java b/src/main/java/com/github/joelittlejohn/embedmongo/log/Loggers.java index e67cf29..99e1a5f 100644 --- a/src/main/java/com/github/joelittlejohn/embedmongo/log/Loggers.java +++ b/src/main/java/com/github/joelittlejohn/embedmongo/log/Loggers.java @@ -15,6 +15,7 @@ */ package com.github.joelittlejohn.embedmongo.log; +import de.flapdoodle.embed.mongo.Command; import de.flapdoodle.embed.mongo.config.MongodProcessOutputConfig; import de.flapdoodle.embed.process.config.io.ProcessOutput; import de.flapdoodle.embed.process.io.NamedOutputStreamProcessor; @@ -35,7 +36,7 @@ public class Loggers { } public static ProcessOutput console() { - return MongodProcessOutputConfig.getDefaultInstance(); + return MongodProcessOutputConfig.getDefaultInstance(Command.MongoD); } public static ProcessOutput none() { -- GitLab