📄 schedulertest.java
字号:
package org.jbpm.scheduler;
import java.util.*;
import org.jbpm.*;
import org.jbpm.delegation.*;
import org.jbpm.model.scheduler.*;
import org.jbpm.persistence.*;
import org.jbpm.service.*;
import junit.framework.*;
public class SchedulerTest extends TestCase {
private static int nbrOfScheduledExecutions = 0;
private JbpmConfiguration jbpmConfiguration = new JbpmConfiguration( new Properties() );
private PersistenceSessionFactory persistenceSessionFactory = (PersistenceSessionFactory) jbpmConfiguration.instantiate( "jbpm.persistence.session.factory", PersistenceSessionFactory.class );
public static class SchedulableTestActionHandler implements ActionHandler {
public void execute(ExecutionContext executionContext) {
nbrOfScheduledExecutions++;
}
}
public void testSchedulerServer() throws Exception {
PersistenceSessionTx sessionTx = persistenceSessionFactory.createPersistenceSessionTx();
SchedulerService schedulerService = new SchedulerServiceImpl( sessionTx );
int currentCount = nbrOfScheduledExecutions;
Job job = new Job( "org.jbpm.scheduler.SchedulerTest$SchedulableTestActionHandler", 0 );
schedulerService.schedule( job );
schedulerService.schedule( job );
schedulerService.schedule( job );
sessionTx.commitAndClose();
sessionTx = persistenceSessionFactory.createPersistenceSessionTx();
SchedulerServerImpl schedulerServer = new SchedulerServerImpl( jbpmConfiguration );
schedulerServer.checkJobs();
assertEquals( currentCount+3, nbrOfScheduledExecutions );
}
public void testSchedulerCancellation() throws Exception {
PersistenceSessionTx sessionTx = persistenceSessionFactory.createPersistenceSessionTx();
SchedulerService schedulerService = new SchedulerServiceImpl( sessionTx );
int currentCount = nbrOfScheduledExecutions;
Job job = new Job( "org.jbpm.scheduler.SchedulerTest$SchedulableTestActionHandler", 0 );
schedulerService.schedule( job, "haleluya" );
schedulerService.schedule( job, "haleluya" );
sessionTx.commitAndClose();
sessionTx = persistenceSessionFactory.createPersistenceSessionTx();
schedulerService = new SchedulerServiceImpl( sessionTx );
schedulerService.cancel( "haleluya" );
sessionTx.commitAndClose();
sessionTx = persistenceSessionFactory.createPersistenceSessionTx();
SchedulerServerImpl schedulerServer = new SchedulerServerImpl( jbpmConfiguration );
schedulerServer.checkJobs();
assertEquals( currentCount, nbrOfScheduledExecutions );
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -