From: <bra...@us...> - 2009-06-09 22:48:10
|
Revision: 2736 http://archive-access.svn.sourceforge.net/archive-access/?rev=2736&view=rev Author: bradtofel Date: 2009-06-09 22:48:09 +0000 (Tue, 09 Jun 2009) Log Message: ----------- BUGFIX: Conditional GET SearchResult Annotater was indication duplicate type was due to Digest match. Added support for HTTP-Duplicate to CaptureSearchResult, and now the ConditionalGetAnnotationSearchResultAdapter uses these methods to indicate the correct type of duplicate record. Modified Paths: -------------- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/core/CaptureSearchResult.java trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/resourceindex/adapters/ConditionalGetAnnotationSearchResultAdapter.java Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/core/CaptureSearchResult.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/core/CaptureSearchResult.java 2009-06-09 21:20:22 UTC (rev 2735) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/core/CaptureSearchResult.java 2009-06-09 22:48:09 UTC (rev 2736) @@ -203,6 +203,7 @@ public void setClosest(boolean value) { putBoolean(CAPTURE_CLOSEST_INDICATOR,value); } + public void flagDuplicateDigest(Date storedDate) { put(CAPTURE_DUPLICATE_ANNOTATION,CAPTURE_DUPLICATE_DIGEST); put(CAPTURE_DUPLICATE_STORED_TS,dateToTS(storedDate)); @@ -216,19 +217,40 @@ return (dupeType != null && dupeType.equals(CAPTURE_DUPLICATE_DIGEST)); } public Date getDuplicateDigestStoredDate() { - String dupeType = get(CAPTURE_DUPLICATE_ANNOTATION); - Date date = null; - if(dupeType != null && dupeType.equals(CAPTURE_DUPLICATE_DIGEST)) { - date = tsToDate(get(CAPTURE_DUPLICATE_STORED_TS)); + if(isDuplicateDigest()) { + return tsToDate(get(CAPTURE_DUPLICATE_STORED_TS)); } - return date; + return null; } public String getDuplicateDigestStoredTimestamp() { + if(isDuplicateDigest()) { + return get(CAPTURE_DUPLICATE_STORED_TS); + } + return null; + } + + public void flagDuplicateHTTP(Date storedDate) { + put(CAPTURE_DUPLICATE_ANNOTATION,CAPTURE_DUPLICATE_HTTP); + put(CAPTURE_DUPLICATE_STORED_TS,dateToTS(storedDate)); + } + public void flagDuplicateHTTP(String storedTS) { + put(CAPTURE_DUPLICATE_ANNOTATION,CAPTURE_DUPLICATE_HTTP); + put(CAPTURE_DUPLICATE_STORED_TS,storedTS); + } + public boolean isDuplicateHTTP() { String dupeType = get(CAPTURE_DUPLICATE_ANNOTATION); - String ts = null; - if(dupeType != null && dupeType.equals(CAPTURE_DUPLICATE_DIGEST)) { - ts = get(CAPTURE_DUPLICATE_STORED_TS); + return (dupeType != null && dupeType.equals(CAPTURE_DUPLICATE_HTTP)); + } + public Date getDuplicateHTTPStoredDate() { + if(isDuplicateHTTP()) { + return tsToDate(get(CAPTURE_DUPLICATE_STORED_TS)); } - return ts; + return null; } + public String getDuplicateHTTPStoredTimestamp() { + if(isDuplicateHTTP()) { + return get(CAPTURE_DUPLICATE_STORED_TS); + } + return null; + } } Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/resourceindex/adapters/ConditionalGetAnnotationSearchResultAdapter.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/resourceindex/adapters/ConditionalGetAnnotationSearchResultAdapter.java 2009-06-09 21:20:22 UTC (rev 2735) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/resourceindex/adapters/ConditionalGetAnnotationSearchResultAdapter.java 2009-06-09 22:48:09 UTC (rev 2736) @@ -78,7 +78,7 @@ o.setHttpCode(lastSeen.getHttpCode()); o.setMimeType(lastSeen.getMimeType()); o.setRedirectUrl(lastSeen.getRedirectUrl()); - o.flagDuplicateDigest(lastSeen.getCaptureTimestamp()); + o.flagDuplicateHTTP(lastSeen.getCaptureTimestamp()); return o; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |