public Builder scheduledDate(Date date) { jobRequestInstance.setScheduledDate(date == null ? date : new Date(date.getTime())); return this; }
@Test public void testExecutorServiceDisabling() throws Exception { String command = "invalidCommand"; Map<String, Object> data = new HashMap<String, Object>(); data.put("businessKey", BUSINESS_KEY); Calendar tomorrow = Calendar.getInstance(); tomorrow.add(Calendar.DATE, 1); JobRequestInstance jobRequestInstance = new JobRequestInstance(); jobRequestInstance.setCommand(command); jobRequestInstance.setData(data); jobRequestInstance.setScheduledDate(tomorrow.getTime()); // Executing fist command. try { jobServicesClient.scheduleRequest(jobRequestInstance); } catch (Exception e){ assertTrue(e instanceof KieServicesException); assertTrue(e.getMessage().contains("Invalid command type")); } }
@Test public void testScheduleSearchByKeyJob() throws Exception { int currentNumberOfRequests = jobServicesClient.getRequestsByBusinessKey(BUSINESS_KEY, 0, 100).size(); Calendar tomorrow = Calendar.getInstance(); tomorrow.add(Calendar.DATE, 1); JobRequestInstance jobRequestInstance = createJobRequestInstance(); jobRequestInstance.setScheduledDate(tomorrow.getTime()); Long jobId = jobServicesClient.scheduleRequest(jobRequestInstance); assertNotNull(jobId); assertTrue(jobId.longValue() > 0); List<RequestInfoInstance> result = jobServicesClient.getRequestsByBusinessKey(BUSINESS_KEY, 0, 100); assertNotNull(result); assertEquals(1 + currentNumberOfRequests, result.size()); List<RequestInfoInstance> queuedJobs = result.stream(). filter(n -> n.getStatus().equals(STATUS.QUEUED.name())).collect(Collectors.toList()); assertNotNull(queuedJobs); assertEquals(1, queuedJobs.size()); RequestInfoInstance expected = createExpectedRequestInfoInstance(jobId, STATUS.QUEUED); RequestInfoInstance queuedJob = queuedJobs.get(0); assertRequestInfoInstance(expected, queuedJob); result = jobServicesClient.getRequestsByBusinessKey(BUSINESS_KEY, Arrays.asList(STATUS.QUEUED.name()), 0, 100); assertNotNull(result); assertEquals(1, result.size()); assertRequestInfoInstance(expected, result.get(0)); jobServicesClient.cancelRequest(jobId); }
@Test public void testScheduleSearchByStatusAndCancelJob() { int currentNumberOfCancelled = jobServicesClient.getRequestsByStatus(Collections.singletonList(STATUS.CANCELLED.toString()), 0, 100).size(); Calendar tomorrow = Calendar.getInstance(); tomorrow.add(Calendar.DATE, 1); JobRequestInstance jobRequestInstance = createJobRequestInstance(); jobRequestInstance.setScheduledDate(tomorrow.getTime()); Long jobId = jobServicesClient.scheduleRequest(jobRequestInstance); assertNotNull(jobId); assertTrue( jobId.longValue() > 0); List<String> status = new ArrayList<String>(); status.add(STATUS.QUEUED.toString()); List<RequestInfoInstance> result = jobServicesClient.getRequestsByStatus(status, 0, 100); assertNotNull(result); assertEquals(1, result.size()); RequestInfoInstance jobRequest = result.get(0); RequestInfoInstance expected = createExpectedRequestInfoInstance(jobId, STATUS.QUEUED); assertRequestInfoInstance(expected, jobRequest); assertNotNull(jobRequest.getScheduledDate()); jobServicesClient.cancelRequest(jobId); result = jobServicesClient.getRequestsByStatus(status, 0, 100); assertNotNull(result); assertEquals(0, result.size()); // clear status to search only for canceled status.clear(); status.add(STATUS.CANCELLED.toString()); result = jobServicesClient.getRequestsByStatus(status, 0, 100); assertNotNull(result); assertEquals(1 + currentNumberOfCancelled, result.size()); }
jobRequestInstance.setCommand(firstCommand); jobRequestInstance.setData(data); jobRequestInstance.setScheduledDate(tomorrow.getTime()); jobRequestInstance.setCommand(secondCommand); jobRequestInstance.setData(data); jobRequestInstance.setScheduledDate(tomorrow.getTime());
@Test public void testScheduleViewAndCancelJob() { Calendar tomorrow = Calendar.getInstance(); tomorrow.add(Calendar.DATE, 1); JobRequestInstance jobRequestInstance = createJobRequestInstance(); jobRequestInstance.setScheduledDate(tomorrow.getTime()); Long jobId = jobServicesClient.scheduleRequest(jobRequestInstance); assertNotNull(jobId); assertTrue( jobId.longValue() > 0); RequestInfoInstance jobRequest = jobServicesClient.getRequestById(jobId, false, false); RequestInfoInstance expected = createExpectedRequestInfoInstance(jobId, STATUS.QUEUED); assertRequestInfoInstance(expected, jobRequest); assertNotNull(jobRequest.getScheduledDate()); jobServicesClient.cancelRequest(jobId); jobRequest = jobServicesClient.getRequestById(jobId, false, false); expected.setStatus(STATUS.CANCELLED.toString()); assertRequestInfoInstance(expected, jobRequest); }
jobRequestInstance.setScheduledDate(tomorrow.getTime()); jobRequestInstance.setData(data);