Example usage for org.springframework.batch.core JobInstance getId

List of usage examples for org.springframework.batch.core JobInstance getId

Introduction

In this page you can find the example usage for org.springframework.batch.core JobInstance getId.

Prototype

public Long getId() 

Source Link

Usage

From source file:com.apress.prospringintegration.springbatch.integration.Main.java

public static void main(String[] args) throws Throwable {
    ClassPathXmlApplicationContext classPathXmlApplicationContext = new ClassPathXmlApplicationContext(
            "integration.xml");
    classPathXmlApplicationContext.start();

    JobLauncher jobLauncher = (JobLauncher) classPathXmlApplicationContext.getBean("jobLauncher");
    Job job = (Job) classPathXmlApplicationContext.getBean("importData");

    JobParametersBuilder jobParametersBuilder = new JobParametersBuilder();
    jobParametersBuilder.addDate("date", new Date());
    jobParametersBuilder.addString("input.file", "registrations");
    JobParameters jobParameters = jobParametersBuilder.toJobParameters();

    JobExecution jobExecution = jobLauncher.run(job, jobParameters);

    BatchStatus batchStatus = jobExecution.getStatus();
    while (batchStatus.isRunning()) {
        System.out.println("Still running...");
        Thread.sleep(1000);//from w w w  .  j  a  v  a2  s  .  c  o  m
    }

    System.out.println("Exit status: " + jobExecution.getExitStatus().getExitCode());
    JobInstance jobInstance = jobExecution.getJobInstance();
    System.out.println("job instance Id: " + jobInstance.getId());
}

From source file:com.apress.prospringintegration.springbatch.integration.IntegrationMain.java

public static void main(String[] args) throws Throwable {
    ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("integration.xml");
    context.start();//from w  w w  . ja v a 2 s. co  m

    MessageChannel launchChannel = context.getBean("launchChannel", MessageChannel.class);
    QueueChannel statusChannel = context.getBean("statusChannel", QueueChannel.class);

    Job job = (Job) context.getBean("importData");

    JobParametersBuilder jobParametersBuilder = new JobParametersBuilder();
    jobParametersBuilder.addDate("date", new Date());
    jobParametersBuilder.addString("input.file", "registrations");
    JobParameters jobParameters = jobParametersBuilder.toJobParameters();

    JobLaunchRequest jobLaunchRequest = new JobLaunchRequest(job, jobParameters);
    launchChannel.send(MessageBuilder.withPayload(jobLaunchRequest).build());

    Message<JobExecution> statusMessage = (Message<JobExecution>) statusChannel.receive();
    JobExecution jobExecution = statusMessage.getPayload();

    System.out.println(jobExecution);

    System.out.println("Exit status: " + jobExecution.getExitStatus().getExitCode());
    JobInstance jobInstance = jobExecution.getJobInstance();
    System.out.println("job instance Id: " + jobInstance.getId());
}

From source file:com.apress.prospringintegration.springbatch.partition.IntegrationPartitionMain.java

public static void main(String[] args) throws Throwable {
    ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("message-partition.xml");
    context.start();/*from w  w w  . ja va2  s  .  c o  m*/

    MessageChannel launchChannel = context.getBean("launchChannel", MessageChannel.class);
    QueueChannel statusChannel = context.getBean("statusChannel", QueueChannel.class);

    Job job = (Job) context.getBean("importData");
    JobParametersBuilder jobParametersBuilder = new JobParametersBuilder();
    jobParametersBuilder.addDate("date", new Date());
    jobParametersBuilder.addString("input.file", "registrations");
    JobParameters jobParameters = jobParametersBuilder.toJobParameters();

    JobLaunchRequest jobLaunchRequest = new JobLaunchRequest(job, jobParameters);

    launchChannel.send(MessageBuilder.withPayload(jobLaunchRequest).build());

    Message<JobExecution> statusMessage = (Message<JobExecution>) statusChannel.receive();
    JobExecution jobExecution = statusMessage.getPayload();

    System.out.println(jobExecution);
    System.out.println("Exit status: " + jobExecution.getExitStatus().getExitCode());

    JobInstance jobInstance = jobExecution.getJobInstance();
    System.out.println("job instance Id: " + jobInstance.getId());
}

From source file:org.cloudfoundry.workers.stocks.batch.NightlyStockSymbolRecorder.java

@Scheduled(fixedRate = 10 * 1000)
public void runNightlyStockPriceRecorder() throws Throwable {
    JobParameters params = new JobParametersBuilder().addDate("date", new Date()).toJobParameters();

    JobExecution jobExecution = jobLauncher.run(job, params);
    BatchStatus batchStatus = jobExecution.getStatus();
    while (batchStatus.isRunning()) {
        logger.info("Still running...");
        Thread.sleep(1000);/*from   www  .j  ava2  s .  c o  m*/
    }
    logger.info(String.format("Exit status: %s", jobExecution.getExitStatus().getExitCode()));
    JobInstance jobInstance = jobExecution.getJobInstance();
    logger.info(String.format("job instance Id: %d", jobInstance.getId()));
}

From source file:org.cloudfoundry.workers.twitter.batch.NightlyTweetRecorder.java

@Scheduled(fixedRate = 10 * 1000)
public void runNightlyTweetRecorder() throws Throwable {
    logger.info("Running nightly tweet recorder");
    JobParameters params = new JobParametersBuilder().addDate("date", new Date()).toJobParameters();

    JobExecution jobExecution = jobLauncher.run(job, params);
    BatchStatus batchStatus = jobExecution.getStatus();
    while (batchStatus.isRunning()) {
        logger.info("Still running...");
        Thread.sleep(1000);//from  w w  w .j a  va2  s .  c  o m
    }
    logger.info(String.format("Exit status: %s", jobExecution.getExitStatus().getExitCode()));
    JobInstance jobInstance = jobExecution.getJobInstance();
    logger.info(String.format("job instance Id: %d", jobInstance.getId()));
}

From source file:org.trpr.platform.batch.impl.spring.admin.repository.MapJobInstanceDao.java

public JobInstance getJobInstance(Long instanceId) {
    for (JobInstance instance : jobInstances) {
        if (instance.getId().equals(instanceId)) {
            return instance;
        }/*from   w  w  w  .  j av a2 s  .  c  o m*/
    }
    return null;
}

From source file:org.trpr.platform.batch.impl.spring.admin.repository.MapJobInstanceDao.java

public List<JobInstance> getJobInstances(String jobName, int start, int count) {
    List<JobInstance> result = new ArrayList<JobInstance>();
    for (JobInstance instance : jobInstances) {
        if (instance.getJobName().equals(jobName)) {
            result.add(instance);//from   www.ja va2 s .  c  o  m
        }
    }
    Collections.sort(result, new Comparator<JobInstance>() {
        // sort by ID descending
        public int compare(JobInstance o1, JobInstance o2) {
            return Long.signum(o2.getId() - o1.getId());
        }
    });

    int startIndex = Math.min(start, result.size());
    int endIndex = Math.min(start + count, result.size());
    return result.subList(startIndex, endIndex);
}

From source file:org.seedstack.monitoring.batch.internal.rest.jobinstance.JobInstanceResource.java

/**
 * Retrieves the list of job instances by job name.
 *
 * @param jobName  the job name//from   w w w.j  a v  a  2  s  . c  o m
 * @param startJob the start job
 * @param pageSize the page size
 * @return the response
 */
@GET
@Produces(MediaType.APPLICATION_JSON)
public Response listJobInstancesForJobs(@PathParam("jobName") String jobName,
        @DefaultValue("0") @QueryParam("startJob") int startJob,
        @DefaultValue("20") @QueryParam("pageSize") int pageSize) {

    try {

        Collection<JobInstance> result = jobService.listJobInstances(jobName, startJob, pageSize);
        Collection<JobInstanceRepresentation> jobInstancesRepresentations = new ArrayList<JobInstanceRepresentation>();
        for (JobInstance jobInstance : result) {
            Collection<JobExecutionInfo> executionRepresentations = new ArrayList<JobExecutionInfo>();

            Collection<JobExecution> jobExecutionsForJobInstance = jobService
                    .getJobExecutionsForJobInstance(jobName, jobInstance.getId());

            for (JobExecution jobExecution : jobExecutionsForJobInstance) {
                executionRepresentations
                        .add(new JobExecutionInfo(jobExecution, new GregorianCalendar().getTimeZone()));
                jobInstancesRepresentations.add(new JobInstanceRepresentation(jobInstance.getJobName(),
                        jobInstance.getId(), jobExecution.getJobParameters(), executionRepresentations));
            }

        }
        return Response.ok(jobInstancesRepresentations).build();
    } catch (NoSuchJobException e) {
        String error = "There is no such job (" + jobName + ")";
        return Response.status(Response.Status.BAD_REQUEST).entity(error).type(MediaType.TEXT_PLAIN).build();
    }

}

From source file:uk.ac.ebi.intact.editor.controller.dbmanager.ImportJobController.java

public void load(ComponentSystemEvent event) {

    if (!FacesContext.getCurrentInstance().isPostback()) {

        log.debug("Load job summary");
        List<JobInstance> existingJobs1 = getJobInstances("interactionMixImport");
        List<JobInstance> existingJobs2 = getJobInstances("complexImport");
        this.runningJobEvidence = getRunningJobExecutions("interactionMixImport");
        this.runningJobComplex = getRunningJobExecutions("complexImport");
        this.completedJobComplex = new ArrayList<JobExecution>();
        this.completedJobEvidence = new ArrayList<JobExecution>();

        for (JobInstance jobEvidence : existingJobs1) {
            List<JobExecution> allExecutions = getJobExecutions(jobEvidence.getId());
            this.completedJobEvidence.addAll(CollectionUtils.subtract(allExecutions, runningJobEvidence));
        }/* w  w w.ja  v a  2  s .co m*/
        for (JobInstance jobComplex : existingJobs2) {
            List<JobExecution> allExecutions = getJobExecutions(jobComplex.getId());
            this.completedJobComplex.addAll(CollectionUtils.subtract(allExecutions, runningJobComplex));
        }
    }
}

From source file:org.trpr.platform.batch.impl.spring.admin.SimpleJobService.java

/**
 * Interface method implementation//from  w  w w.j  av a 2  s . c  om
 * @see org.springframework.batch.admin.service.JobService#getJobInstance(long)
 */
public JobInstance getJobInstance(long jobInstanceId) throws NoSuchJobInstanceException {
    for (String jobName : this.jobRegistry.getJobNames()) {
        for (JobInstance jobInstance : this.jobExplorer.getJobInstances(jobName, 0, Integer.MAX_VALUE)) {
            if (jobInstance.getId() == jobInstanceId) {
                return jobInstance;
            }
        }
    }
    return null;
}