/** * This will return a list of jobs which have crossed the JOBS_RETENTION_PERIOD * and need to be purged * @return list of jobs to be purged */ public ArrayList<JobInfo> getExpiredJobs(File file) { ArrayList<JobInfo> expiredJobs = new ArrayList<JobInfo>(); synchronized (file) { JobInfos jobInfos = getCompletedJobs(file); for(JobInfo job:jobInfos.getJobInfoList()) { long executedTime = job.commandExecutionDate; long currentTime = System.currentTimeMillis(); long jobsRetentionPeriod = 86400000; managedJobConfig = domain.getExtensionByType(ManagedJobConfig.class); jobsRetentionPeriod = convert(managedJobConfig.getJobRetentionPeriod()); if (currentTime - executedTime > jobsRetentionPeriod && (job.state.equals(AdminCommandState.State.COMPLETED.name()) || job.state.equals(AdminCommandState.State.REVERTED.name()))) { expiredJobs.add(job); } } } return expiredJobs; }
info = new JobInfo(oneJob.getId(),oneJob.getName(),oneJob.getCommandExecutionDate(),exitCode,userList.get(0),message,oneJob.getJobsFile(),oneJob.getState().name(),0); user = userList.get(0); jobsToReport.add(new JobInfo(job.getId(),job.getName(),job.getCommandExecutionDate(),exitCode,user,message,job.getJobsFile(),job.getState().name(),0));
user = subjectUsernames.get(0); jobPersistenceService.persist(new JobInfo(id,commandName,executionDate,report.getActionExitCode().name(),user,report.getMessage(),getJobsFile(),finalState.name(),completionDate)); if (getState().equals(State.RUNNING_RETRYABLE) || getState().equals(State.REVERTING)) { JobManagerService jobManager = Globals.getDefaultHabitat().getService(JobManagerService.class);