1 package org.cacert.gigi.ping;
3 import java.io.BufferedReader;
4 import java.io.IOException;
5 import java.io.InputStreamReader;
6 import java.net.HttpURLConnection;
9 import org.cacert.gigi.dbObjects.Domain;
10 import org.cacert.gigi.dbObjects.User;
12 public class HTTPFetch extends DomainPinger {
15 public String ping(Domain domain, String expToken, User user) {
17 String[] tokenParts = expToken.split(":", 2);
18 URL u = new URL("http://" + domain.getSuffix() + "/cacert-" + tokenParts[0] + ".txt");
19 HttpURLConnection huc = (HttpURLConnection) u.openConnection();
20 if (huc.getResponseCode() != 200) {
21 return "Invalid status code.";
23 BufferedReader br = new BufferedReader(new InputStreamReader(huc.getInputStream(), "UTF-8"));
24 String line = br.readLine();
26 return "No response from your server.";
28 if (line.trim().equals(tokenParts[1])) {
31 return "Challange tokens differed.";
32 } catch (IOException e) {
34 return "Connection closed.";