hal/src/zutil/test/HTTPGuessTheNumber.java

83 lines
2.5 KiB
Java
Raw Normal View History

2008-11-14 16:38:36 +00:00
package zutil.test;
import java.io.IOException;
2009-05-18 12:52:16 +00:00
import java.util.Map;
2008-11-14 16:38:36 +00:00
2011-02-15 19:37:04 +00:00
import zutil.net.http.HttpPage;
import zutil.net.http.HttpPrintStream;
import zutil.net.http.HttpServer;
2008-11-14 16:38:36 +00:00
2009-05-17 18:46:05 +00:00
2008-11-14 16:38:36 +00:00
public class HTTPGuessTheNumber implements HttpPage{
public static void main(String[] args) throws IOException{
2009-04-15 19:05:12 +00:00
//HttpServer server = new HttpServer("localhost", 443, FileFinder.find("keySSL"), "rootroot");//SSL
2009-05-17 18:46:05 +00:00
HttpServer server = new HttpServer("localhost", 8080);
2008-11-14 16:38:36 +00:00
server.setDefaultPage(new HTTPGuessTheNumber());
server.run();
}
public void respond(HttpPrintStream out,
2009-05-18 12:52:16 +00:00
Map<String, String> client_info,
Map<String, Object> session,
Map<String, String> cookie,
Map<String, String> request) {
2008-11-14 16:38:36 +00:00
out.enableBuffering(true);
out.println("<html>");
out.println("<H2>Welcome To The Number Guess Game!</H2>");
2009-05-18 12:52:16 +00:00
if(session.containsKey("random_nummber") && request.containsKey("guess") && !request.get("guess").isEmpty()){
2008-11-14 16:38:36 +00:00
int guess = Integer.parseInt(request.get("guess"));
2009-05-17 18:46:05 +00:00
int nummber = (Integer)session.get("random_nummber");
2008-11-14 16:38:36 +00:00
try {
if(guess == nummber){
session.remove("random_nummber");
out.println("You Guessed Right! Congrats!");
out.println("</html>");
return;
}
else if(guess > nummber){
out.println("<b>To High</b><br>");
if(Integer.parseInt(cookie.get("high")) > guess){
out.setCookie("high", ""+guess);
cookie.put("high", ""+guess);
}
}
else{
out.println("<b>To Low</b><br>");
if(Integer.parseInt(cookie.get("low")) < guess){
out.setCookie("low", ""+guess);
cookie.put("low", ""+guess);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
else{
2009-05-17 18:46:05 +00:00
session.put("random_nummber", (int)(Math.random()*99+1));
2008-11-14 16:38:36 +00:00
try {
out.setCookie("low", "0");
out.setCookie("high", "100");
cookie.put("low", "0");
cookie.put("high", "100");
} catch (Exception e) {
e.printStackTrace();
}
}
out.println("<form method='post'>");
out.println(cookie.get("low")+" < X < "+cookie.get("high")+"<br>");
out.println("Guess a number between 0 and 100:<br>");
out.println("<input type='text' name='guess'>");
out.println("<input type='hidden' name='test' value='test'>");
out.println("<input type='submit' value='Guess'>");
out.println("</form>");
out.println("<script>document.all.guess.focus();</script>");
2009-05-17 18:46:05 +00:00
out.println("<b>DEBUG: nummber="+session.get("random_nummber")+"</b><br>");
2008-11-14 16:38:36 +00:00
out.println("</html>");
}
}