All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.lordofthejars.nosqlunit.neo4j.InMemoryNeo4j Maven / Gradle / Ivy

There is a newer version: 1.0.0
Show newest version
package com.lordofthejars.nosqlunit.neo4j;

import java.util.Map;

import org.junit.rules.ExternalResource;

public class InMemoryNeo4j extends ExternalResource {

	protected InMemoryNeo4jLifecycleManager inMemoryNeo4jLifecycleManager;

	private InMemoryNeo4j() {
		super();
	}

	public static class InMemoryNeo4jRuleBuilder {

		private InMemoryNeo4jLifecycleManager inMemoryNeo4jLifecycleManager;

		private InMemoryNeo4jRuleBuilder() {
			this.inMemoryNeo4jLifecycleManager = new InMemoryNeo4jLifecycleManager();
		}

		public static InMemoryNeo4jRuleBuilder newInMemoryNeo4j() {
			return new InMemoryNeo4jRuleBuilder();
		}

		public InMemoryNeo4jRuleBuilder configuration(Map parameters) {
			this.inMemoryNeo4jLifecycleManager.getConfigurationParameters().putAll(parameters);
			return this;
		}

		public InMemoryNeo4j build() {
			
			InMemoryNeo4j inMemoryNeo4j = new InMemoryNeo4j();
			inMemoryNeo4j.inMemoryNeo4jLifecycleManager = this.inMemoryNeo4jLifecycleManager;
			
			return inMemoryNeo4j;
		}

	}

	@Override
	protected void before() throws Throwable {
		this.inMemoryNeo4jLifecycleManager.startEngine();
	}

	@Override
	protected void after() {
		this.inMemoryNeo4jLifecycleManager.stopEngine();
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy