added very basic Posts
This commit is contained in:
43
src/main/java/de/anxietyprime/swajodel/JodelPost.java
Normal file
43
src/main/java/de/anxietyprime/swajodel/JodelPost.java
Normal file
@@ -0,0 +1,43 @@
|
||||
package de.anxietyprime.swajodel;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.Optional;
|
||||
import java.util.Vector;
|
||||
|
||||
public class JodelPost {
|
||||
private Long id;
|
||||
private Long authorID;
|
||||
|
||||
public Long anonymousID;
|
||||
public String title;
|
||||
public String content;
|
||||
public Date date;
|
||||
public Location location;
|
||||
public Vector<JodelPost> comments = new Vector<>();
|
||||
public Optional<Boolean> reaction;
|
||||
public Reaction[] reactions;
|
||||
|
||||
public void anonymize(Optional<Vector<Long>> idCache) {
|
||||
if (idCache.isEmpty()) {
|
||||
idCache = Optional.of(new Vector());
|
||||
}
|
||||
System.out.println(idCache);
|
||||
|
||||
int i = idCache.get().indexOf(this.authorID);
|
||||
if (i == -1) {
|
||||
this.anonymousID = (long) idCache.get().size();
|
||||
idCache.get().add(this.authorID);
|
||||
}
|
||||
else {
|
||||
this.anonymousID = (long) i;
|
||||
}
|
||||
|
||||
for (JodelPost comment : this.comments) {
|
||||
comment.anonymize(idCache);
|
||||
}
|
||||
}
|
||||
|
||||
public JodelPost(long id) {
|
||||
this.authorID = id;
|
||||
}
|
||||
}
|
||||
6
src/main/java/de/anxietyprime/swajodel/Location.java
Normal file
6
src/main/java/de/anxietyprime/swajodel/Location.java
Normal file
@@ -0,0 +1,6 @@
|
||||
package de.anxietyprime.swajodel;
|
||||
|
||||
public class Location {
|
||||
public float longitude;
|
||||
public float latitude;
|
||||
}
|
||||
6
src/main/java/de/anxietyprime/swajodel/Reaction.java
Normal file
6
src/main/java/de/anxietyprime/swajodel/Reaction.java
Normal file
@@ -0,0 +1,6 @@
|
||||
package de.anxietyprime.swajodel;
|
||||
|
||||
public class Reaction {
|
||||
private long positive;
|
||||
private long negative;
|
||||
}
|
||||
22
src/main/java/de/anxietyprime/swajodel/Routes.java
Normal file
22
src/main/java/de/anxietyprime/swajodel/Routes.java
Normal file
@@ -0,0 +1,22 @@
|
||||
package de.anxietyprime.swajodel;
|
||||
|
||||
import com.fasterxml.jackson.databind.JsonSerializer;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
@RestController
|
||||
public class Routes {
|
||||
|
||||
@GetMapping("")
|
||||
public JodelPost test() {
|
||||
JodelPost post = new JodelPost(100);
|
||||
|
||||
post.anonymize(Optional.empty());
|
||||
|
||||
return post;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user