From: <bra...@us...> - 2007-11-06 03:48:51
|
Revision: 2073 http://archive-access.svn.sourceforge.net/archive-access/?rev=2073&view=rev Author: bradtofel Date: 2007-11-05 19:48:56 -0800 (Mon, 05 Nov 2007) Log Message: ----------- FEATURE: added latestTimestamp property and access methods Modified Paths: -------------- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/RequestParser.java trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/PathDatePrefixQueryRequestParser.java trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/PathPrefixDatePrefixQueryRequestParser.java trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/ReplayRequestParser.java trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/domainprefix/DomainPrefixRequestParser.java trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/BaseRequestParser.java trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/CompositeRequestParser.java trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/FormRequestParser.java trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/OpenSearchRequestParser.java Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/RequestParser.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/RequestParser.java 2007-11-06 03:44:31 UTC (rev 2072) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/RequestParser.java 2007-11-06 03:48:56 UTC (rev 2073) @@ -56,4 +56,8 @@ * @param timestamp */ public void setEarliestTimestamp(String timestamp); + /** + * @param timestamp + */ + public void setLatestTimestamp(String timestamp); } Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/PathDatePrefixQueryRequestParser.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/PathDatePrefixQueryRequestParser.java 2007-11-06 03:44:31 UTC (rev 2072) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/PathDatePrefixQueryRequestParser.java 2007-11-06 03:48:56 UTC (rev 2073) @@ -59,12 +59,14 @@ String urlStr = matcher.group(2); String startDate; + String endDate; if(dateStr.length() == 0) { startDate = earliestTimestamp; + endDate = latestTimestamp; } else { startDate = Timestamp.parseBefore(dateStr).getDateStr(); + endDate = Timestamp.parseAfter(dateStr).getDateStr(); } - String endDate = Timestamp.parseAfter(dateStr).getDateStr(); wbRequest.put(WaybackConstants.REQUEST_START_DATE,startDate); wbRequest.put(WaybackConstants.REQUEST_END_DATE,endDate); wbRequest.put(WaybackConstants.REQUEST_TYPE, Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/PathPrefixDatePrefixQueryRequestParser.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/PathPrefixDatePrefixQueryRequestParser.java 2007-11-06 03:44:31 UTC (rev 2072) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/PathPrefixDatePrefixQueryRequestParser.java 2007-11-06 03:48:56 UTC (rev 2073) @@ -58,13 +58,15 @@ String urlStr = matcher.group(2); String startDate; + String endDate; if(dateStr.length() == 0) { startDate = earliestTimestamp; + endDate = latestTimestamp; } else { startDate = Timestamp.parseBefore(dateStr).getDateStr(); + endDate = Timestamp.parseAfter(dateStr).getDateStr(); } - String endDate = Timestamp.parseAfter(dateStr).getDateStr(); wbRequest.put(WaybackConstants.REQUEST_START_DATE, startDate); wbRequest.put(WaybackConstants.REQUEST_END_DATE,endDate); Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/ReplayRequestParser.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/ReplayRequestParser.java 2007-11-06 03:44:31 UTC (rev 2072) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/archivalurl/requestparser/ReplayRequestParser.java 2007-11-06 03:48:56 UTC (rev 2073) @@ -24,6 +24,7 @@ */ package org.archive.wayback.archivalurl.requestparser; +import java.util.logging.Logger; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -42,6 +43,8 @@ * @version $Date$, $Revision$ */ public class ReplayRequestParser extends PathRequestParser { + private static final Logger LOGGER = Logger.getLogger( + ReplayRequestParser.class.getName()); /** * Regex which parses Archival URL replay requests into timestamp + url */ @@ -51,10 +54,11 @@ public WaybackRequest parse(String requestPath) { WaybackRequest wbRequest = null; Matcher matcher = WB_REQUEST_REGEX.matcher(requestPath); + String urlStr = null; if (matcher != null && matcher.matches()) { wbRequest = new WaybackRequest(); String dateStr = matcher.group(1); - String urlStr = matcher.group(2); + urlStr = matcher.group(2); if (!urlStr.startsWith("http://")) { urlStr = "http://" + urlStr; } @@ -71,8 +75,8 @@ String startDate = null; String endDate = null; if (dateStr.length() == 14) { - startDate = Timestamp.earliestTimestamp().getDateStr(); - endDate = Timestamp.currentTimestamp().getDateStr(); + startDate = earliestTimestamp; + endDate = latestTimestamp; } else { // classic behavior: @@ -81,8 +85,8 @@ // dateStr = endDate; // "better" behavior: - startDate = Timestamp.earliestTimestamp().getDateStr(); - endDate = Timestamp.currentTimestamp().getDateStr(); + startDate = earliestTimestamp; + endDate = latestTimestamp; dateStr = Timestamp.parseAfter(dateStr).getDateStr(); } @@ -100,6 +104,9 @@ // } wbRequest.setRequestUrl(urlStr); } catch (URIException e) { + if(urlStr != null) { + LOGGER.severe("Failed parse of url(" + urlStr + ")"); + } e.printStackTrace(); wbRequest = null; } Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/domainprefix/DomainPrefixRequestParser.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/domainprefix/DomainPrefixRequestParser.java 2007-11-06 03:44:31 UTC (rev 2072) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/domainprefix/DomainPrefixRequestParser.java 2007-11-06 03:48:56 UTC (rev 2073) @@ -30,11 +30,11 @@ import javax.servlet.http.HttpServletRequest; import org.apache.commons.httpclient.URIException; -import org.archive.wayback.RequestParser; import org.archive.wayback.WaybackConstants; import org.archive.wayback.core.Timestamp; import org.archive.wayback.core.WaybackRequest; import org.archive.wayback.exception.BadQueryException; +import org.archive.wayback.requestparser.BaseRequestParser; import org.archive.wayback.webapp.AccessPoint; /** @@ -43,11 +43,9 @@ * @author brad * @version $Date$, $Revision$ */ -public class DomainPrefixRequestParser implements RequestParser { +public class DomainPrefixRequestParser extends BaseRequestParser { String hostPort = "localhost:8081"; - String earliest = Timestamp.earliestTimestamp().getDateStr(); - int maxRecords = 1000; private final Pattern REPLAY_REGEX = Pattern.compile("^(\\d{1,14})\\.(.*)$"); @@ -108,12 +106,14 @@ String dateStr = queryMatcher.group(1); String host = queryMatcher.group(2); String startDate; + String endDate; if(dateStr.length() == 0) { - startDate = earliest; + startDate = earliestTimestamp; + endDate = latestTimestamp; } else { startDate = Timestamp.parseBefore(dateStr).getDateStr(); + endDate = Timestamp.parseAfter(dateStr).getDateStr(); } - String endDate = Timestamp.parseAfter(dateStr).getDateStr(); wbRequest.put(WaybackConstants.REQUEST_START_DATE,startDate); wbRequest.put(WaybackConstants.REQUEST_END_DATE,endDate); wbRequest.put(WaybackConstants.REQUEST_TYPE, @@ -134,34 +134,7 @@ return wbRequest; } - /* (non-Javadoc) - * @see org.archive.wayback.RequestParser#setEarliestTimestamp(java.lang.String) - */ - public void setEarliestTimestamp(String timestamp) { - earliest = timestamp; - } - /** - * @return the earliest timestamp - */ - public String getEarliestTimestamp() { - return earliest; - } - - /* (non-Javadoc) - * @see org.archive.wayback.RequestParser#setMaxRecords(int) - */ - public void setMaxRecords(int maxRecords) { - this.maxRecords = maxRecords; - } - /** - * @return the maxRecords - */ - public int getMaxRecords() { - return maxRecords; - } - - /** * @return the hostPort */ public String getHostPort() { Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/BaseRequestParser.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/BaseRequestParser.java 2007-11-06 03:44:31 UTC (rev 2072) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/BaseRequestParser.java 2007-11-06 03:48:56 UTC (rev 2073) @@ -69,6 +69,8 @@ protected String earliestTimestamp = Timestamp.earliestTimestamp().getDateStr(); + protected String latestTimestamp = + Timestamp.latestTimestamp().getDateStr(); protected static String getMapParam(Map<String,String[]> queryMap, String field) { @@ -160,5 +162,13 @@ public String getEarliestTimestamp() { return earliestTimestamp; } + + public String getLatestTimestamp() { + return latestTimestamp; + } + + public void setLatestTimestamp(String timestamp) { + this.latestTimestamp = Timestamp.parseAfter(timestamp).getDateStr(); + } } Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/CompositeRequestParser.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/CompositeRequestParser.java 2007-11-06 03:44:31 UTC (rev 2072) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/CompositeRequestParser.java 2007-11-06 03:48:56 UTC (rev 2073) @@ -48,6 +48,7 @@ for(int i = 0; i < parsers.length; i++) { parsers[i].setMaxRecords(maxRecords); parsers[i].setEarliestTimestamp(earliestTimestamp); + parsers[i].setLatestTimestamp(latestTimestamp); } } Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/FormRequestParser.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/FormRequestParser.java 2007-11-06 03:44:31 UTC (rev 2072) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/FormRequestParser.java 2007-11-06 03:48:56 UTC (rev 2073) @@ -90,6 +90,10 @@ wbRequest.put(WaybackConstants.REQUEST_START_DATE, earliestTimestamp); } + if(wbRequest.get(WaybackConstants.REQUEST_END_DATE) == null) { + wbRequest.put(WaybackConstants.REQUEST_END_DATE, + latestTimestamp); + } } if(wbRequest != null) { addHttpHeaderFields(wbRequest, httpRequest); Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/OpenSearchRequestParser.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/OpenSearchRequestParser.java 2007-11-06 03:44:31 UTC (rev 2072) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/requestparser/OpenSearchRequestParser.java 2007-11-06 03:48:56 UTC (rev 2073) @@ -148,6 +148,10 @@ wbRequest.put(WaybackConstants.REQUEST_START_DATE, earliestTimestamp); } + if(wbRequest.get(WaybackConstants.REQUEST_END_DATE) == null) { + wbRequest.put(WaybackConstants.REQUEST_END_DATE, + latestTimestamp); + } addHttpHeaderFields(wbRequest, httpRequest); return wbRequest; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |