org.archive.wayback.requestparser
Class CompositeRequestParser

java.lang.Object
  extended by org.archive.wayback.requestparser.BaseRequestParser
      extended by org.archive.wayback.requestparser.CompositeRequestParser
All Implemented Interfaces:
RequestParser
Direct Known Subclasses:
ArchivalUrlRequestParser, DomainPrefixCompositeRequestParser, ProxyArchivalRequestParser, ProxyRequestParser

public abstract class CompositeRequestParser
extends BaseRequestParser

Abstract RequestParser implementation. Subclasses must implement the getRequestParsers() method. This implementation provides a parse() implementation, which allows each RequestParser returned by the getRequestParsers() method an attempt at parsing the incoming request.

Version:
$Date: 2010-09-29 05:28:38 +0700 (Wed, 29 Sep 2010) $, $Revision: 3262 $
Author:
brad

Field Summary
 
Fields inherited from class org.archive.wayback.requestparser.BaseRequestParser
DEFAULT_MAX_RECORDS, QUERY_BASE, REPLAY_BASE, XQUERY_BASE
 
Constructor Summary
CompositeRequestParser()
           
 
Method Summary
protected abstract  RequestParser[] getRequestParsers()
           
 void init()
           
 WaybackRequest parse(javax.servlet.http.HttpServletRequest httpRequest, AccessPoint wbContext)
          attempt to transform an incoming HttpServletRequest into a WaybackRequest object.
 
Methods inherited from class org.archive.wayback.requestparser.BaseRequestParser
getEarliestTimestamp, getLatestTimestamp, getMaxRecords, setEarliestTimestamp, setLatestTimestamp, setMaxRecords
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CompositeRequestParser

public CompositeRequestParser()
Method Detail

init

public void init()

getRequestParsers

protected abstract RequestParser[] getRequestParsers()

parse

public WaybackRequest parse(javax.servlet.http.HttpServletRequest httpRequest,
                            AccessPoint wbContext)
                     throws BadQueryException,
                            BetterRequestException
Description copied from interface: RequestParser
attempt to transform an incoming HttpServletRequest into a WaybackRequest object. returns null if there is missing information.

Specified by:
parse in interface RequestParser
Specified by:
parse in class BaseRequestParser
Parameters:
httpRequest - ServletHttpRequest being handled
wbContext - AccessPoint which is attempting to parse the request
Returns:
populated WaybackRequest object if successful, null otherwise.
Throws:
BadQueryException - if the request could match this AccessPoint, but is malformed: invalid datespec, URL, or flags
BetterRequestException - if the request should be redirected to provide better user feedback (corrected URL/date in address bar)


Copyright © 2005-2011 Internet Archive. All Rights Reserved.