Skip to content
GetDataFromAmsatDatabase.java 1.78 KiB
Newer Older
xtof's avatar
xtof committed
package org.josast.databaseSync;

import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Iterator;
import java.util.TimeZone;

import org.json.JSONArray;
import org.json.JSONObject;

public class GetDataFromAmsatDatabase implements Commande {

	private String file = null;
	private String urlDatabase = null;

	final private SimpleDateFormat ISO8601DATEFORMAT = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");

	public GetDataFromAmsatDatabase(String urlIn) {
		urlDatabase = urlIn;
		ISO8601DATEFORMAT.setTimeZone(TimeZone.getTimeZone("UTC"));
	}

	public DataToExchange[] getTelemetrydata(Date startdate, Date endate, int noradid) {

		String startDate = ISO8601DATEFORMAT.format(startdate);
		String endDate = ISO8601DATEFORMAT.format(endate);
		DataToExchange dte[] = null;

		// ?endTimeStamp=2021-10-08T15:00:00Z&noradID=1000&startTimeStamp=2021-09-08T13:00:00Z
		String url = urlDatabase + "?startTimeStamp=" + startDate + "&endTimeStamp=" +endDate  + "&noradID=" + noradid;
 
		HttpGetDatabasse httpget = new HttpGetDatabasse();
		String results = httpget.sendGET(url);
		JSONArray json = new JSONArray(results);

		if (json.length() != 0) {
			JSONObject jsonObject = (JSONObject) json.get(0);
			dte = new DataToExchange[json.length()];
			for (int i = 0; i < json.length(); i++) {
				jsonObject = (JSONObject) json.get(i);
				dte[i] = new DataToExchange(jsonObject.getString("source"), jsonObject.getString("timestamp"),
						jsonObject.getString("frame"), jsonObject.getString("latitude"),jsonObject.getString("longitude"));

			}
		}
		return dte;

	}

	@Override
	public void excecute() {

	}



}