Class MultiThreadedBulkFilesystemImporter
- java.lang.Object
-
- org.alfresco.repo.bulkimport.impl.AbstractBulkFilesystemImporter
-
- org.alfresco.repo.bulkimport.impl.MultiThreadedBulkFilesystemImporter
-
- All Implemented Interfaces:
BulkFilesystemImporter,org.springframework.beans.factory.Aware,org.springframework.beans.factory.InitializingBean,org.springframework.context.ApplicationContextAware
- Direct Known Subclasses:
StripingBulkFilesystemImporter
public abstract class MultiThreadedBulkFilesystemImporter extends AbstractBulkFilesystemImporter
Performs a multi-threaded filesystem import into the repository using theBatchProcessor.- Since:
- 4.0
-
-
Field Summary
Fields Modifier and Type Field Description protected intdefaultBatchSizeprotected intdefaultLoggingIntervalprotected intdefaultNumThreadsprotected static org.apache.commons.logging.Loglogger-
Fields inherited from class org.alfresco.repo.bulkimport.impl.AbstractBulkFilesystemImporter
applicationContext, behaviourFilter, directoryAnalyser, fileFolderService, importStatus, jobLockService, permissionService, ruleService, transactionHelper, transactionService
-
-
Constructor Summary
Constructors Constructor Description MultiThreadedBulkFilesystemImporter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidbulkImportImpl(BulkImportParameters bulkImportParameters, NodeImporter nodeImporter, java.lang.String lockToken)Method that does the work of importing a filesystem using the BatchProcessor.protected BatchProcessor<ImportableItem>getBatchProcessor(BulkImportParameters bulkImportParameters, BatchProcessWorkProvider<ImportableItem> workProvider, int loggingInterval)protected intgetBatchSize(BulkImportParameters bulkImportParameters)intgetDefaultBatchSize()intgetDefaultNumThreads()protected intgetLoggingInterval(BulkImportParameters bulkImportParameters)protected intgetNumThreads(BulkImportParameters bulkImportParameters)protected BatchProcessor.BatchProcessWorker<ImportableItem>getWorker(BulkImportParameters bulkImportParameters, java.lang.String lockToken, NodeImporter nodeImporter, FilesystemTracker filesystemTracker)voidsetDefaultBatchSize(int defaultBatchSize)voidsetDefaultNumThreads(int defaultNumThreads)-
Methods inherited from class org.alfresco.repo.bulkimport.impl.AbstractBulkFilesystemImporter
afterPropertiesSet, asyncBulkImport, bulkImport, getFileName, getLock, getLockToken, getRepositoryPath, getStatus, mapToString, refreshLock, releaseLock, setApplicationContext, setBehaviourFilter, setDirectoryAnalyser, setFileFolderService, setImportStatus, setJobLockService, setPermissionService, setRuleService, setTransactionService, validateNodeRefIsWritableSpace, validateSourceIsReadableDirectory
-
-
-
-
Method Detail
-
getLoggingInterval
protected int getLoggingInterval(BulkImportParameters bulkImportParameters)
-
getBatchSize
protected int getBatchSize(BulkImportParameters bulkImportParameters)
-
getNumThreads
protected int getNumThreads(BulkImportParameters bulkImportParameters)
-
getWorker
protected BatchProcessor.BatchProcessWorker<ImportableItem> getWorker(BulkImportParameters bulkImportParameters, java.lang.String lockToken, NodeImporter nodeImporter, FilesystemTracker filesystemTracker)
-
getBatchProcessor
protected BatchProcessor<ImportableItem> getBatchProcessor(BulkImportParameters bulkImportParameters, BatchProcessWorkProvider<ImportableItem> workProvider, int loggingInterval)
-
setDefaultNumThreads
public void setDefaultNumThreads(int defaultNumThreads)
-
setDefaultBatchSize
public void setDefaultBatchSize(int defaultBatchSize)
-
getDefaultNumThreads
public int getDefaultNumThreads()
-
getDefaultBatchSize
public int getDefaultBatchSize()
-
bulkImportImpl
protected void bulkImportImpl(BulkImportParameters bulkImportParameters, NodeImporter nodeImporter, java.lang.String lockToken)
Method that does the work of importing a filesystem using the BatchProcessor.- Specified by:
bulkImportImplin classAbstractBulkFilesystemImporter- Parameters:
bulkImportParameters- The bulk import parameters to apply to this bulk import.nodeImporter- The node importer implementation that will import each node.lockToken- The lock token to use during the bulk import.
-
-