Delete src/main/java/net/viper/status/modules/forum/ForumNotification.java via Git Manager GUI
This commit is contained in:
@@ -1,114 +0,0 @@
|
|||||||
package net.viper.status.modules.forum;
|
|
||||||
|
|
||||||
import java.util.UUID;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Eine einzelne Forum-Benachrichtigung.
|
|
||||||
*/
|
|
||||||
public class ForumNotification {
|
|
||||||
|
|
||||||
private final UUID playerUuid;
|
|
||||||
private final String type; // reply, mention, message
|
|
||||||
private final String title;
|
|
||||||
private final String author;
|
|
||||||
private final String url;
|
|
||||||
private final long timestamp;
|
|
||||||
private boolean delivered;
|
|
||||||
|
|
||||||
public ForumNotification(UUID playerUuid, String type, String title, String author, String url) {
|
|
||||||
this.playerUuid = playerUuid;
|
|
||||||
this.type = type != null ? type : "reply";
|
|
||||||
this.title = title != null ? title : "";
|
|
||||||
this.author = author != null ? author : "Unbekannt";
|
|
||||||
this.url = url != null ? url : "";
|
|
||||||
this.timestamp = System.currentTimeMillis();
|
|
||||||
this.delivered = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Interner Konstruktor für Deserialisierung */
|
|
||||||
ForumNotification(UUID playerUuid, String type, String title, String author, String url, long timestamp, boolean delivered) {
|
|
||||||
this.playerUuid = playerUuid;
|
|
||||||
this.type = type;
|
|
||||||
this.title = title;
|
|
||||||
this.author = author;
|
|
||||||
this.url = url;
|
|
||||||
this.timestamp = timestamp;
|
|
||||||
this.delivered = delivered;
|
|
||||||
}
|
|
||||||
|
|
||||||
// --- Getter ---
|
|
||||||
|
|
||||||
public UUID getPlayerUuid() { return playerUuid; }
|
|
||||||
public String getType() { return type; }
|
|
||||||
public String getTitle() { return title; }
|
|
||||||
public String getAuthor() { return author; }
|
|
||||||
public String getUrl() { return url; }
|
|
||||||
public long getTimestamp() { return timestamp; }
|
|
||||||
public boolean isDelivered() { return delivered; }
|
|
||||||
public void setDelivered(boolean d) { this.delivered = d; }
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Deutsches Label für den Benachrichtigungstyp.
|
|
||||||
*/
|
|
||||||
public String getTypeLabel() {
|
|
||||||
switch (type) {
|
|
||||||
case "reply": return "Neue Antwort";
|
|
||||||
case "mention": return "Erwähnung";
|
|
||||||
case "message": return "Neue PN";
|
|
||||||
case "thread": return "Neuer Thread";
|
|
||||||
case "poll": return "Neue Umfrage";
|
|
||||||
case "answer": return "Antwort auf deinen Thread";
|
|
||||||
default: return "Benachrichtigung";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Farbcode (Minecraft) je nach Typ.
|
|
||||||
*/
|
|
||||||
public String getTypeColor() {
|
|
||||||
switch (type) {
|
|
||||||
case "reply": return "§b"; // Aqua
|
|
||||||
case "mention": return "§e"; // Gelb
|
|
||||||
case "message": return "§d"; // Rosa
|
|
||||||
case "thread": return "§a"; // Grün
|
|
||||||
case "poll": return "§3"; // Dunkel-Aqua
|
|
||||||
case "answer": return "§2"; // Dunkel-Grün
|
|
||||||
default: return "§f"; // Weiß
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Serialisierung für Datei-Speicherung.
|
|
||||||
* Format: uuid|type|title|author|url|timestamp|delivered
|
|
||||||
*/
|
|
||||||
public String toLine() {
|
|
||||||
return playerUuid.toString() + "|"
|
|
||||||
+ type + "|"
|
|
||||||
+ title.replace("|", "_") + "|"
|
|
||||||
+ author.replace("|", "_") + "|"
|
|
||||||
+ url.replace("|", "_") + "|"
|
|
||||||
+ timestamp + "|"
|
|
||||||
+ (delivered ? "1" : "0");
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Deserialisierung aus einer Zeile.
|
|
||||||
*/
|
|
||||||
public static ForumNotification fromLine(String line) {
|
|
||||||
if (line == null || line.trim().isEmpty()) return null;
|
|
||||||
String[] parts = line.split("\\|", -1);
|
|
||||||
if (parts.length < 7) return null;
|
|
||||||
try {
|
|
||||||
UUID uuid = UUID.fromString(parts[0]);
|
|
||||||
String type = parts[1];
|
|
||||||
String title = parts[2];
|
|
||||||
String author = parts[3];
|
|
||||||
String url = parts[4];
|
|
||||||
long timestamp = Long.parseLong(parts[5]);
|
|
||||||
boolean delivered = "1".equals(parts[6]);
|
|
||||||
return new ForumNotification(uuid, type, title, author, url, timestamp, delivered);
|
|
||||||
} catch (Exception e) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user