(no commit message)
[utils] / crawler / basic / src / org / wamblee / crawler / PostPageRequest.java
index 10ad783a76be7f3b8353818d4343094e0f885c1a..2257652204c2d706b1e17de2507dec95451496e6 100644 (file)
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
- */ 
+ */
 
 package org.wamblee.crawler;
 
 import java.io.PrintStream;
 
+import javax.xml.transform.TransformerException;
+
 import org.apache.commons.httpclient.HttpClient;
 import org.apache.commons.httpclient.NameValuePair;
 import org.apache.commons.httpclient.methods.PostMethod;
@@ -27,23 +29,31 @@ import org.w3c.dom.Document;
  * Retrieving pages using the post method.
  */
 public class PostPageRequest extends AbstractPageRequest {
-    
-    public PostPageRequest(NameValuePair[] aParams, String aXslt) { 
-        super(aParams, aXslt, null);
+
+    public PostPageRequest(int aMaxTries, int aMaxDelay, NameValuePair[] aParams, String aXslt) {
+        super(aMaxTries, aMaxDelay, aParams, aXslt, null);
     }
-    
-    public PostPageRequest(NameValuePair[] aParams, String aXslt, PrintStream aOs) { 
-        super(aParams, aXslt, aOs);
+
+    public PostPageRequest(int aMaxTries, int aMaxDelay, NameValuePair[] aParams, String aXslt,
+            PrintStream aOs) {
+        super(aMaxTries, aMaxDelay, aParams, aXslt, aOs);
     }
-    
-    
-    /* (non-Javadoc)
-     * @see org.wamblee.crawler.PageRequest#execute(java.lang.String, org.apache.commons.httpclient.HttpClient)
+
+    /*
+     * (non-Javadoc)
+     * 
+     * @see org.wamblee.crawler.PageRequest#execute(java.lang.String,
+     *      org.apache.commons.httpclient.HttpClient)
      */
-    public Document execute(String aUrl, HttpClient aClient) {
+    public Document execute(String aUrl, HttpClient aClient)
+            throws PageException {
         PostMethod method = new PostMethod(aUrl);
         method.addParameters(getParameters());
-        return executeMethod(aClient, method);
+        try {
+            return executeMethod(aClient, method);
+        } catch (TransformerException e) {
+            throw new PageException(e.getMessage(), e);
+        }
     }
 
 }