renamed projekt folder and package file
This commit is contained in:
10
client/data/build.gradle.kts
Normal file
10
client/data/build.gradle.kts
Normal file
@@ -0,0 +1,10 @@
|
||||
plugins {
|
||||
java
|
||||
}
|
||||
|
||||
dependencies {
|
||||
val jacksonVersion = "2.13.0"
|
||||
implementation("com.fasterxml.jackson.core:jackson-databind:$jacksonVersion")
|
||||
implementation("com.fasterxml.jackson.core:jackson-core:$jacksonVersion")
|
||||
implementation("com.fasterxml.jackson.core:jackson-annotations:$jacksonVersion")
|
||||
}
|
96
client/data/src/main/java/res/DataController.java
Normal file
96
client/data/src/main/java/res/DataController.java
Normal file
@@ -0,0 +1,96 @@
|
||||
package res;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.DataOutputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.OutputStream;
|
||||
import java.net.HttpURLConnection;
|
||||
import java.net.URL;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.*;
|
||||
|
||||
public class DataController {
|
||||
|
||||
private static final String ALL_EVENTS_ENDPOINT = "http://localhost:8080/vpr/all-events";
|
||||
private static final String ALL_USERS_ENDPOINT = "http://localhost:8080/vpr/all-users";
|
||||
private static final String ADD_EVENT_ENDPOINT = "http://localhost:8080/vpr/add-event";
|
||||
private static final String DELETE_EVENT_ENDPOINT = "http://localhost:8080/vpr/del-event";
|
||||
|
||||
private final HttpRequest httpRequest;
|
||||
|
||||
public DataController(){
|
||||
httpRequest = new HttpRequest();
|
||||
}
|
||||
|
||||
public void createEvent(Event event){
|
||||
try {
|
||||
System.out.println(httpRequest.sendPostRequest(ADD_EVENT_ENDPOINT, event.getAsUrlParam()));
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public void deleteEvent(int eventId){
|
||||
try {
|
||||
System.out.println(httpRequest.sendPostRequest(DELETE_EVENT_ENDPOINT, "eventId=" + eventId));
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public ArrayList<Event> getAllVisibleEvents() {
|
||||
ArrayList<Event> eventList = new ArrayList<>();
|
||||
|
||||
try {
|
||||
String jsonResponse = httpRequest.sendPostRequest(ALL_EVENTS_ENDPOINT, "userId=1");
|
||||
System.out.println(jsonResponse);
|
||||
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
//String json = "{ \"color\" : \"Black\", \"type\" : \"BMW\" }";
|
||||
|
||||
for (Object obj : objectMapper.readValue(jsonResponse, Object[].class)){
|
||||
ArrayList<Object> list = new ArrayList<>();
|
||||
if (obj.getClass().isArray()) {
|
||||
list = (ArrayList<Object>) Arrays.asList((Object[])obj);
|
||||
} else if (obj instanceof Collection) {
|
||||
list = new ArrayList<>((Collection<?>) obj);
|
||||
}
|
||||
eventList.add(new Event(list));
|
||||
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return eventList;
|
||||
}
|
||||
|
||||
public Event[] getAllEvents() {
|
||||
Event[] eventList = null;
|
||||
|
||||
try {
|
||||
String jsonResponse = httpRequest.sendGetRequest("http://localhost:8080/vpr/all-events-test");
|
||||
eventList = parseJsonToEventList(jsonResponse);
|
||||
for (Event e : eventList) {
|
||||
System.out.println(e);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return eventList;
|
||||
}
|
||||
|
||||
private Event[] parseJsonToEventList(String jsonString) throws JsonProcessingException {
|
||||
ArrayList<Event> eventList;
|
||||
|
||||
// Parse JSON
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
//String json = "{ \"color\" : \"Black\", \"type\" : \"BMW\" }";
|
||||
|
||||
return objectMapper.readValue(jsonString, Event[].class);
|
||||
}
|
||||
}
|
174
client/data/src/main/java/res/Event.java
Normal file
174
client/data/src/main/java/res/Event.java
Normal file
@@ -0,0 +1,174 @@
|
||||
package res;
|
||||
|
||||
import com.sun.jdi.event.StepEvent;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class Event {
|
||||
|
||||
private int id;
|
||||
private String name;
|
||||
private int priority;
|
||||
private boolean isFullDay;
|
||||
private boolean isPrivate;
|
||||
private String start;
|
||||
private String end;
|
||||
|
||||
private LocalDateTime date;
|
||||
|
||||
private int ownerId;
|
||||
private String ownerName;
|
||||
|
||||
/*
|
||||
Constructor for SELECT:
|
||||
e.id AS eid,
|
||||
e.name AS ename,
|
||||
e.start,
|
||||
e.end,
|
||||
e.priority,
|
||||
e.is_full_day,
|
||||
|
||||
ue.date,
|
||||
|
||||
u.id AS uid,
|
||||
u.forename,
|
||||
u.name AS uname
|
||||
*/
|
||||
|
||||
public Event(ArrayList<Object> arr) {
|
||||
id = (int) arr.get(0);
|
||||
name = (String) arr.get(1);
|
||||
start = (String) arr.get(2);
|
||||
end = (String) arr.get(3);
|
||||
priority = (int) arr.get(4);
|
||||
isFullDay = (Boolean) arr.get(5); //((String)arr.get(5)).equals("true");
|
||||
|
||||
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
|
||||
date = LocalDateTime.parse(arr.get(6) + " 00:00", formatter);
|
||||
|
||||
ownerId = (int) arr.get(7);
|
||||
ownerName = arr.get(8) + " " + arr.get(9);
|
||||
}
|
||||
|
||||
public Event(String name,
|
||||
int priority,
|
||||
boolean isFullDay,
|
||||
boolean isPrivate,
|
||||
String start,
|
||||
String end,
|
||||
LocalDateTime date,
|
||||
int ownerId
|
||||
) {
|
||||
this.name = name;
|
||||
this.priority = priority;
|
||||
this.isFullDay = isFullDay;
|
||||
this.isPrivate = isPrivate;
|
||||
this.start = start;
|
||||
this.end = end;
|
||||
this.date = date;
|
||||
this.ownerId = ownerId;
|
||||
}
|
||||
|
||||
public int getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(int id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public int getPriority() {
|
||||
return priority;
|
||||
}
|
||||
|
||||
public void setPriority(int priority) {
|
||||
this.priority = priority;
|
||||
}
|
||||
|
||||
public boolean isFullDay() {
|
||||
return isFullDay;
|
||||
}
|
||||
|
||||
public void setFullDay(boolean fullDay) {
|
||||
isFullDay = fullDay;
|
||||
}
|
||||
|
||||
public boolean isPrivate() {
|
||||
return isPrivate;
|
||||
}
|
||||
|
||||
public void setPrivate(boolean aPrivate) {
|
||||
isPrivate = aPrivate;
|
||||
}
|
||||
|
||||
public String getStart() {
|
||||
return start;
|
||||
}
|
||||
|
||||
public void setStart(String start) {
|
||||
this.start = start;
|
||||
}
|
||||
|
||||
public String getEnd() {
|
||||
return end;
|
||||
}
|
||||
|
||||
public void setEnd(String end) {
|
||||
this.end = end;
|
||||
}
|
||||
|
||||
public LocalDateTime getDate() {
|
||||
return date;
|
||||
}
|
||||
|
||||
public void setDate(LocalDateTime date) {
|
||||
this.date = date;
|
||||
}
|
||||
|
||||
public int getOwnerId() {
|
||||
return ownerId;
|
||||
}
|
||||
|
||||
public void setOwnerId(int ownerId) {
|
||||
this.ownerId = ownerId;
|
||||
}
|
||||
|
||||
public String getOwnerName() {
|
||||
return ownerName;
|
||||
}
|
||||
|
||||
public void setOwnerName(String ownerName) {
|
||||
this.ownerName = ownerName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return name +
|
||||
"\nVon: " + start +
|
||||
"\nBis: " + start +
|
||||
(isFullDay ? "\nDen ganzen Tag lang" : "");
|
||||
|
||||
}
|
||||
|
||||
public String getAsUrlParam() {
|
||||
return "userId=" + getOwnerId() +
|
||||
"&date=" + getDate().toLocalDate() +
|
||||
"&name=" + getName() +
|
||||
"&start=" + getStart() +
|
||||
"&end=" + getEnd() +
|
||||
"&prority=" + getPriority() +
|
||||
"&isFullDay=" + isFullDay() +
|
||||
"&isPrivate=" + isPrivate();
|
||||
}
|
||||
}
|
76
client/data/src/main/java/res/HttpRequest.java
Normal file
76
client/data/src/main/java/res/HttpRequest.java
Normal file
@@ -0,0 +1,76 @@
|
||||
package res;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.DataOutputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.net.HttpURLConnection;
|
||||
import java.net.URL;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.Arrays;
|
||||
|
||||
public class HttpRequest {
|
||||
public String sendPostRequest(String urlString, String urlParameters) throws Exception{
|
||||
byte[] postData = urlParameters.getBytes(StandardCharsets.UTF_8);
|
||||
int postDataLength = postData.length;
|
||||
|
||||
URL url = new URL(urlString);
|
||||
HttpURLConnection con = (HttpURLConnection) url.openConnection();
|
||||
|
||||
con.setDoOutput(true);
|
||||
con.setInstanceFollowRedirects(false);
|
||||
con.setRequestMethod("POST");
|
||||
con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
|
||||
con.setRequestProperty("charset", "utf-8");
|
||||
con.setRequestProperty("Content-Length", Integer.toString(postDataLength));
|
||||
con.setUseCaches(false);
|
||||
try (DataOutputStream wr = new DataOutputStream(con.getOutputStream())) {
|
||||
wr.write(postData);
|
||||
}
|
||||
|
||||
int status = con.getResponseCode();
|
||||
if (status == 200) {
|
||||
BufferedReader in = new BufferedReader(
|
||||
new InputStreamReader(con.getInputStream()));
|
||||
String inputLine;
|
||||
StringBuilder content = new StringBuilder();
|
||||
while ((inputLine = in.readLine()) != null) {
|
||||
content.append(inputLine);
|
||||
}
|
||||
in.close();
|
||||
|
||||
con.disconnect();
|
||||
return content.toString();
|
||||
} else {
|
||||
con.disconnect();
|
||||
throw new Exception("Status: " + status);
|
||||
}
|
||||
}
|
||||
|
||||
public String sendGetRequest(String urlString) throws Exception{
|
||||
URL url = new URL(urlString);
|
||||
HttpURLConnection con = (HttpURLConnection) url.openConnection();
|
||||
con.setRequestMethod("GET");
|
||||
|
||||
con.setConnectTimeout(5000);
|
||||
con.setReadTimeout(5000);
|
||||
|
||||
int status = con.getResponseCode();
|
||||
if (status == 200) {
|
||||
BufferedReader in = new BufferedReader(
|
||||
new InputStreamReader(con.getInputStream()));
|
||||
String inputLine;
|
||||
StringBuilder content = new StringBuilder();
|
||||
while ((inputLine = in.readLine()) != null) {
|
||||
content.append(inputLine);
|
||||
}
|
||||
in.close();
|
||||
|
||||
con.disconnect();
|
||||
return content.toString();
|
||||
|
||||
} else {
|
||||
con.disconnect();
|
||||
throw new Exception("Status: " + status);
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user