use of de.flapdoodle.embed.mongo.config.MongodConfigBuilder in project pac4j by pac4j.
the class MongoServer method start.
public void start(final int port) {
MongodStarter starter = MongodStarter.getDefaultInstance();
try {
IMongodConfig mongodConfig = new MongodConfigBuilder().version(Version.Main.PRODUCTION).net(new Net(port, Network.localhostIsIPv6())).build();
mongodExecutable = starter.prepare(mongodConfig);
mongodExecutable.start();
// populate
final MongoClient mongo = new MongoClient("localhost", port);
final MongoDatabase db = mongo.getDatabase("users");
db.createCollection("users");
final MongoCollection<Document> collection = db.getCollection("users");
final String password = PASSWORD_ENCODER.encode(PASSWORD);
Map<String, Object> properties1 = new HashMap<>();
properties1.put(USERNAME, GOOD_USERNAME);
properties1.put(PASSWORD, password);
properties1.put(FIRSTNAME, FIRSTNAME_VALUE);
collection.insertOne(new Document(properties1));
Map<String, Object> properties2 = new HashMap<>();
properties2.put(USERNAME, MULTIPLE_USERNAME);
properties2.put(PASSWORD, password);
collection.insertOne(new Document(properties2));
Map<String, Object> properties3 = new HashMap<>();
properties3.put(USERNAME, MULTIPLE_USERNAME);
properties3.put(PASSWORD, password);
collection.insertOne(new Document(properties3));
} catch (final IOException e) {
throw new RuntimeException(e);
}
}
use of de.flapdoodle.embed.mongo.config.MongodConfigBuilder in project embedmongo-maven-plugin by joelittlejohn.
the class StartMojo method executeStart.
@Override
@SuppressWarnings("unchecked")
public void executeStart() throws MojoExecutionException, MojoFailureException {
MongodExecutable executable;
try {
final List<String> mongodArgs = this.createMongodArgsList();
final ICommandLinePostProcessor commandLinePostProcessor = new ICommandLinePostProcessor() {
@Override
public List<String> process(final Distribution distribution, final List<String> args) {
args.addAll(mongodArgs);
return args;
}
};
IRuntimeConfig runtimeConfig = new RuntimeConfigBuilder().defaults(Command.MongoD).processOutput(getOutputConfig()).artifactStore(getArtifactStore()).commandLinePostProcessor(commandLinePostProcessor).build();
int port = getPort();
if (isRandomPort()) {
port = NetworkUtils.allocateRandomPort();
}
savePortToProjectProperties(port);
IMongodConfig config = new MongodConfigBuilder().version(getVersion()).net(new Net(bindIp, port, NetworkUtils.localhostIsIPv6())).replication(new Storage(getDataDirectory(), null, 0)).cmdOptions(new MongoCmdOptionsBuilder().enableAuth(authEnabled).useNoJournal(!journal).useStorageEngine(storageEngine).build()).build();
executable = MongodStarter.getInstance(runtimeConfig).prepare(config);
} 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 {
MongodProcess mongod = executable.start();
if (isWait()) {
while (true) {
try {
TimeUnit.MINUTES.sleep(5);
} catch (InterruptedException e) {
break;
}
}
}
getPluginContext().put(MONGOD_CONTEXT_PROPERTY_NAME, mongod);
} catch (IOException e) {
throw new MojoExecutionException("Unable to start the mongod", e);
}
}
use of de.flapdoodle.embed.mongo.config.MongodConfigBuilder in project main by JohnPeng739.
the class BaseTest method before.
@Before
public void before() {
try {
IMongodConfig config = new MongodConfigBuilder().version(Version.Main.PRODUCTION).net(new Net("localhost", 27017, Network.localhostIsIPv6())).build();
mongodExecutable = MongodStarter.getDefaultInstance().prepare(config);
mongod = mongodExecutable.start();
context = new AnnotationConfigApplicationContext(DalMongodbConfig.class);
} catch (Exception ex) {
ex.printStackTrace();
fail(ex.getMessage());
}
}
use of de.flapdoodle.embed.mongo.config.MongodConfigBuilder in project main by JohnPeng739.
the class BaseTest method before.
@Before
public void before() {
try {
IMongodConfig config = new MongodConfigBuilder().version(Version.Main.PRODUCTION).net(new Net("localhost", 27017, Network.localhostIsIPv6())).build();
mongodExecutable = MongodStarter.getDefaultInstance().prepare(config);
mongod = mongodExecutable.start();
context = new AnnotationConfigApplicationContext(CompsRbacMongodbConfig.class);
SessionDataStore sessionDataStore = context.getBean(SessionDataStore.class);
assertNotNull(sessionDataStore);
sessionDataStore.setCurrentUserCode("admin");
} catch (Exception ex) {
ex.printStackTrace();
fail(ex.getMessage());
}
}
use of de.flapdoodle.embed.mongo.config.MongodConfigBuilder in project engine by Lumeer.
the class EmbeddedMongoDb method createMongoConfig.
private static IMongodConfig createMongoConfig() {
try {
final MongodConfigBuilder builder = new MongodConfigBuilder();
builder.version(Version.Main.V3_6).net(new Net(HOST, PORT, Network.localhostIsIPv6()));
if (System.getProperty("os.name").toLowerCase().startsWith("mac")) {
builder.withLaunchArgument("--storageEngine", "mmapv1");
}
return builder.build();
} catch (IOException ex) {
throw new RuntimeException(ex);
}
}
Aggregations