Skip to content

Commit

Permalink
Refactored DefaultIdGeneratorFactory to its own class
Browse files Browse the repository at this point in the history
Replaced use of CommonFactorys.defaultIdGeneratorFactory with direct instantiation of DefaultIdGeneratorFactory
  • Loading branch information
rickardoberg committed Mar 15, 2012
1 parent 0b2dc0e commit ffe99a1
Show file tree
Hide file tree
Showing 14 changed files with 78 additions and 56 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -500,7 +500,7 @@ protected FileSystemAbstraction createFileSystemAbstraction()

protected IdGeneratorFactory createIdGeneratorFactory()
{
return new CommonFactories.DefaultIdGeneratorFactory();
return new DefaultIdGeneratorFactory();
}

protected LockManager createLockManager()
Expand Down
27 changes: 1 addition & 26 deletions kernel/src/main/java/org/neo4j/kernel/CommonFactories.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,41 +19,16 @@
*/
package org.neo4j.kernel;

import java.util.HashMap;
import java.util.Map;
import org.neo4j.kernel.impl.core.LastCommittedTxIdSetter;
import org.neo4j.kernel.impl.nioneo.store.FileSystemAbstraction;
import org.neo4j.kernel.impl.nioneo.store.IdGenerator;
import org.neo4j.kernel.impl.nioneo.store.IdGeneratorImpl;
import org.neo4j.kernel.impl.transaction.TxHook;
import org.neo4j.kernel.impl.transaction.xaframework.DefaultLogBufferFactory;
import org.neo4j.kernel.impl.transaction.xaframework.LogBufferFactory;
import org.neo4j.kernel.impl.transaction.xaframework.RecoveryVerifier;

@Deprecated
public class CommonFactories
{
public static class DefaultIdGeneratorFactory implements IdGeneratorFactory
{
private final Map<IdType, IdGenerator> generators = new HashMap<IdType, IdGenerator>();

public IdGenerator open( FileSystemAbstraction fs, String fileName, int grabSize, IdType idType,
long highestIdInUse, boolean startup )
{
IdGenerator generator = new IdGeneratorImpl( fs, fileName, grabSize, idType.getMaxValue(), idType.allowAggressiveReuse() );
generators.put( idType, generator );
return generator;
}

public IdGenerator get( IdType idType )
{
return generators.get( idType );
}

public void create( FileSystemAbstraction fs, String fileName )
{
IdGeneratorImpl.createGenerator( fs, fileName );
}
}

public static IdGeneratorFactory defaultIdGeneratorFactory()
{
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
/**
* Copyright (c) 2002-2012 "Neo Technology,"
* Network Engine for Objects in Lund AB [http://neotechnology.com]
*
* This file is part of Neo4j.
*
* Neo4j is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

package org.neo4j.kernel;

import java.util.HashMap;
import java.util.Map;
import org.neo4j.kernel.impl.nioneo.store.FileSystemAbstraction;
import org.neo4j.kernel.impl.nioneo.store.IdGenerator;
import org.neo4j.kernel.impl.nioneo.store.IdGeneratorImpl;

/**
* TODO
*/
public class DefaultIdGeneratorFactory
implements IdGeneratorFactory
{
private final Map<IdType, IdGenerator> generators = new HashMap<IdType, IdGenerator>();

public IdGenerator open( FileSystemAbstraction fs, String fileName, int grabSize, IdType idType,
long highestIdInUse, boolean startup )
{
IdGenerator generator = new IdGeneratorImpl( fs, fileName, grabSize, idType.getMaxValue(), idType.allowAggressiveReuse() );
generators.put( idType, generator );
return generator;
}

public IdGenerator get( IdType idType )
{
return generators.get( idType );
}

public void create( FileSystemAbstraction fs, String fileName )
{
IdGeneratorImpl.createGenerator( fs, fileName );
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,9 @@
import org.neo4j.graphdb.RelationshipType;
import org.neo4j.graphdb.factory.GraphDatabaseSetting;
import org.neo4j.graphdb.factory.GraphDatabaseSettings;
import org.neo4j.kernel.CommonFactories;
import org.neo4j.kernel.Config;
import org.neo4j.kernel.DefaultFileSystemAbstraction;
import org.neo4j.kernel.DefaultIdGeneratorFactory;
import org.neo4j.kernel.EmbeddedGraphDatabase;
import org.neo4j.kernel.IdGeneratorFactory;
import org.neo4j.kernel.IdType;
Expand Down Expand Up @@ -101,7 +101,7 @@ public BatchInserterImpl( String storeDir,
Config config = new Config( StringLogger.DEV_NULL, fileSystem, params );
boolean dump = config.getBoolean( GraphDatabaseSettings.dump_configuration );
this.storeDir = storeDir;
this.idGeneratorFactory = CommonFactories.defaultIdGeneratorFactory();
this.idGeneratorFactory = new DefaultIdGeneratorFactory();

StoreFactory sf = new StoreFactory( config,idGeneratorFactory, fileSystem, null, StringLogger.DEV_NULL, null);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
import org.neo4j.graphdb.factory.GraphDatabaseSetting;
import org.neo4j.graphdb.factory.GraphDatabaseSettings;
import org.neo4j.kernel.AbstractGraphDatabase;
import org.neo4j.kernel.CommonFactories;
import org.neo4j.kernel.DefaultIdGeneratorFactory;
import org.neo4j.kernel.IdGeneratorFactory;

/**
Expand Down Expand Up @@ -166,7 +166,7 @@ private static Map<Object, Object> defaultParams()
}
params.put( GraphDatabaseSettings.rebuild_idgenerators_fast.name(), GraphDatabaseSetting.TRUE );

params.put( IdGeneratorFactory.class, new CommonFactories.DefaultIdGeneratorFactory() );
params.put( IdGeneratorFactory.class, new DefaultIdGeneratorFactory() );
return params;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
import java.util.Map;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.factory.GraphDatabaseFactory;
import org.neo4j.kernel.CommonFactories;
import org.neo4j.kernel.Config;
import org.neo4j.kernel.DefaultFileSystemAbstraction;
import org.neo4j.kernel.impl.nioneo.store.FileSystemAbstraction;
Expand Down Expand Up @@ -65,7 +64,7 @@ private void run( String legacyStoreDirectory, String targetStoreDirectory ) thr
File targetStoreFile = new File( targetStoreDirectory, NeoStore.DEFAULT_NAME );
config.put( "neo_store", targetStoreFile.getPath() );
FileSystemAbstraction fileSystem = new DefaultFileSystemAbstraction();
NeoStore neoStore = new StoreFactory(new Config( StringLogger.SYSTEM, fileSystem, config), CommonFactories.defaultIdGeneratorFactory(), fileSystem, null, StringLogger.SYSTEM, null).createNeoStore(targetStoreFile.getPath());
NeoStore neoStore = new StoreFactory(new Config( StringLogger.SYSTEM, fileSystem, config), new DefaultIdGeneratorFactory(), fileSystem, null, StringLogger.SYSTEM, null).createNeoStore(targetStoreFile.getPath());

long startTime = System.currentTimeMillis();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@
import org.neo4j.graphdb.factory.GraphDatabaseSettings;
import org.neo4j.kernel.AbstractGraphDatabase;
import org.neo4j.kernel.Config;
import org.neo4j.kernel.DefaultIdGeneratorFactory;
import org.neo4j.kernel.IdGeneratorFactory;
import org.neo4j.kernel.impl.util.StringLogger;
import org.neo4j.test.ImpermanentGraphDatabase;
Expand All @@ -54,7 +55,6 @@
import org.neo4j.tooling.GlobalGraphOperations;

import static org.junit.Assert.*;
import static org.neo4j.kernel.CommonFactories.*;

@RunWith( Suite.class )
@SuiteClasses( { IdGeneratorRebuildFailureEmulationTest.FailureBeforeRebuild.class,
Expand Down Expand Up @@ -150,7 +150,7 @@ public void initialize()
graphdb.shutdown();
Map<String, String> config = new HashMap<String, String>();
config.put( GraphDatabaseSettings.rebuild_idgenerators_fast.name(), GraphDatabaseSetting.FALSE );
factory = new StoreFactory( new Config( StringLogger.SYSTEM, fs, config ), defaultIdGeneratorFactory(), fs, null, StringLogger.SYSTEM, null );
factory = new StoreFactory( new Config( StringLogger.SYSTEM, fs, config ), new DefaultIdGeneratorFactory(), fs, null, StringLogger.SYSTEM, null );
}

@After
Expand Down Expand Up @@ -258,7 +258,7 @@ protected FileSystemAbstraction createFileSystemAbstraction()
@Override
protected IdGeneratorFactory createIdGeneratorFactory()
{
return defaultIdGeneratorFactory();
return new DefaultIdGeneratorFactory();
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
import java.util.Map;
import org.junit.Ignore;
import org.junit.Test;
import org.neo4j.kernel.CommonFactories;
import org.neo4j.kernel.Config;
import org.neo4j.kernel.DefaultFileSystemAbstraction;
import org.neo4j.kernel.impl.storemigration.StoreMigrator;
Expand All @@ -49,7 +48,7 @@ public void allStoresShouldHaveTheCurrentVersionIdentifier() throws IOException
Map<String,String> config = new HashMap<String, String>();
config.put( "neo_store", storeFileName );
FileSystemAbstraction fileSystem = new DefaultFileSystemAbstraction();
StoreFactory sf = new StoreFactory(new Config( StringLogger.DEV_NULL, fileSystem, config ), CommonFactories.defaultIdGeneratorFactory(), fileSystem, null, StringLogger.SYSTEM, null);
StoreFactory sf = new StoreFactory(new Config( StringLogger.DEV_NULL, fileSystem, config ), new DefaultIdGeneratorFactory(), fileSystem, null, StringLogger.SYSTEM, null);
NeoStore neoStore = sf.createNeoStore(storeFileName);

CommonAbstractStore[] stores = {
Expand Down Expand Up @@ -83,7 +82,7 @@ public void shouldFailToCreateAStoreContainingOldVersionNumber() throws IOExcept
Config config = new Config( StringLogger.SYSTEM, fileSystem, new HashMap<String, String>( ) );

try {
new NodeStore( workingFile.getPath(), config, CommonFactories.defaultIdGeneratorFactory(), fileSystem, StringLogger.SYSTEM );
new NodeStore( workingFile.getPath(), config, new DefaultIdGeneratorFactory(), fileSystem, StringLogger.SYSTEM );
fail( "Should have thrown exception" );
} catch ( NotCurrentStoreVersionException e ) {
//expected
Expand All @@ -104,7 +103,7 @@ public void neoStoreHasCorrectStoreVersionField() throws IOException
Map<String,String> config = new HashMap<String, String>();
config.put( "neo_store", storeFileName );
FileSystemAbstraction fileSystem = new DefaultFileSystemAbstraction();
StoreFactory sf = new StoreFactory(new Config(StringLogger.DEV_NULL, fileSystem, config), CommonFactories.defaultIdGeneratorFactory(), fileSystem, null, StringLogger.SYSTEM, null);
StoreFactory sf = new StoreFactory(new Config(StringLogger.DEV_NULL, fileSystem, config), new DefaultIdGeneratorFactory(), fileSystem, null, StringLogger.SYSTEM, null);
NeoStore neoStore = sf.createNeoStore(storeFileName);
// The first checks the instance method, the other the public one
assertEquals( CommonAbstractStore.ALL_STORES_VERSION,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@
import java.util.logging.Logger;
import org.junit.Test;
import org.neo4j.helpers.collection.MapUtil;
import org.neo4j.kernel.CommonFactories;
import org.neo4j.kernel.Config;
import org.neo4j.kernel.DefaultFileSystemAbstraction;
import org.neo4j.kernel.IdGeneratorFactory;
Expand All @@ -47,7 +46,7 @@
public class TestDynamicStore
{
public static IdGeneratorFactory ID_GENERATOR_FACTORY =
CommonFactories.defaultIdGeneratorFactory();
new DefaultIdGeneratorFactory();
public static FileSystemAbstraction FILE_SYSTEM =
new DefaultFileSystemAbstraction();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
import org.neo4j.graphdb.factory.GraphDatabaseFactory;
import org.neo4j.kernel.Config;
import org.neo4j.kernel.DefaultFileSystemAbstraction;
import org.neo4j.kernel.DefaultIdGeneratorFactory;
import org.neo4j.kernel.GraphDatabaseSPI;
import org.neo4j.kernel.impl.core.GraphProperties;
import org.neo4j.kernel.impl.util.StringLogger;
Expand All @@ -49,7 +50,6 @@
import static java.util.Arrays.*;
import static org.junit.Assert.*;
import static org.neo4j.helpers.collection.IteratorUtil.*;
import static org.neo4j.kernel.CommonFactories.*;
import static org.neo4j.kernel.impl.util.IoPrimitiveUtils.*;
import static org.neo4j.test.TargetDirectory.*;

Expand Down Expand Up @@ -186,7 +186,7 @@ public void firstRecordOtherThanZeroIfNotFirst() throws Exception
db.shutdown();

FileSystemAbstraction fileSystem = new DefaultFileSystemAbstraction();
NeoStore neoStore = new StoreFactory(new Config( StringLogger.DEV_NULL, fileSystem, Collections.<String,String>emptyMap()), defaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null).newNeoStore(new File( storeDir, NeoStore.DEFAULT_NAME ).getAbsolutePath());
NeoStore neoStore = new StoreFactory(new Config( StringLogger.DEV_NULL, fileSystem, Collections.<String,String>emptyMap()), new DefaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null).newNeoStore(new File( storeDir, NeoStore.DEFAULT_NAME ).getAbsolutePath());
long prop = neoStore.getGraphNextProp();
assertTrue( prop != 0 );
neoStore.close();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@
import org.neo4j.helpers.Pair;
import org.neo4j.helpers.collection.CombiningIterable;
import org.neo4j.helpers.collection.MapUtil;
import org.neo4j.kernel.CommonFactories;
import org.neo4j.kernel.Config;
import org.neo4j.kernel.DefaultFileSystemAbstraction;
import org.neo4j.kernel.impl.AbstractNeo4jTestCase;
Expand Down Expand Up @@ -99,7 +98,7 @@ public void setUpNeoStore() throws Exception

FileSystemAbstraction fileSystem = new DefaultFileSystemAbstraction();
Config config = new Config( StringLogger.SYSTEM, fileSystem, new HashMap<String,String>( ) );
StoreFactory sf = new StoreFactory(config, CommonFactories.defaultIdGeneratorFactory(), fileSystem, null, StringLogger.SYSTEM, null);
StoreFactory sf = new StoreFactory(config, new DefaultIdGeneratorFactory(), fileSystem, null, StringLogger.SYSTEM, null);
sf.createNeoStore(file( "neo" )).close();
}

Expand Down Expand Up @@ -154,7 +153,7 @@ private void initializeStores() throws IOException
"store_dir", path(),
"neo_store", file("neo"),
"logical_log", file("nioneo_logical.log")) );
StoreFactory sf = new StoreFactory(config, CommonFactories.defaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null);
StoreFactory sf = new StoreFactory(config, new DefaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null);

ds = new NeoStoreXaDataSource(config, sf, fileSystem, lockManager, lockReleaser, StringLogger.DEV_NULL,
new XaFactory(config, TxIdGenerator.DEFAULT, new PlaceboTm(),
Expand Down Expand Up @@ -1026,7 +1025,7 @@ public void testSetBlockSize() throws Exception
FileSystemAbstraction fileSystem = new DefaultFileSystemAbstraction();
Config config = new Config(StringLogger.SYSTEM, fileSystem, MapUtil.stringMap( "string_block_size", "62",
"array_block_size", "302" ));
StoreFactory sf = new StoreFactory(config, CommonFactories.defaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null);
StoreFactory sf = new StoreFactory(config, new DefaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null);
sf.createNeoStore(file( "neo" )).close();


Expand All @@ -1049,7 +1048,7 @@ public void setVersion() throws Exception

FileSystemAbstraction fileSystem = new DefaultFileSystemAbstraction();
StoreFactory sf = new StoreFactory(new Config( StringLogger.DEV_NULL, fileSystem, new HashMap<String, String>( ) ),
CommonFactories.defaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null);
new DefaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null);

NeoStore neoStore = sf.newNeoStore(new File( storeDir, NeoStore.DEFAULT_NAME ).getAbsolutePath());
assertEquals( 12, neoStore.getVersion() );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
import java.util.List;
import org.junit.Test;
import org.neo4j.helpers.collection.MapUtil;
import org.neo4j.kernel.CommonFactories;
import org.neo4j.kernel.Config;
import org.neo4j.kernel.DefaultFileSystemAbstraction;
import org.neo4j.kernel.IdGeneratorFactory;
Expand All @@ -38,7 +37,7 @@
public class TestStore
{
public static IdGeneratorFactory ID_GENERATOR_FACTORY =
CommonFactories.defaultIdGeneratorFactory();
new DefaultIdGeneratorFactory();
public static FileSystemAbstraction FILE_SYSTEM =
new DefaultFileSystemAbstraction();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,6 @@
import org.neo4j.graphdb.RelationshipType;
import org.neo4j.helpers.Pair;
import org.neo4j.helpers.collection.MapUtil;
import org.neo4j.kernel.CommonFactories;
import org.neo4j.kernel.Config;
import org.neo4j.kernel.DefaultFileSystemAbstraction;
import org.neo4j.kernel.impl.AbstractNeo4jTestCase;
Expand Down Expand Up @@ -122,7 +121,7 @@ public void setUpNeoStore() throws Exception
propertyIndexes = new HashMap<String, PropertyIndex>();

FileSystemAbstraction fileSystem = new DefaultFileSystemAbstraction();
StoreFactory sf = new StoreFactory(new Config( StringLogger.DEV_NULL, fileSystem, Collections.<String,String>emptyMap() ), CommonFactories.defaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null);
StoreFactory sf = new StoreFactory(new Config( StringLogger.DEV_NULL, fileSystem, Collections.<String,String>emptyMap() ), new DefaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null);
sf.createNeoStore(file( "neo" )).close();

lockManager = getEmbeddedGraphDb().getLockManager();
Expand Down Expand Up @@ -417,7 +416,7 @@ private NeoStoreXaDataSource newNeoStore() throws InstantiationException,
"neo_store", file( "neo" ),
"logical_log", file( "nioneo_logical.log" ) ));

StoreFactory sf = new StoreFactory(config, CommonFactories.defaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null);
StoreFactory sf = new StoreFactory(config, new DefaultIdGeneratorFactory(), fileSystem, null, StringLogger.DEV_NULL, null);

PlaceboTm txManager = new PlaceboTm();
LogBufferFactory logBufferFactory = new DefaultLogBufferFactory();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@
import java.io.PrintStream;
import java.util.HashMap;
import java.util.Properties;
import org.neo4j.kernel.CommonFactories;
import org.neo4j.kernel.Config;
import org.neo4j.kernel.DefaultFileSystemAbstraction;
import org.neo4j.kernel.impl.nioneo.store.FileSystemAbstraction;
Expand Down Expand Up @@ -98,7 +97,7 @@ public int run()
Config conf = new Config( StringLogger.SYSTEM, fileSystem, config );
StoreUpgrader storeUpgrader = new StoreUpgrader( conf, StringLogger.SYSTEM,new ConfigMapUpgradeConfiguration( conf ),
new UpgradableDatabase(), new StoreMigrator( new VisibleMigrationProgressMonitor( out ) ),
new DatabaseFiles(), CommonFactories.defaultIdGeneratorFactory(), fileSystem );
new DatabaseFiles(), new DefaultIdGeneratorFactory(), fileSystem );

try
{
Expand Down

0 comments on commit ffe99a1

Please sign in to comment.