X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=server%2Ftesi%2Fsrc%2Fcom%2Fcompany%2Fhttpget.java;fp=server%2Ftesi%2Fsrc%2Fcom%2Fcompany%2Fhttpget.java;h=079cc019d6e9d3ddca729145608eb30a91e137ce;hb=edfa62efb21b128dce6de134a3fb0d85f77bd2b8;hp=0000000000000000000000000000000000000000;hpb=a02dc65816998ec35975339dbad1627c2e5fb444;p=logicplayer.git diff --git a/server/tesi/src/com/company/httpget.java b/server/tesi/src/com/company/httpget.java new file mode 100644 index 0000000..079cc01 --- /dev/null +++ b/server/tesi/src/com/company/httpget.java @@ -0,0 +1,79 @@ +package com.company; + +import java.io.*; +import java.net.*; +import java.security.NoSuchAlgorithmException; +import java.util.*; + +import com.sun.net.httpserver.HttpExchange; +import com.sun.net.httpserver.HttpHandler; +import com.sun.net.httpserver.HttpServer; +import java.sql.*; + +public class httpget implements Runnable { + + httpget(){} + + public static Map splitQuery(String query) throws UnsupportedEncodingException + { + Map query_pairs = new LinkedHashMap(); + String[] pairs = query.split("&"); + for (String pair : pairs) + { + int idx = pair.indexOf("="); + query_pairs.put(URLDecoder.decode(pair.substring(0, idx), "UTF-8"), URLDecoder.decode(pair.substring(idx + 1), "UTF-8")); + } + return query_pairs; + } + + @Override + public void run() { + try { + HttpServer server = HttpServer.create(new InetSocketAddress(global.portaHttpServer), 0); + server.createContext("/test", new MyHandler()); + server.setExecutor(null); // creates a default executor + server.start(); + }catch (Exception e) + { + e.printStackTrace(); + } + } + + static class MyHandler implements HttpHandler + { + public void handle(HttpExchange t) throws IOException + { + + /*String response = "This is the response"; + System.out.println("mannaggia santa"); + t.sendResponseHeaders(200, response.length()); + OutputStream os = t.getResponseBody(); + os.write(response.getBytes());*/ + URI req=t.getRequestURI(); + String query=req.getQuery(); + Map result=splitQuery(query); + String id=result.get("id"); + //System.out.println(id); + try + { + dbConnect request=new dbConnect(); + String returnQuery=request.dbQuery("3"+id); + t.sendResponseHeaders(200, returnQuery.length()); + OutputStream os = t.getResponseBody(); + os.write(returnQuery.getBytes()); + os.close(); + } + catch(SQLException e) + {} + catch(ClassNotFoundException c) + {} + catch(IllegalAccessException a) + {} + catch(InstantiationException i) + {} catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } + } + } + +}