stefan #20

Merged
PBS2H22AGR merged 2 commits from stefan into master 2024-01-19 12:30:10 +01:00
2 changed files with 46 additions and 11 deletions
Showing only changes of commit 287ccd9ce5 - Show all commits

View File

@ -11,11 +11,11 @@ public interface IRestAPI {
// region Get // region Get
void get(String controllerName); String get(String controllerName);
void get (String controllerName, int id); String get (String controllerName, int id);
void get (String controllerName, int id, boolean bezahlt); String get (String controllerName, int id, boolean bezahlt);
//endregion //endregion

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 void get(String controllerName) { public String 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,13 +54,13 @@ 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 null;
} }
} }
@ -71,7 +71,7 @@ public class RestApiClient implements IRestAPI{
* @param id Id der Aufzurufenden Zeile * @param id Id der Aufzurufenden Zeile
*/ */
@Override @Override
public void get(String controllerName, int id) { public String 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()
@ -86,9 +86,12 @@ 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 null;
} }
} }
@ -100,7 +103,7 @@ public class RestApiClient implements IRestAPI{
* @param bezahlt TODO Warum ist das hier? * @param bezahlt TODO Warum ist das hier?
*/ */
@Override @Override
public void get(String controllerName, int id, boolean bezahlt) { public String 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()
@ -115,8 +118,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()); 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 null;
} }
} }
@ -210,4 +215,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;
}
}
} }