Skip to content

Commit c409e94

Browse files
committed
Finish error reporting
1 parent b365888 commit c409e94

File tree

5 files changed

+19
-7
lines changed

5 files changed

+19
-7
lines changed

API/src/main/java/me/innectic/permissify/api/database/ConnectionError.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
*/
3434
@AllArgsConstructor
3535
public enum ConnectionError {
36-
REJECTED("Connection rejected"), DATABASE_EXCEPTION("Encountered an exception in a database handler");
36+
REJECTED("Connection to database rejected"), DATABASE_EXCEPTION("Exception in a database handler");
3737

3838
@Getter private String display;
3939
}

Spigot/src/main/java/me/innectic/permissify/spigot/commands/permissify/PlayerCommand.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import me.innectic.permissify.api.permission.Permission;
3131
import me.innectic.permissify.api.permission.PermissionGroup;
3232
import me.innectic.permissify.spigot.utils.PermissionUtil;
33+
import net.md_5.bungee.api.chat.TextComponent;
3334
import org.bukkit.Bukkit;
3435
import org.bukkit.OfflinePlayer;
3536
import org.bukkit.command.CommandSender;
@@ -163,7 +164,7 @@ public CommandResponse handleListPermissions(CommandSender sender, String[] args
163164
if (args.length < 1) return new CommandResponse(PermissifyConstants.NOT_ENOUGH_ARGUMENTS_PLAYER_LIST_PERMISSIONS, false);
164165
OfflinePlayer targetPlayer = Bukkit.getPlayer(args[0]);
165166
if (targetPlayer == null) return new CommandResponse(PermissifyConstants.INVALID_PLAYER, false);
166-
// This sucks, can probably be cleanup up.
167+
// This sucks, can probably be cleaned up.
167168
List<PermissionGroup> groups = plugin.getPermissifyAPI().getDatabaseHandler().get().getGroups().stream()
168169
.filter(permissionGroup -> permissionGroup.hasPlayer(targetPlayer.getUniqueId()))
169170
.collect(Collectors.toList());

Spigot/src/main/java/me/innectic/permissify/spigot/utils/DisplayUtil.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import me.innectic.permissify.api.PermissifyConstants;
2828
import me.innectic.permissify.api.database.ConnectionError;
2929
import org.bukkit.Bukkit;
30+
import org.bukkit.ChatColor;
3031
import org.bukkit.entity.Player;
3132

3233
import java.util.List;
@@ -41,8 +42,16 @@ public class DisplayUtil implements me.innectic.permissify.api.util.DisplayUtil
4142

4243
@Override
4344
public void displayError(ConnectionError error, Optional<Exception> exception) {
44-
List<String> messages = PermissifyConstants.PERMISSIFY_ERROR.stream().map(ColorUtil::makeReadable).collect(Collectors.toList());
45-
List<Player> players = Bukkit.getOnlinePlayers().stream().filter(player -> player.hasPermission(PermissifyConstants.PERMISSIFY_ADMIN)).collect(Collectors.toList());
45+
String reportable = shouldReport(error) ? ChatColor.GREEN + "" + ChatColor.BOLD + "Yes": ChatColor.RED + "" + ChatColor.BOLD + "No";
46+
List<String> messages = PermissifyConstants.PERMISSIFY_ERROR.stream()
47+
.map(part -> part.replace("<ERROR_TYPE>", error.getDisplay()))
48+
.map(part -> part.replace("<SHOULD_REPORT>", reportable))
49+
.map(ColorUtil::makeReadable).collect(Collectors.toList());
50+
List<Player> players = Bukkit.getOnlinePlayers().stream().filter(player -> PermissionUtil.hasPermissionOrSuperAdmin(player, PermissifyConstants.PERMISSIFY_ADMIN)).collect(Collectors.toList());
4651
messages.forEach(message -> players.forEach(player -> player.sendMessage(message)));
4752
}
53+
54+
private boolean shouldReport(ConnectionError error) {
55+
return error != ConnectionError.REJECTED && error == ConnectionError.DATABASE_EXCEPTION;
56+
}
4857
}

Spigot/src/main/resources/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@ connection:
66
database: permissify
77
username: permissify
88
password: magicalpassword
9-
file: test.db
9+
file: permissify.db
Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
name: Permissify
2-
version: 1.0
2+
version: 1.3
33
authors: [Innectic]
44
description: Permissify is a dead-simple, next-generation permission plugin.
55
main: me.innectic.permissify.spigot.PermissifyMain
66

77
commands:
88
permissify:
9-
description: Do things with permissions
9+
description: Do things with permissions
10+
perm:
11+
description: Alias of permissify

0 commit comments

Comments
 (0)