Now using dependency injection for the XslTransformer instead of
[utils] / crawler / basic / src / org / wamblee / crawler / GetPageRequest.java
index 9a9d02e4ed2536f8619bc7f23dc13fac67255754..9bc25608e66dd604cd1860803a2d9305e0d217fb 100644 (file)
@@ -16,7 +16,7 @@
 
 package org.wamblee.crawler;
 
-import java.io.PrintStream;
+import java.io.IOException;
 
 import javax.xml.transform.TransformerException;
 
@@ -25,20 +25,24 @@ import org.apache.commons.httpclient.HttpMethod;
 import org.apache.commons.httpclient.NameValuePair;
 import org.apache.commons.httpclient.methods.GetMethod;
 import org.w3c.dom.Document;
+import org.wamblee.xml.XslTransformer;
 
 /**
  * Gets a page by issueing a get request.
  */
 public class GetPageRequest extends AbstractPageRequest {
 
-    public GetPageRequest(int aMaxTries, int aMaxDelay, NameValuePair[] aParams, String aXslt) {
-        super(aMaxTries, aMaxDelay, aParams, aXslt, null);
-    }
-
-    public GetPageRequest(int aMaxTries, int aMaxDelay, NameValuePair[] aParams, String aXslt, PrintStream aOs) {
-        super(aMaxTries, aMaxDelay, aParams, aXslt, aOs);
+    /**
+     * Constructs the request.
+     * @param aMaxTries Maximum number of retries. 
+     * @param aMaxDelay Maximum delay before executing the request.
+     * @param aParams Request parameters to use. 
+     * @param aXslt XSLT to use. 
+     */
+    public GetPageRequest(int aMaxTries, int aMaxDelay, NameValuePair[] aParams, String aXslt, XslTransformer aTransformer) {
+        super(aMaxTries, aMaxDelay, aParams, aXslt, aTransformer);
     }
-
+    
     /*
      * (non-Javadoc)
      * 
@@ -60,6 +64,8 @@ public class GetPageRequest extends AbstractPageRequest {
             return executeMethod(aClient, method);
         } catch (TransformerException e) {
             throw new PageException(e.getMessage(), e);
+        } catch (IOException e) { 
+            throw new PageException(e.getMessage(), e);
         }
     }