/* * Hibernate OGM, Domain model persistence for NoSQL datastores * * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>. */ package org.hibernate.ogm.utils; /** * Provides access to the backend specific test helper. * <p> * In case test helpers should be specific per dialect actually, this could be merged into {@link GridDialectType}. * * @author Sanne Grinovero <sanne@hibernate.org> * @author Gunnar Morling */ public enum GridDialectTestHelperType { HASHMAP( "org.hibernate.ogm.utils.HashMapTestHelper" ) { @Override public Class<GridDialectTestHelper> loadGridDialectTestHelperClass() { return null; //this one is special, we want it only as fallback when all others fail } }, INFINISPAN( "org.hibernate.ogm.datastore.infinispan.utils.InfinispanTestHelper" ), INFINISPAN_REMOTE( "org.hibernate.ogm.datastore.infinispanremote.utils.InfinispanRemoteTestHelper" ), MONGODB( "org.hibernate.ogm.datastore.mongodb.utils.MongoDBTestHelper" ), NEO4J( "org.hibernate.ogm.datastore.neo4j.utils.Neo4jTestHelper" ); private final String testHelperClassName; GridDialectTestHelperType(String testHelperClassName) { this.testHelperClassName = testHelperClassName; } public Class<GridDialectTestHelper> loadGridDialectTestHelperClass() { return TestHelper.loadClass( testHelperClassName ); } }