Monday, April 7, 2014

Link Test

package
 com.wfis.lendinggrid;
import
 java.io.File;
import
 java.io.FileNotFoundException;
import
 java.net.SocketException;
import
 java.util.List;
import
 java.util.Scanner;
import
 java.util.TreeSet;
import
 org.apache.http.conn.HttpHostConnectException;
import
 com.gargoylesoftware.htmlunit.BrowserVersion;
import
 com.gargoylesoftware.htmlunit.WebClient;
import
 com.gargoylesoftware.htmlunit.html.HtmlPage;
import
 com.google.common.collect.ListMultimap;
import
 com.google.common.collect.ArrayListMultimap;
public
 class FlexLinkTest {
public ListMultimap<String, String> readFile(String environment , String fileName) {
ListMultimap<String, String> domainFileMap = ArrayListMultimap.create();
String domain =
null;
String url =
null;
try {
Scanner domainFileScanner =
new Scanner(new File(fileName));
domainFileScanner.useDelimiter(
"\\|");
System.
out.println("==========================");
System.
out.println("Environment : " + environment );
System.
out.println("==========================");
while (domainFileScanner.hasNext()) {
domain = domainFileScanner.next();
url = domainFileScanner.next();
domainFileMap.put(domain, url);
}
domainFileScanner.close();
}
catch(FileNotFoundException nfe) {
nfe.printStackTrace();
}
return domainFileMap;
}
public void testLinks(ListMultimap<String, String> domainFileMap) {
List<String> url =
null;
for (String key : new TreeSet<String>(domainFileMap.keySet())) {
url = domainFileMap.get(key);
System.
out.println(key);
for (String link : url) {
try {
WebClient webClient =
new WebClient(BrowserVersion.getDefault());
webClient.setTimeout(1500);
HtmlPage page = webClient.getPage(link);
System.
out.println( page.getUrl() + " : " + page.getTitleText() );
webClient.closeAllWindows();
}
catch(HttpHostConnectException hhce) {
System.
err.println("Connection to " + link + " refused.");
}
catch(SocketException se) {
System.
err.println("Connection to " + link + " refused.");
}
catch(ClassCastException cce) {
System.
err.println(url);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
}
@SuppressWarnings("all")
public static void main(String[] args) throws FileNotFoundException {
FlexLinkTest tl =
new FlexLinkTest();
ListMultimap<String, String> domainFileMap =
null;
domainFileMap = tl.readFile(
"PROD","./resource/FlexLinks_PROD.txt");
tl.testLinks(domainFileMap);
System.
out.println();
domainFileMap = tl.readFile(
"UAT","./resource/FlexLinks_UAT.txt");
tl.testLinks(domainFileMap);
System.
out.println();
domainFileMap = tl.readFile(
"SIT","./resource/FlexLinks_SIT.txt");
tl.testLinks(domainFileMap);
System.
out.println();
domainFileMap = tl.readFile(
"DEV","./resource/FlexLinks_DEV.txt");
tl.testLinks(domainFileMap);
}

}