|
@@ -0,0 +1,155 @@
|
|
|
|
|
+package captiveportal;
|
|
|
|
|
+
|
|
|
|
|
+import java.util.Random;
|
|
|
|
|
+import java.io.BufferedReader;
|
|
|
|
|
+import java.io.InputStreamReader;
|
|
|
|
|
+import java.io.OutputStreamWriter;
|
|
|
|
|
+import java.io.StringWriter;
|
|
|
|
|
+import java.net.HttpURLConnection;
|
|
|
|
|
+import java.net.URL;
|
|
|
|
|
+
|
|
|
|
|
+import org.json.simple.JSONObject;
|
|
|
|
|
+import org.json.simple.JSONArray;
|
|
|
|
|
+import org.json.simple.parser.ParseException;
|
|
|
|
|
+import org.json.simple.parser.JSONParser;
|
|
|
|
|
+
|
|
|
|
|
+public class json {
|
|
|
|
|
+ private String[] listTickets(String url, String json) throws Exception {
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ URL http = new URL(url);
|
|
|
|
|
+ HttpURLConnection con = (HttpURLConnection) http.openConnection();
|
|
|
|
|
+
|
|
|
|
|
+ //add reuqest header
|
|
|
|
|
+ con.setRequestMethod("POST");
|
|
|
|
|
+ con.setRequestProperty("User-Agent", "Mozilla/5.0");
|
|
|
|
|
+ con.setRequestProperty("Content-Type", "application/json");
|
|
|
|
|
+ con.setRequestProperty("Accept", "application/json");
|
|
|
|
|
+ con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
|
|
|
|
|
+
|
|
|
|
|
+ // Send post request
|
|
|
|
|
+ con.setDoOutput(true);
|
|
|
|
|
+ OutputStreamWriter data= new OutputStreamWriter(con.getOutputStream());
|
|
|
|
|
+ data.write(json);
|
|
|
|
|
+ data.flush();
|
|
|
|
|
+ BufferedReader in = new BufferedReader(
|
|
|
|
|
+ new InputStreamReader(con.getInputStream()));
|
|
|
|
|
+ String inputLine;
|
|
|
|
|
+ StringBuffer response = new StringBuffer();
|
|
|
|
|
+
|
|
|
|
|
+ while ((inputLine = in.readLine()) != null) {
|
|
|
|
|
+ response.append(inputLine);
|
|
|
|
|
+ }
|
|
|
|
|
+ in.close();
|
|
|
|
|
+
|
|
|
|
|
+ //print result
|
|
|
|
|
+ JSONParser parser=new JSONParser();
|
|
|
|
|
+ String s = response.toString();
|
|
|
|
|
+
|
|
|
|
|
+ try{
|
|
|
|
|
+ Object obj = parser.parse(s);
|
|
|
|
|
+ JSONObject tickets = (JSONObject)obj;
|
|
|
|
|
+ JSONArray array = (JSONArray)tickets.get("tickets");
|
|
|
|
|
+ String[] ticketNumbers = new String[(int) array.size()];
|
|
|
|
|
+ for(int i = 0; i < (int) array.size(); i++)
|
|
|
|
|
+ {
|
|
|
|
|
+ JSONObject ticketNumber = (JSONObject)array.get(i);
|
|
|
|
|
+ ticketNumbers[i] = (String) ticketNumber.get("ticketNumber");
|
|
|
|
|
+ }
|
|
|
|
|
+ return ticketNumbers;
|
|
|
|
|
+ }catch(ParseException pe){
|
|
|
|
|
+ System.out.println("position: " + pe.getPosition());
|
|
|
|
|
+ System.out.println(pe);
|
|
|
|
|
+ }
|
|
|
|
|
+ String[] returnArray = {"ERROR", "FOUTMELDING"};
|
|
|
|
|
+ return returnArray;
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ private String grandAccessRequest(String json) throws Exception {
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ URL http = new URL("http://webapi.implementation.computerscience.international:9323/CFIS/Ticket");
|
|
|
|
|
+ HttpURLConnection con = (HttpURLConnection) http.openConnection();
|
|
|
|
|
+
|
|
|
|
|
+ //add reuqest header
|
|
|
|
|
+ con.setRequestMethod("POST");
|
|
|
|
|
+ con.setRequestProperty("User-Agent", "Mozilla/5.0");
|
|
|
|
|
+ con.setRequestProperty("Content-Type", "application/json");
|
|
|
|
|
+ con.setRequestProperty("Accept", "application/json");
|
|
|
|
|
+ con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
|
|
|
|
|
+
|
|
|
|
|
+ // Send post request
|
|
|
|
|
+ con.setDoOutput(true);
|
|
|
|
|
+ OutputStreamWriter data= new OutputStreamWriter(con.getOutputStream());
|
|
|
|
|
+ data.write(json);
|
|
|
|
|
+ data.flush();
|
|
|
|
|
+ BufferedReader in = new BufferedReader(
|
|
|
|
|
+ new InputStreamReader(con.getInputStream()));
|
|
|
|
|
+ String inputLine;
|
|
|
|
|
+ StringBuffer response = new StringBuffer();
|
|
|
|
|
+
|
|
|
|
|
+ while ((inputLine = in.readLine()) != null) {
|
|
|
|
|
+ response.append(inputLine);
|
|
|
|
|
+ }
|
|
|
|
|
+ in.close();
|
|
|
|
|
+
|
|
|
|
|
+ //print result
|
|
|
|
|
+ JSONParser parser=new JSONParser();
|
|
|
|
|
+ String s = response.toString();
|
|
|
|
|
+ Object obj = parser.parse(s);
|
|
|
|
|
+ JSONObject resultCode = (JSONObject)obj;
|
|
|
|
|
+ return (String) resultCode.get("result");
|
|
|
|
|
+ }
|
|
|
|
|
+ @SuppressWarnings("unchecked")
|
|
|
|
|
+ public boolean checkUser(String ticketNumber) throws Exception
|
|
|
|
|
+ {
|
|
|
|
|
+ JSONObject json=new JSONObject();
|
|
|
|
|
+ Random random = new Random();
|
|
|
|
|
+ int requestId = random.nextInt(9999) + 1000;
|
|
|
|
|
+ json.put("function", "List");
|
|
|
|
|
+ json.put("teamId", "IN103-3");
|
|
|
|
|
+ json.put("teamKey", "8b846f08-caca-4aab-b254-0109c5997053");
|
|
|
|
|
+ json.put("requestId", new Integer(requestId));
|
|
|
|
|
+ StringWriter out = new StringWriter();
|
|
|
|
|
+ json.writeJSONString(out);
|
|
|
|
|
+ String jsonText = out.toString();
|
|
|
|
|
+
|
|
|
|
|
+ String[] ticketNumbers = listTickets("http://webapi.implementation.computerscience.international:9323/CFIS/Ticket", jsonText);
|
|
|
|
|
+ for(int i = 0; i < ticketNumbers.length; i++)
|
|
|
|
|
+ {
|
|
|
|
|
+ if(new String(ticketNumbers[i]).equals(ticketNumber))
|
|
|
|
|
+ {
|
|
|
|
|
+ return true;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ return false;
|
|
|
|
|
+ }
|
|
|
|
|
+ @SuppressWarnings("unchecked")
|
|
|
|
|
+ public boolean grandAccess(String ticketNumber) throws Exception
|
|
|
|
|
+ {
|
|
|
|
|
+ JSONObject json=new JSONObject();
|
|
|
|
|
+ Random random = new Random();
|
|
|
|
|
+ int requestId = random.nextInt(9999) + 1000;
|
|
|
|
|
+ json.put("function", "RegisterInternetAccess");
|
|
|
|
|
+ json.put("teamId", "IN103-3");
|
|
|
|
|
+ json.put("teamKey", "8b846f08-caca-4aab-b254-0109c5997053");
|
|
|
|
|
+ json.put("requestId", new Integer(requestId));
|
|
|
|
|
+ json.put("ticketNumber", ticketNumber);
|
|
|
|
|
+ StringWriter out = new StringWriter();
|
|
|
|
|
+ json.writeJSONString(out);
|
|
|
|
|
+ //String jsonText = out.toString();
|
|
|
|
|
+
|
|
|
|
|
+ //String grandResult = grandAccessRequest(jsonText);
|
|
|
|
|
+ return true;
|
|
|
|
|
+ /*if(grandResult == "8" || grandResult == "0")
|
|
|
|
|
+ {
|
|
|
|
|
+ return true;
|
|
|
|
|
+ }
|
|
|
|
|
+ else
|
|
|
|
|
+ {
|
|
|
|
|
+ System.out.println("Suddenly le wild error code (" +grandResult+ ") appeared!!");
|
|
|
|
|
+ return false;
|
|
|
|
|
+ }*/
|
|
|
|
|
+ }
|
|
|
|
|
+}
|