diff --git a/src/main/java/org/netarchivesuite/heritrix3wrapper/Heritrix3Wrapper.java b/src/main/java/org/netarchivesuite/heritrix3wrapper/Heritrix3Wrapper.java index 36eefed..f1f690a 100644 --- a/src/main/java/org/netarchivesuite/heritrix3wrapper/Heritrix3Wrapper.java +++ b/src/main/java/org/netarchivesuite/heritrix3wrapper/Heritrix3Wrapper.java @@ -576,6 +576,29 @@ public JobResult launchJob(String jobname) { return jobResult(postRequest); } + /** + * Launch a built job in pause state, resuming the crawl from the supplied checkpoint. + * @param jobname job name + * @param checkpoint checkpoint name + * @return job state + */ + public JobResult launchJob(String jobname, String checkpoint) { + HttpPost postRequest = new HttpPost(baseUrl + "job/" + jobname); + List nvp = new LinkedList(); + nvp.add(new BasicNameValuePair("action", "launch")); + nvp.add(new BasicNameValuePair("checkpoint", checkpoint)); + StringEntity postEntity = null; + try { + postEntity = new UrlEncodedFormEntity(nvp); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } + postEntity.setContentType("application/x-www-form-urlencoded"); + postRequest.addHeader("Accept", "application/xml"); + postRequest.setEntity(postEntity); + return jobResult(postRequest); + } + /** * Pause running job. * @param jobname job name