Skip to content

Commit c30f69f

Browse files
committed
custom errors
1 parent 6d2f4ea commit c30f69f

File tree

5 files changed

+77
-0
lines changed

5 files changed

+77
-0
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package pro.cloudnode.smp.cloudnodemsg.error;
2+
3+
import net.kyori.adventure.audience.Audience;
4+
import net.kyori.adventure.text.Component;
5+
import net.kyori.adventure.text.minimessage.MiniMessage;
6+
import org.jetbrains.annotations.NotNull;
7+
import pro.cloudnode.smp.cloudnodemsg.CloudnodeMSG;
8+
9+
import java.util.logging.Level;
10+
11+
public abstract class Error extends Throwable {
12+
public final @NotNull Component component;
13+
14+
protected Error(@NotNull Component component) {
15+
this.component = component;
16+
}
17+
18+
public boolean send(final @NotNull Audience recipient) {
19+
recipient.sendMessage(component);
20+
return true;
21+
}
22+
23+
public @NotNull Error log() {
24+
CloudnodeMSG.getInstance().getLogger().log(Level.SEVERE, MiniMessage.miniMessage().serialize(component), this);
25+
return this;
26+
}
27+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package pro.cloudnode.smp.cloudnodemsg.error;
2+
3+
import pro.cloudnode.smp.cloudnodemsg.CloudnodeMSG;
4+
5+
/**
6+
* Player has no username (somehow)
7+
*/
8+
public final class InvalidPlayerError extends Error {
9+
public InvalidPlayerError() {
10+
super(CloudnodeMSG.getInstance().config().invalidPlayer());
11+
}
12+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package pro.cloudnode.smp.cloudnodemsg.error;
2+
3+
import org.jetbrains.annotations.NotNull;
4+
import pro.cloudnode.smp.cloudnodemsg.CloudnodeMSG;
5+
6+
/**
7+
* Player has no username (somehow)
8+
*/
9+
public final class MessageYourselfError extends Error {
10+
public MessageYourselfError() {
11+
super(CloudnodeMSG.getInstance().config().messageYourself());
12+
}
13+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package pro.cloudnode.smp.cloudnodemsg.error;
2+
3+
import pro.cloudnode.smp.cloudnodemsg.CloudnodeMSG;
4+
5+
/**
6+
* Player has no username (somehow)
7+
*/
8+
public final class NoPermissionError extends Error {
9+
public NoPermissionError() {
10+
super(CloudnodeMSG.getInstance().config().noPermission());
11+
}
12+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package pro.cloudnode.smp.cloudnodemsg.error;
2+
3+
import org.jetbrains.annotations.NotNull;
4+
import pro.cloudnode.smp.cloudnodemsg.CloudnodeMSG;
5+
6+
/**
7+
* Player has no username (somehow)
8+
*/
9+
public final class PlayerNotFoundError extends Error {
10+
public PlayerNotFoundError(final @NotNull String player) {
11+
super(CloudnodeMSG.getInstance().config().playerNotFound(player));
12+
}
13+
}

0 commit comments

Comments
 (0)