package server.sendmail;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Vector;
public class SearchThread extends Thread {
String m_sSenderEmail = "lyon@docjava.com";
String m_sServerHostName = "www.docjava.com";
String m_sRecipientEmail = null;
String m_sSearchString = null;
Thread searchThread;
SearchThread(String search, String email) {
System.out.println("\nCreated new SearchThred;");
this.m_sSearchString = search;
this.m_sRecipientEmail = email;
searchThread = new Thread(this);
searchThread.start();
}
public void run() {
System.out.println("SearchThread started.");
String msg = searchAllTheWeb(m_sSearchString);
msg = msg +
"<x-html><!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\"><html>"
+ "<head><title>DocJavaSearch results!</title></head>";
email(msg);
}
public String getSearch(String s) {
return searchAllTheWeb(s);
}
public String searchAllTheWeb(String search) {
String s0 = ("http://www.alltheweb.com"
+ "/cgi-bin/search?exec=FAST+Search&type=all&"
+ "query=" + search);
String s1 = ("http://www.go.com/Split?pat=go&col=WW&qt="
+ search);
String s2 = ("http://google.com/search?q="
+ search);
String s3 = ("http://www.northernlight.com/"
+ "nlquery.fcg?cb=0&qr="
+ search + "&search.x=28&search.y=8");
String s4 = ("http://www.webcrawler.com/"
+ "cgi-bin/WebQuery?searchText=" + search);
return getUrlResult(s0) +
getUrlResult(s1) +
getUrlResult(s2) +
getUrlResult(s3) +
getUrlResult(s4);
}
public void print(String s) {
System.out.println(s);
}
public void email(String msg) {
server.sendmail.SendMailApplet mail = new server.sendmail.SendMailApplet();
mail.setSenderEmail(m_sSenderEmail);
mail.setRecipientEmail(m_sRecipientEmail);
mail.setMailServerHostName(m_sServerHostName);
mail.setMessage(msg);
try {
mail.send();
} catch (IOException e) {
System.err.println(
"Error sending email:\n"
+ e.getMessage());
}
}
public static String getUrlResult(String search) {
System.out.println("*** Getting search results...");
try {
URL url = new URL(search);
String nextLine;
Vector v = new Vector();
BufferedReader br = new BufferedReader(
new InputStreamReader(
url.openStream()));
while ((nextLine = br.readLine()) != null)
v.addElement(nextLine);
String s[] = new String[v.size()];
for (int i = 0; i < s.length; i++)
s[i] = (String) v.elementAt(i);
String w = "";
for (int i = 0; i < s.length; i++)
w = w + s[i] + "\n";
return w;
} catch (MalformedURLException e) {
System.out.println(e.getMessage());
} catch (IOException e) {
System.out.println(e.getMessage());
}
return null;
}
}