mirror of
https://github.com/internetarchive/heritrix3.git
synced 2026-09-16 18:55:35 +00:00
Stop automatically writing WARC-Payload-Digest for revisit records.
Refer that functionality to the relevant revisit profile classes.
This commit is contained in:
+2
-2
@@ -1,5 +1,6 @@
|
||||
package org.archive.modules.revisit;
|
||||
|
||||
import static org.archive.format.warc.WARCConstants.HEADER_KEY_PAYLOAD_DIGEST;
|
||||
import static org.archive.format.warc.WARCConstants.HEADER_KEY_REFERS_TO_TARGET_URI;
|
||||
|
||||
import java.util.Map;
|
||||
@@ -32,8 +33,7 @@ public class IdenticalPayloadDigestRevisit extends AbstractProfile {
|
||||
public Map<String, String> getWarcHeaders() {
|
||||
Map<String, String> headers = super.getWarcHeaders();
|
||||
|
||||
// Written automatically by WarcWriterProcessor for all HTTP responses
|
||||
// headers.put(HEADER_KEY_PAYLOAD_DIGEST, payloadDigest);
|
||||
headers.put(HEADER_KEY_PAYLOAD_DIGEST, payloadDigest);
|
||||
|
||||
if (refersToTargetURI!=null) {
|
||||
headers.put(HEADER_KEY_REFERS_TO_TARGET_URI, refersToTargetURI);
|
||||
|
||||
@@ -2,6 +2,7 @@ package org.archive.modules.revisit;
|
||||
|
||||
import static org.archive.format.warc.WARCConstants.HEADER_KEY_ETAG;
|
||||
import static org.archive.format.warc.WARCConstants.HEADER_KEY_LAST_MODIFIED;
|
||||
import static org.archive.format.warc.WARCConstants.HEADER_KEY_PAYLOAD_DIGEST;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@@ -13,6 +14,9 @@ public class ServerNotModifiedRevisit extends AbstractProfile {
|
||||
protected String eTag;
|
||||
protected String lastModified;
|
||||
|
||||
// Optional. Digest of original capture
|
||||
protected String payloadDigest;
|
||||
|
||||
/**
|
||||
* Minimal constructor.
|
||||
*/
|
||||
@@ -29,6 +33,10 @@ public class ServerNotModifiedRevisit extends AbstractProfile {
|
||||
public Map<String, String> getWarcHeaders() {
|
||||
Map<String, String> headers = super.getWarcHeaders();
|
||||
|
||||
if (payloadDigest!=null) {
|
||||
headers.put(HEADER_KEY_PAYLOAD_DIGEST, payloadDigest);
|
||||
}
|
||||
|
||||
if (eTag!=null) {
|
||||
headers.put(HEADER_KEY_ETAG, eTag);
|
||||
}
|
||||
@@ -59,5 +67,15 @@ public class ServerNotModifiedRevisit extends AbstractProfile {
|
||||
this.lastModified = lastModified;
|
||||
}
|
||||
|
||||
|
||||
public String getPayloadDigest() {
|
||||
return payloadDigest;
|
||||
}
|
||||
|
||||
|
||||
public void setPayloadDigest(String payloadDigest) {
|
||||
this.payloadDigest = payloadDigest;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -392,10 +392,6 @@ public class WARCWriterProcessor extends WriterPoolProcessor implements WARCWrit
|
||||
// TODO: Use other than ANVL (or rename ANVL as NameValue or
|
||||
// use RFC822 (commons-httpclient?).
|
||||
ANVLRecord headers = new ANVLRecord();
|
||||
if (curi.getContentDigest() != null) {
|
||||
headers.addLabelValue(HEADER_KEY_PAYLOAD_DIGEST,
|
||||
curi.getContentDigestSchemeString());
|
||||
}
|
||||
headers.addLabelValue(HEADER_KEY_IP, getHostAddress(curi));
|
||||
|
||||
URI rid;
|
||||
@@ -403,6 +399,10 @@ public class WARCWriterProcessor extends WriterPoolProcessor implements WARCWrit
|
||||
if (curi.isRevisit()) {
|
||||
rid = writeRevisit(w, timestamp, HTTP_RESPONSE_MIMETYPE, baseid, curi, headers);
|
||||
} else {
|
||||
if (curi.getContentDigest() != null) {
|
||||
headers.addLabelValue(HEADER_KEY_PAYLOAD_DIGEST,
|
||||
curi.getContentDigestSchemeString());
|
||||
}
|
||||
// Check for truncated annotation
|
||||
String value = null;
|
||||
Collection<String> anno = curi.getAnnotations();
|
||||
|
||||
Reference in New Issue
Block a user