Merge remote-tracking branch 'origin/master' into SvenAccountverwaltung

# Conflicts:
#	src/main/java/RestAPISchnittstelle/RestApiClient.java
This commit is contained in:
Sven Alteköster 2024-01-17 10:26:10 +01:00
commit 92d62509de

View File

@ -8,7 +8,7 @@ import java.nio.charset.StandardCharsets;
import Logik.ElternAccount; import Logik.ElternAccount;
import Logik.Kind; import Logik.Kind;
import com.google.gson.Gson; import com.google.gson.*;
/** /**
* noch nicht getestet * noch nicht getestet
@ -32,8 +32,8 @@ public class RestApiClient implements IRestAPI{
RestApiClient client1 = new RestApiClient(); RestApiClient client1 = new RestApiClient();
client1.post("Gericht", "{\"name\" : \"Svens Beine\", \"69.69\", \"beschreibung\" : \"Muss net schmegge, muss wirge\"}");
System.out.println(client1.nextId("Benutzer"));
} }
/** /**
@ -42,7 +42,7 @@ public class RestApiClient implements IRestAPI{
* @param controllerName Name des aufzurufenden Controllers * @param controllerName Name des aufzurufenden Controllers
*/ */
@Override @Override
public String get(String controllerName) { public void get(String controllerName) {
URI apiUri = URI.create(String.format("%s/%s", urlBase, controllerName)); URI apiUri = URI.create(String.format("%s/%s", urlBase, controllerName));
HttpRequest httpRequest = HttpRequest.newBuilder() HttpRequest httpRequest = HttpRequest.newBuilder()
@ -54,17 +54,12 @@ public class RestApiClient implements IRestAPI{
// Send the request and get the response // Send the request and get the response
HttpResponse<String> httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString()); HttpResponse<String> httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());
Kind test = gson.fromJson(httpResponse.body(), Kind.class);
// Print the response status code and body // Print the response status code and body
System.out.println("Status Code: " + httpResponse.statusCode()); System.out.println("Status Code: " + httpResponse.statusCode());
System.out.println("Response Body: " + test.getName()); System.out.println("Response Body: " + httpResponse.body());
return httpResponse.body();
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
return "";
} }
/** /**
@ -74,7 +69,7 @@ public class RestApiClient implements IRestAPI{
* @param id Id der Aufzurufenden Zeile * @param id Id der Aufzurufenden Zeile
*/ */
@Override @Override
public String get(String controllerName, int id) { public void get(String controllerName, int id) {
URI apiUri = URI.create(String.format("%s/%s/%s", urlBase, controllerName, id)); URI apiUri = URI.create(String.format("%s/%s/%s", urlBase, controllerName, id));
HttpRequest httpRequest = HttpRequest.newBuilder() HttpRequest httpRequest = HttpRequest.newBuilder()
@ -89,12 +84,10 @@ public class RestApiClient implements IRestAPI{
// Print the response status code and body // Print the response status code and body
System.out.println("Status Code: " + httpResponse.statusCode() + httpResponse.body()); System.out.println("Status Code: " + httpResponse.statusCode() + httpResponse.body());
return httpResponse.body();
//System.out.println("Response Body: " + test); //System.out.println("Response Body: " + test);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
return "";
} }
/** /**
@ -105,7 +98,7 @@ public class RestApiClient implements IRestAPI{
* @param bezahlt TODO Warum ist das hier? * @param bezahlt TODO Warum ist das hier?
*/ */
@Override @Override
public String get(String controllerName, int id, boolean bezahlt) { public void get(String controllerName, int id, boolean bezahlt) {
URI apiUri = URI.create(String.format("%s/%s?%s&%s", urlBase, controllerName, id, bezahlt)); URI apiUri = URI.create(String.format("%s/%s?%s&%s", urlBase, controllerName, id, bezahlt));
HttpRequest httpRequest = HttpRequest.newBuilder() HttpRequest httpRequest = HttpRequest.newBuilder()
@ -120,12 +113,9 @@ public class RestApiClient implements IRestAPI{
// Print the response status code and body // Print the response status code and body
System.out.println("Status Code: " + httpResponse.statusCode()); System.out.println("Status Code: " + httpResponse.statusCode());
System.out.println("Response Body: " + httpResponse.body()); System.out.println("Response Body: " + httpResponse.body());
return httpResponse.body();
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
return "";
} }
/** /**
@ -218,4 +208,34 @@ public class RestApiClient implements IRestAPI{
} }
} }
public int nextId(String controllerName){
URI apiUri = URI.create(String.format("%s/%s/nextId", urlBase, controllerName));
HttpRequest httpRequest = HttpRequest.newBuilder()
.uri(apiUri)
.GET()
.build();
try {
// Send the request and get the response
HttpResponse<String> httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());
// Print the response status code and body
System.out.println("Status Code: " + httpResponse.statusCode());
System.out.println("Response Body: " + httpResponse.body());
JsonElement jsonElement = JsonParser.parseString(httpResponse.body());
JsonArray jsonArray = jsonElement.getAsJsonArray();
JsonObject json = jsonArray.get(0).getAsJsonObject();
return json.get("auto_increment").getAsInt();
} catch (Exception e) {
e.printStackTrace();
return -1;
}
}
} }