本文整理汇总了Java中org.alfresco.repo.batch.BatchProcessWorkProvider类的典型用法代码示例。如果您正苦于以下问题:Java BatchProcessWorkProvider类的具体用法?Java BatchProcessWorkProvider怎么用?Java BatchProcessWorkProvider使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
BatchProcessWorkProvider类属于org.alfresco.repo.batch包,在下文中一共展示了BatchProcessWorkProvider类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getBatchProcessor
import org.alfresco.repo.batch.BatchProcessWorkProvider; //导入依赖的package包/类
protected BatchProcessor<ImportableItem> getBatchProcessor(final BulkImportParameters bulkImportParameters,
final BatchProcessWorkProvider<ImportableItem> workProvider, final int loggingInterval)
{
final int numThreads = getNumThreads(bulkImportParameters);
final int batchSize = getBatchSize(bulkImportParameters);
importStatus.setNumThreads(numThreads);
importStatus.setBatchSize(batchSize);
BatchProcessor<ImportableItem> batchProcessor = new BatchProcessor<ImportableItem>(
"Bulk Filesystem Import",
transactionHelper,
workProvider,
numThreads, batchSize,
applicationContext,
logger, loggingInterval);
return batchProcessor;
}
开发者ID:Alfresco,项目名称:alfresco-repository,代码行数:20,代码来源:MultiThreadedBulkFilesystemImporter.java
示例2: getWorkProvider
import org.alfresco.repo.batch.BatchProcessWorkProvider; //导入依赖的package包/类
@Override
public BatchProcessWorkProvider<ImportableItem> getWorkProvider()
{
BatchProcessWorkProvider<ImportableItem> provider = new BatchProcessWorkProvider<ImportableItem>()
{
@Override
public int getTotalEstimatedWorkSize()
{
return count();
}
@Override
public Collection<ImportableItem> getNextWork()
{
// TODO perhaps some multiple of the batchSize to limit calls
// to getNextWork? Add this to repository.properties.
return getImportableItems(batchSize*1000);
}
};
return provider;
}
开发者ID:Alfresco,项目名称:alfresco-repository,代码行数:23,代码来源:StripingFilesystemTracker.java
示例3: doWork
import org.alfresco.repo.batch.BatchProcessWorkProvider; //导入依赖的package包/类
/**
* @param progress the thread-safe progress
*/
private synchronized void doWork(NodeStringLengthWorkResult progress) throws Exception
{
// Build batch processor
BatchProcessWorkProvider<NodePropertyEntity> workProvider = new NodeStringLengthWorkProvider(progress);
BatchProcessWorker<NodePropertyEntity> worker = new NodeStringLengthBatch(progress);
RetryingTransactionHelper retryingTransactionHelper = transactionService.getRetryingTransactionHelper();
retryingTransactionHelper.setForceWritable(true);
BatchProcessor<NodePropertyEntity> batchProcessor = new BatchProcessor<NodePropertyEntity>(
"NodeStringLengthWorker",
retryingTransactionHelper,
workProvider,
threadCount,
batchSize,
ctx,
logger,
1000);
batchProcessor.process(worker, true);
}
开发者ID:Alfresco,项目名称:alfresco-repository,代码行数:23,代码来源:NodeStringLengthWorker.java
示例4: doWork
import org.alfresco.repo.batch.BatchProcessWorkProvider; //导入依赖的package包/类
/**
* @param progress the thread-safe progress
*/
private synchronized void doWork(UpgradePasswordHashWorkResult progress) throws Exception
{
// Build batch processor
BatchProcessWorkProvider<Long> workProvider = new UpgradePasswordHashWorkProvider(progress);
BatchProcessWorker<Long> worker = new UpgradePasswordHashBatch(progress);
RetryingTransactionHelper retryingTransactionHelper = transactionService.getRetryingTransactionHelper();
retryingTransactionHelper.setForceWritable(true);
//Create the QNames if they don't exist
retryingTransactionHelper.doInTransaction(new RetryingTransactionHelper.RetryingTransactionCallback<Void>()
{
@Override
public Void execute() throws Throwable
{
qnameDAO.getOrCreateQName(ContentModel.PROP_PASSWORD_HASH);
qnameDAO.getOrCreateQName(ContentModel.PROP_HASH_INDICATOR);
return null;
}
}, false, true);
BatchProcessor<Long> batchProcessor = new BatchProcessor<Long>(
"UpgradePasswordHashWorker",
retryingTransactionHelper,
workProvider,
threadCount,
batchSize,
ctx,
logger,
1000);
batchProcessor.process(worker, true);
}
开发者ID:Alfresco,项目名称:alfresco-repository,代码行数:35,代码来源:UpgradePasswordHashWorker.java
示例5: getArchivedNodesWorkProvider
import org.alfresco.repo.batch.BatchProcessWorkProvider; //导入依赖的package包/类
/**
* @return Returns a work provider for batch processing
*
* @since 3.3.4
*/
private BatchProcessWorkProvider<NodeRef> getArchivedNodesWorkProvider(final StoreRef originalStoreRef, final String lockToken)
{
return new BatchProcessWorkProvider<NodeRef>()
{
private VmShutdownListener vmShutdownLister = new VmShutdownListener("getArchivedNodesWorkProvider");
private List<NodeRef> nodeRefs;
private boolean done;
private synchronized List<NodeRef> getNodeRefs()
{
if (nodeRefs == null)
{
nodeRefs = getArchivedNodes(originalStoreRef);
}
return nodeRefs;
}
/**
* @return Returns 0, always
*/
public synchronized int getTotalEstimatedWorkSize()
{
return 0;
}
public synchronized Collection<NodeRef> getNextWork()
{
if (vmShutdownLister.isVmShuttingDown())
{
return Collections.emptyList();
}
// Make sure we still have the lock
try
{
// TODO: Replace with joblock callback mechanism that provides shutdown hints
jobLockService.refreshLock(lockToken, LOCK_QNAME, LOCK_TTL);
}
catch (LockAcquisitionException e)
{
// This is OK. We don't have the lock so just quit
return Collections.emptyList();
}
if (done)
{
return Collections.emptyList();
}
else
{
done = true;
return getNodeRefs();
}
}
};
}
开发者ID:Alfresco,项目名称:alfresco-repository,代码行数:58,代码来源:NodeArchiveServiceImpl.java
示例6: getWorkProvider
import org.alfresco.repo.batch.BatchProcessWorkProvider; //导入依赖的package包/类
public BatchProcessWorkProvider<ImportableItem> getWorkProvider();
开发者ID:Alfresco,项目名称:alfresco-repository,代码行数:2,代码来源:FilesystemTracker.java
注:本文中的org.alfresco.repo.batch.BatchProcessWorkProvider类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论