From: bdemsky Date: Mon, 16 Apr 2007 13:41:18 +0000 (+0000) Subject: changes X-Git-Tag: preEdgeChange~626 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=be67f3b4617181a63e11dc1882ad563e4ce8670e;p=IRC.git changes --- diff --git a/Robust/src/Benchmarks/Spider/BR/Query.java b/Robust/src/Benchmarks/Spider/BR/Query.java index 1eba8f81..82b031fa 100644 --- a/Robust/src/Benchmarks/Spider/BR/Query.java +++ b/Robust/src/Benchmarks/Spider/BR/Query.java @@ -7,7 +7,6 @@ public class Query extends Socket { private String hostname; private String path; - private Socket connection; private StringBuffer response; public Query(String hostname, String path) { @@ -24,10 +23,6 @@ public class Query extends Socket { nativeConnect(fd, address.getAddress(), port); } - public void setSocket(Socket s) { - connection=s; - } - public String getHostName() { return hostname; } @@ -35,6 +30,14 @@ public class Query extends Socket { public String getPath() { return path; } + + public void outputFile() { + StringBuffer sb=new StringBuffer(hostname); + sb.append(path); + FileOutputStream fos=new FileOutputStream(sb.toString().replace('/','#')); + fos.write(response.toString().getBytes()); + fos.close(); + } public String makewebcanonical(String page) { StringBuffer b=new StringBuffer(getHostName(page)); @@ -50,8 +53,11 @@ public class Query extends Socket { } else { int beginindex=page.indexOf(http)+http.length(); int endindex=page.indexOf('/',beginindex+1); - if ((beginindex==-1)||(endindex==-1)) + if ((beginindex==-1)) { System.printString("ERROR"); + } + if (endindex==-1) + endindex=page.length(); return page.subString(beginindex, endindex); } } @@ -71,7 +77,7 @@ public class Query extends Socket { int beginindex=page.indexOf(http)+http.length(); int nextindex=page.indexOf('/',beginindex+1); if ((beginindex==-1)||(nextindex==-1)) - System.printString("ERROR"); + return new String("index.html"); return page.subString(nextindex+1, page.length()-1); } } diff --git a/Robust/src/Benchmarks/Spider/BR/Spider.java b/Robust/src/Benchmarks/Spider/BR/Spider.java index 280f198b..e0b6eddb 100644 --- a/Robust/src/Benchmarks/Spider/BR/Spider.java +++ b/Robust/src/Benchmarks/Spider/BR/Spider.java @@ -31,7 +31,6 @@ task readResponse(Query q{requested && ! received && IOPending}) { int numchars=q.read(b); if ((numchars==1) && (b[0]=='\r')) q.state++; - System.printString(new String(b)); } else if (q.state==1) { byte[] b=new byte[1]; int numchars=q.read(b); @@ -40,7 +39,6 @@ task readResponse(Query q{requested && ! received && IOPending}) { q.state++; else q.state=0; - System.printString(new String(b)); } } else if (q.state==2) { byte[] b=new byte[1]; @@ -50,7 +48,6 @@ task readResponse(Query q{requested && ! received && IOPending}) { q.state++; else q.state=0; - System.printString(new String(b)); } } else if (q.state==3) { byte[] b=new byte[1]; @@ -60,17 +57,16 @@ task readResponse(Query q{requested && ! received && IOPending}) { q.state++; else q.state=0; - System.printString(new String(b)); } } } else { byte[] buffer=new byte[1024]; int numchars=q.read(buffer); - if (numchars==0) + if (numchars==0) { + q.close(); taskexit(q{received}); - else { + } else { String curr=(new String(buffer)).subString(0,numchars); - System.printString(curr); q.response.append(curr); } } @@ -81,6 +77,8 @@ task processPage(Query q{received&&!processed}, QueryList ql{initialized}) { String href=new String("href=\""); String searchstr=q.response.toString(); boolean cont=true; + q.outputFile(); + while(cont) { int mindex=searchstr.indexOf(href,index); if (mindex!=-1) { diff --git a/Robust/src/Benchmarks/Spider/Java/Query.java b/Robust/src/Benchmarks/Spider/Java/Query.java index cb4a727a..3fba0a39 100644 --- a/Robust/src/Benchmarks/Spider/Java/Query.java +++ b/Robust/src/Benchmarks/Spider/Java/Query.java @@ -18,6 +18,14 @@ public class Query { return path; } + public void outputFile() { + StringBuffer sb=new StringBuffer(hostname); + sb.append(path); + FileOutputStream fos=new FileOutputStream(sb.toString().replace('/','#')); + fos.write(response.toString().getBytes()); + fos.close(); + } + public String makewebcanonical(String page) { StringBuffer b=new StringBuffer(getHostName(page)); b.append("/"); @@ -57,7 +65,7 @@ public class Query { int nextindex=page.indexOf('/',beginindex+1); if ((beginindex==-1)||(nextindex==-1)) return new String("index.html"); - return page.subString(nextindex+1, page.length()-1); + return page.subString(nextindex+1, page.length()); } } } diff --git a/Robust/src/Benchmarks/Spider/Java/QueryThread.java b/Robust/src/Benchmarks/Spider/Java/QueryThread.java index c3349374..6bf2d085 100644 --- a/Robust/src/Benchmarks/Spider/Java/QueryThread.java +++ b/Robust/src/Benchmarks/Spider/Java/QueryThread.java @@ -15,9 +15,15 @@ public class QueryThread extends Thread { Thread.sleep(2); } String hostname=q.getHostName(); + System.printString("Processing "); + System.printString(hostname); + System.printString(" "); + System.printString(q.getPath()); + System.printString("\n"); Socket s=new Socket(hostname, 80); requestQuery(q, s); readResponse(q, s); + q.outputFile(); processPage(q, ql); s.close(); } @@ -48,7 +54,6 @@ public class QueryThread extends Thread { if ((numchars==1)) { if (b[0]=='\r') { state++; - System.printString(new String(b)); } } else return; @@ -60,7 +65,6 @@ public class QueryThread extends Thread { state++; else state=0; - System.printString(new String(b)); } else return; } else if (state==2) { byte[] b=new byte[1]; @@ -70,7 +74,6 @@ public class QueryThread extends Thread { state++; else state=0; - System.printString(new String(b)); } else return; } else if (state==3) { byte[] b=new byte[1]; @@ -80,7 +83,6 @@ public class QueryThread extends Thread { state++; else state=0; - System.printString(new String(b)); } else return; } } else { @@ -90,7 +92,6 @@ public class QueryThread extends Thread { return; else { String curr=(new String(buffer)).subString(0,numchars); - System.printString(curr); q.response.append(curr); } } diff --git a/Robust/src/Benchmarks/Spider/Java/Spider.java b/Robust/src/Benchmarks/Spider/Java/Spider.java index e07b4040..fbe6648e 100644 --- a/Robust/src/Benchmarks/Spider/Java/Spider.java +++ b/Robust/src/Benchmarks/Spider/Java/Spider.java @@ -10,14 +10,13 @@ public class Spider { Query firstquery=new Query(firstmachine, firstpage); toprocess.addQuery(firstquery); QueryThread qt1=new QueryThread(toprocess, ql); - qt1.run(); - // qt1.start(); - //QueryThread qt2=new QueryThread(toprocess, ql); - //qt2.start(); - //QueryThread qt3=new QueryThread(toprocess, ql); - //qt3.start(); - //while(true) - // Thread.sleep(1000000); + qt1.start(); + QueryThread qt2=new QueryThread(toprocess, ql); + qt2.start(); + QueryThread qt3=new QueryThread(toprocess, ql); + qt3.start(); + while(true) + Thread.sleep(1000000); }