Class AbstractBulkFilesystemImporter
- java.lang.Object
-
- org.alfresco.repo.bulkimport.impl.AbstractBulkFilesystemImporter
-
- All Implemented Interfaces:
BulkFilesystemImporter,org.springframework.beans.factory.Aware,org.springframework.beans.factory.InitializingBean,org.springframework.context.ApplicationContextAware
- Direct Known Subclasses:
MultiThreadedBulkFilesystemImporter
public abstract class AbstractBulkFilesystemImporter extends java.lang.Object implements BulkFilesystemImporter, org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationContextAware
- Since:
- 4.0
-
-
Field Summary
Fields Modifier and Type Field Description protected org.springframework.context.ApplicationContextapplicationContextprotected BehaviourFilterbehaviourFilterprotected DirectoryAnalyserdirectoryAnalyserprotected FileFolderServicefileFolderServiceprotected BulkImportStatusImplimportStatusprotected JobLockServicejobLockServiceprotected static org.apache.commons.logging.Logloggerprotected org.alfresco.service.cmr.security.PermissionServicepermissionServiceprotected RuleServiceruleServiceprotected RetryingTransactionHelpertransactionHelperprotected TransactionServicetransactionService
-
Constructor Summary
Constructors Constructor Description AbstractBulkFilesystemImporter()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidafterPropertiesSet()voidasyncBulkImport(BulkImportParameters bulkImportParameters, NodeImporter nodeImporter)Initiates a bulk filesystem import asynchronously i.e.voidbulkImport(BulkImportParameters bulkImportParameters, NodeImporter nodeImporter)Initiates a bulk filesystem import.protected abstract voidbulkImportImpl(BulkImportParameters bulkImportParameters, NodeImporter nodeImporter, java.lang.String lockToken)protected java.lang.StringgetFileName(java.io.File file)protected java.lang.StringgetLock(long time)Attempts to get the lock.protected java.lang.StringgetLockToken()protected java.lang.StringgetRepositoryPath(org.alfresco.service.cmr.repository.NodeRef nodeRef)BulkImportStatusgetStatus()protected java.lang.StringmapToString(java.util.Map<?,?> map)protected voidrefreshLock(java.lang.String lockToken, long time)protected voidreleaseLock(java.lang.String lockToken)voidsetApplicationContext(org.springframework.context.ApplicationContext applicationContext)voidsetBehaviourFilter(BehaviourFilter behaviourFilter)voidsetDirectoryAnalyser(DirectoryAnalyser directoryAnalyser)voidsetFileFolderService(FileFolderService fileFolderService)voidsetImportStatus(BulkImportStatusImpl importStatus)voidsetJobLockService(JobLockService jobLockService)voidsetPermissionService(org.alfresco.service.cmr.security.PermissionService permissionService)voidsetRuleService(RuleService ruleService)voidsetTransactionService(TransactionService transactionService)protected voidvalidateNodeRefIsWritableSpace(org.alfresco.service.cmr.repository.NodeRef target)voidvalidateSourceIsReadableDirectory(java.io.File source)
-
-
-
Field Detail
-
logger
protected static final org.apache.commons.logging.Log logger
-
applicationContext
protected org.springframework.context.ApplicationContext applicationContext
-
fileFolderService
protected FileFolderService fileFolderService
-
transactionService
protected TransactionService transactionService
-
permissionService
protected org.alfresco.service.cmr.security.PermissionService permissionService
-
transactionHelper
protected RetryingTransactionHelper transactionHelper
-
ruleService
protected RuleService ruleService
-
importStatus
protected BulkImportStatusImpl importStatus
-
directoryAnalyser
protected DirectoryAnalyser directoryAnalyser
-
jobLockService
protected JobLockService jobLockService
-
behaviourFilter
protected BehaviourFilter behaviourFilter
-
-
Method Detail
-
setRuleService
public void setRuleService(RuleService ruleService)
-
setBehaviourFilter
public void setBehaviourFilter(BehaviourFilter behaviourFilter)
-
setJobLockService
public void setJobLockService(JobLockService jobLockService)
-
setImportStatus
public void setImportStatus(BulkImportStatusImpl importStatus)
-
setDirectoryAnalyser
public final void setDirectoryAnalyser(DirectoryAnalyser directoryAnalyser)
-
setFileFolderService
public void setFileFolderService(FileFolderService fileFolderService)
-
setTransactionService
public void setTransactionService(TransactionService transactionService)
-
setPermissionService
public void setPermissionService(org.alfresco.service.cmr.security.PermissionService permissionService)
-
getStatus
public final BulkImportStatus getStatus()
- Specified by:
getStatusin interfaceBulkFilesystemImporter- Returns:
- A status object that describes the current state of the bulk filesystem importer.
- See Also:
BulkFilesystemImporter.getStatus()
-
afterPropertiesSet
public void afterPropertiesSet() throws java.lang.Exception- Specified by:
afterPropertiesSetin interfaceorg.springframework.beans.factory.InitializingBean- Throws:
java.lang.Exception
-
bulkImportImpl
protected abstract void bulkImportImpl(BulkImportParameters bulkImportParameters, NodeImporter nodeImporter, java.lang.String lockToken)
-
getLock
protected java.lang.String getLock(long time)
Attempts to get the lock. If the lock couldn't be taken, then null is returned.- Returns:
- Returns the lock token or null
-
refreshLock
protected void refreshLock(java.lang.String lockToken, long time)
-
releaseLock
protected void releaseLock(java.lang.String lockToken)
-
mapToString
protected final java.lang.String mapToString(java.util.Map<?,?> map)
-
getRepositoryPath
protected final java.lang.String getRepositoryPath(org.alfresco.service.cmr.repository.NodeRef nodeRef)
-
validateNodeRefIsWritableSpace
protected final void validateNodeRefIsWritableSpace(org.alfresco.service.cmr.repository.NodeRef target)
-
getFileName
protected java.lang.String getFileName(java.io.File file)
-
getLockToken
protected java.lang.String getLockToken()
-
validateSourceIsReadableDirectory
public void validateSourceIsReadableDirectory(java.io.File source)
-
asyncBulkImport
public void asyncBulkImport(BulkImportParameters bulkImportParameters, NodeImporter nodeImporter)
Description copied from interface:BulkFilesystemImporterInitiates a bulk filesystem import asynchronously i.e. in a background thread. Note: getStatus().inProgress() must be false prior to calling this method or an Exception will be thrown.- Specified by:
asyncBulkImportin interfaceBulkFilesystemImporter- Parameters:
bulkImportParameters- The target bulk import parameters.nodeImporter- The node importer.
-
bulkImport
public void bulkImport(BulkImportParameters bulkImportParameters, NodeImporter nodeImporter)
Description copied from interface:BulkFilesystemImporterInitiates a bulk filesystem import. Note: getStatus().inProgress() must be false prior to calling this method or an Exception will be thrown.- Specified by:
bulkImportin interfaceBulkFilesystemImporter- Parameters:
bulkImportParameters- The target bulk import parameters.nodeImporter- The node importer.- See Also:
BulkFilesystemImporter.bulkImport(org.alfresco.repo.bulkimport.BulkImportParameters, org.alfresco.repo.bulkimport.NodeImporter)
-
setApplicationContext
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) throws org.springframework.beans.BeansException- Specified by:
setApplicationContextin interfaceorg.springframework.context.ApplicationContextAware- Throws:
org.springframework.beans.BeansException
-
-