Some code cleanup and repaired mostly whitelist/blacklist commands. pt2
parent
a3ab69a1fe
commit
b026c1331a
|
@ -21,7 +21,7 @@ Feel free to use this mod in your modpack or on server!
|
||||||
|
|
||||||
### Important
|
### Important
|
||||||
|
|
||||||
* Time format deafutly used by this mod is: dd.MM.yyyy_HH-mm-ss although it is configurable
|
* Time format defaultly used by this mod is: dd.MM.yyyy_HH-mm-ss although it is configurable
|
||||||
* _This mod contains **Cotton Config** and its dependencies as jars in jar, which are property of **CottonMC**_
|
* _This mod contains **Cotton Config** and its dependencies as jars in jar, which are property of **CottonMC**_
|
||||||
|
|
||||||
If you have any suggestions or found a problem please report it on github.
|
If you have any suggestions or found a problem please report it on github.
|
|
@ -50,8 +50,17 @@ public class TextileBackup implements ModInitializer {
|
||||||
private void registerCommands(){
|
private void registerCommands(){
|
||||||
CommandRegistry.INSTANCE.register(false, dispatcher -> dispatcher.register(
|
CommandRegistry.INSTANCE.register(false, dispatcher -> dispatcher.register(
|
||||||
LiteralArgumentBuilder.<ServerCommandSource>literal("backup")
|
LiteralArgumentBuilder.<ServerCommandSource>literal("backup")
|
||||||
.requires(ctx -> ctx.hasPermissionLevel(1))
|
.requires((ctx) -> {
|
||||||
.then(BlacklistCommand.register())
|
try {
|
||||||
|
return (config.whitelist.contains(ctx.getEntityOrThrow().getEntityName()) ||
|
||||||
|
ctx.hasPermissionLevel(config.permissionLevel)) &&
|
||||||
|
!config.blacklist.contains(ctx.getEntityOrThrow().getEntityName());
|
||||||
|
}catch (Exception e){ //Command was called from server console.
|
||||||
|
System.out.println("Server!");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
).then(BlacklistCommand.register())
|
||||||
.then(CleanupCommand.register())
|
.then(CleanupCommand.register())
|
||||||
.then(StartBackupCommand.register())
|
.then(StartBackupCommand.register())
|
||||||
.then(WhitelistCommand.register())
|
.then(WhitelistCommand.register())
|
||||||
|
|
|
@ -8,16 +8,14 @@ import net.minecraft.command.arguments.EntityArgumentType;
|
||||||
import net.minecraft.entity.player.PlayerEntity;
|
import net.minecraft.entity.player.PlayerEntity;
|
||||||
import net.minecraft.server.command.CommandManager;
|
import net.minecraft.server.command.CommandManager;
|
||||||
import net.minecraft.server.command.ServerCommandSource;
|
import net.minecraft.server.command.ServerCommandSource;
|
||||||
|
import net.minecraft.text.LiteralText;
|
||||||
import net.minecraft.text.TranslatableText;
|
import net.minecraft.text.TranslatableText;
|
||||||
import net.szum123321.textile_backup.TextileBackup;
|
import net.szum123321.textile_backup.TextileBackup;
|
||||||
import net.szum123321.textile_backup.core.Utilities;
|
import net.szum123321.textile_backup.core.Utilities;
|
||||||
|
|
||||||
public class BlacklistCommand {
|
public class BlacklistCommand {
|
||||||
public static LiteralArgumentBuilder<ServerCommandSource> register(){
|
public static LiteralArgumentBuilder<ServerCommandSource> register(){
|
||||||
return LiteralArgumentBuilder.<ServerCommandSource>literal("blacklist")
|
return CommandManager.literal("blacklist")
|
||||||
.requires(ctx -> (TextileBackup.config.whitelist.contains(ctx.getName()) ||
|
|
||||||
ctx.hasPermissionLevel(TextileBackup.config.permissionLevel)) &&
|
|
||||||
!TextileBackup.config.blacklist.contains(ctx.getName()))
|
|
||||||
.then(CommandManager.literal("add")
|
.then(CommandManager.literal("add")
|
||||||
.then(CommandManager.argument("player", EntityArgumentType.player())
|
.then(CommandManager.argument("player", EntityArgumentType.player())
|
||||||
.executes(BlacklistCommand::executeAdd)
|
.executes(BlacklistCommand::executeAdd)
|
||||||
|
@ -32,7 +30,7 @@ public class BlacklistCommand {
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int help(ServerCommandSource source){
|
private static int help(ServerCommandSource source){
|
||||||
source.sendFeedback(new TranslatableText("Available command are: add [player], remove [player], list."), false);
|
source.sendFeedback(new LiteralText("Available command are: add [player], remove [player], list."), false);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -56,7 +54,7 @@ public class BlacklistCommand {
|
||||||
PlayerEntity player = EntityArgumentType.getPlayer(ctx, "player");
|
PlayerEntity player = EntityArgumentType.getPlayer(ctx, "player");
|
||||||
|
|
||||||
if(TextileBackup.config.blacklist.contains(player.getEntityName())) {
|
if(TextileBackup.config.blacklist.contains(player.getEntityName())) {
|
||||||
ctx.getSource().sendFeedback(new TranslatableText("Player: {} is already blacklisted.", player.getEntityName()), true);
|
ctx.getSource().sendFeedback(new TranslatableText("Player: %s is already blacklisted.", player.getEntityName()), false);
|
||||||
}else{
|
}else{
|
||||||
TextileBackup.config.blacklist.add(player.getEntityName());
|
TextileBackup.config.blacklist.add(player.getEntityName());
|
||||||
ConfigManager.saveConfig(TextileBackup.config);
|
ConfigManager.saveConfig(TextileBackup.config);
|
||||||
|
@ -84,7 +82,7 @@ public class BlacklistCommand {
|
||||||
PlayerEntity player = EntityArgumentType.getPlayer(ctx, "player");
|
PlayerEntity player = EntityArgumentType.getPlayer(ctx, "player");
|
||||||
|
|
||||||
if(!TextileBackup.config.blacklist.contains(player.getEntityName())) {
|
if(!TextileBackup.config.blacklist.contains(player.getEntityName())) {
|
||||||
ctx.getSource().sendFeedback(new TranslatableText("Player: {} newer was blacklisted.", player.getEntityName()), false);
|
ctx.getSource().sendFeedback(new TranslatableText("Player: %s newer was blacklisted.", player.getEntityName()), false);
|
||||||
}else{
|
}else{
|
||||||
TextileBackup.config.blacklist.remove(player.getEntityName());
|
TextileBackup.config.blacklist.remove(player.getEntityName());
|
||||||
ConfigManager.saveConfig(TextileBackup.config);
|
ConfigManager.saveConfig(TextileBackup.config);
|
||||||
|
|
|
@ -21,22 +21,18 @@ package net.szum123321.textile_backup.commands;
|
||||||
import com.mojang.brigadier.builder.LiteralArgumentBuilder;
|
import com.mojang.brigadier.builder.LiteralArgumentBuilder;
|
||||||
import net.minecraft.server.command.CommandManager;
|
import net.minecraft.server.command.CommandManager;
|
||||||
import net.minecraft.server.command.ServerCommandSource;
|
import net.minecraft.server.command.ServerCommandSource;
|
||||||
import net.minecraft.text.TranslatableText;
|
import net.minecraft.text.LiteralText;
|
||||||
import net.szum123321.textile_backup.TextileBackup;
|
|
||||||
import net.szum123321.textile_backup.core.BackupHelper;
|
import net.szum123321.textile_backup.core.BackupHelper;
|
||||||
|
|
||||||
public class CleanupCommand {
|
public class CleanupCommand {
|
||||||
public static LiteralArgumentBuilder<ServerCommandSource> register(){
|
public static LiteralArgumentBuilder<ServerCommandSource> register(){
|
||||||
return CommandManager.literal("cleanup")
|
return CommandManager.literal("cleanup")
|
||||||
.requires(ctx -> TextileBackup.config.whitelist.contains(ctx.getName()) ||
|
|
||||||
ctx.hasPermissionLevel(TextileBackup.config.permissionLevel) &&
|
|
||||||
!TextileBackup.config.blacklist.contains(ctx.getName()))
|
|
||||||
.executes(ctx -> execute(ctx.getSource()));
|
.executes(ctx -> execute(ctx.getSource()));
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int execute(ServerCommandSource source){
|
private static int execute(ServerCommandSource source){
|
||||||
BackupHelper.executeFileLimit(source, source.getMinecraftServer().getLevelName());
|
BackupHelper.executeFileLimit(source, source.getMinecraftServer().getLevelName());
|
||||||
source.sendFeedback(new TranslatableText("Done"), false);
|
source.sendFeedback(new LiteralText("Done"), false);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,22 +23,18 @@ import com.mojang.brigadier.builder.LiteralArgumentBuilder;
|
||||||
import com.mojang.brigadier.context.CommandContext;
|
import com.mojang.brigadier.context.CommandContext;
|
||||||
import net.minecraft.server.command.CommandManager;
|
import net.minecraft.server.command.CommandManager;
|
||||||
import net.minecraft.server.command.ServerCommandSource;
|
import net.minecraft.server.command.ServerCommandSource;
|
||||||
import net.szum123321.textile_backup.TextileBackup;
|
|
||||||
import net.szum123321.textile_backup.core.BackupHelper;
|
import net.szum123321.textile_backup.core.BackupHelper;
|
||||||
|
|
||||||
public class StartBackupCommand {
|
public class StartBackupCommand {
|
||||||
public static LiteralArgumentBuilder<ServerCommandSource> register(){
|
public static LiteralArgumentBuilder<ServerCommandSource> register(){
|
||||||
return CommandManager.literal("start")
|
return CommandManager.literal("start")
|
||||||
.requires(ctx -> TextileBackup.config.whitelist.contains(ctx.getName()) ||
|
.then(CommandManager.argument("comment", StringArgumentType.string())
|
||||||
ctx.hasPermissionLevel(TextileBackup.config.permissionLevel) &&
|
|
||||||
!TextileBackup.config.blacklist.contains(ctx.getName()))
|
|
||||||
.then(CommandManager.argument("Comment", StringArgumentType.word())
|
|
||||||
.executes(StartBackupCommand::executeWithComment)
|
.executes(StartBackupCommand::executeWithComment)
|
||||||
).executes(ctx -> execute(ctx.getSource()));
|
).executes(ctx -> execute(ctx.getSource()));
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int executeWithComment(CommandContext<ServerCommandSource> source) {
|
private static int executeWithComment(CommandContext<ServerCommandSource> source) {
|
||||||
BackupHelper.create(source.getSource().getMinecraftServer(), source.getSource(), true, StringArgumentType.getString(source, "Comment"));
|
BackupHelper.create(source.getSource().getMinecraftServer(), source.getSource(), true, StringArgumentType.getString(source, "comment").replace("#", ""));
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
package net.szum123321.textile_backup.commands;
|
package net.szum123321.textile_backup.commands;
|
||||||
|
|
||||||
import com.mojang.brigadier.arguments.BoolArgumentType;
|
|
||||||
import com.mojang.brigadier.builder.LiteralArgumentBuilder;
|
import com.mojang.brigadier.builder.LiteralArgumentBuilder;
|
||||||
import com.mojang.brigadier.context.CommandContext;
|
import com.mojang.brigadier.context.CommandContext;
|
||||||
import com.mojang.brigadier.exceptions.CommandSyntaxException;
|
import com.mojang.brigadier.exceptions.CommandSyntaxException;
|
||||||
|
@ -9,6 +8,7 @@ import net.minecraft.command.arguments.EntityArgumentType;
|
||||||
import net.minecraft.entity.player.PlayerEntity;
|
import net.minecraft.entity.player.PlayerEntity;
|
||||||
import net.minecraft.server.command.CommandManager;
|
import net.minecraft.server.command.CommandManager;
|
||||||
import net.minecraft.server.command.ServerCommandSource;
|
import net.minecraft.server.command.ServerCommandSource;
|
||||||
|
import net.minecraft.text.LiteralText;
|
||||||
import net.minecraft.text.TranslatableText;
|
import net.minecraft.text.TranslatableText;
|
||||||
import net.szum123321.textile_backup.TextileBackup;
|
import net.szum123321.textile_backup.TextileBackup;
|
||||||
import net.szum123321.textile_backup.core.Utilities;
|
import net.szum123321.textile_backup.core.Utilities;
|
||||||
|
@ -16,9 +16,6 @@ import net.szum123321.textile_backup.core.Utilities;
|
||||||
public class WhitelistCommand {
|
public class WhitelistCommand {
|
||||||
public static LiteralArgumentBuilder<ServerCommandSource> register(){
|
public static LiteralArgumentBuilder<ServerCommandSource> register(){
|
||||||
return CommandManager.literal("whitelist")
|
return CommandManager.literal("whitelist")
|
||||||
.requires(ctx -> TextileBackup.config.whitelist.contains(ctx.getName()) ||
|
|
||||||
ctx.hasPermissionLevel(TextileBackup.config.permissionLevel) &&
|
|
||||||
!TextileBackup.config.blacklist.contains(ctx.getName()))
|
|
||||||
.then(CommandManager.literal("add")
|
.then(CommandManager.literal("add")
|
||||||
.then(CommandManager.argument("player", EntityArgumentType.player())
|
.then(CommandManager.argument("player", EntityArgumentType.player())
|
||||||
.executes(WhitelistCommand::executeAdd)
|
.executes(WhitelistCommand::executeAdd)
|
||||||
|
@ -33,7 +30,7 @@ public class WhitelistCommand {
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int help(ServerCommandSource source){
|
private static int help(ServerCommandSource source){
|
||||||
source.sendFeedback(new TranslatableText("Available command are: add [player], remove [player], list."), false);
|
source.sendFeedback(new LiteralText("Available command are: add [player], remove [player], list."), false);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -57,7 +54,7 @@ public class WhitelistCommand {
|
||||||
PlayerEntity player = EntityArgumentType.getPlayer(ctx, "player");
|
PlayerEntity player = EntityArgumentType.getPlayer(ctx, "player");
|
||||||
|
|
||||||
if(TextileBackup.config.whitelist.contains(player.getEntityName())) {
|
if(TextileBackup.config.whitelist.contains(player.getEntityName())) {
|
||||||
ctx.getSource().sendFeedback(new TranslatableText("Player: {} is already whitelisted.", player.getEntityName()), false);
|
ctx.getSource().sendFeedback(new TranslatableText("Player: %s is already whitelisted.", player.getEntityName()), false);
|
||||||
}else{
|
}else{
|
||||||
TextileBackup.config.whitelist.add(player.getEntityName());
|
TextileBackup.config.whitelist.add(player.getEntityName());
|
||||||
ConfigManager.saveConfig(TextileBackup.config);
|
ConfigManager.saveConfig(TextileBackup.config);
|
||||||
|
@ -85,7 +82,7 @@ public class WhitelistCommand {
|
||||||
PlayerEntity player = EntityArgumentType.getPlayer(ctx, "player");
|
PlayerEntity player = EntityArgumentType.getPlayer(ctx, "player");
|
||||||
|
|
||||||
if(!TextileBackup.config.whitelist.contains(player.getEntityName())) {
|
if(!TextileBackup.config.whitelist.contains(player.getEntityName())) {
|
||||||
ctx.getSource().sendFeedback(new TranslatableText("Player: {} newer was on the whitelist.", player.getEntityName()), false);
|
ctx.getSource().sendFeedback(new TranslatableText("Player: %s newer was on the whitelist.", player.getEntityName()), false);
|
||||||
}else{
|
}else{
|
||||||
TextileBackup.config.whitelist.remove(player.getEntityName());
|
TextileBackup.config.whitelist.remove(player.getEntityName());
|
||||||
ConfigManager.saveConfig(TextileBackup.config);
|
ConfigManager.saveConfig(TextileBackup.config);
|
||||||
|
|
|
@ -21,7 +21,6 @@ package net.szum123321.textile_backup.core;
|
||||||
import net.fabricmc.loader.api.FabricLoader;
|
import net.fabricmc.loader.api.FabricLoader;
|
||||||
import net.minecraft.server.MinecraftServer;
|
import net.minecraft.server.MinecraftServer;
|
||||||
import net.minecraft.server.command.ServerCommandSource;
|
import net.minecraft.server.command.ServerCommandSource;
|
||||||
import net.minecraft.text.TranslatableText;
|
|
||||||
import net.szum123321.textile_backup.TextileBackup;
|
import net.szum123321.textile_backup.TextileBackup;
|
||||||
import org.apache.commons.io.FileUtils;
|
import org.apache.commons.io.FileUtils;
|
||||||
|
|
||||||
|
@ -29,7 +28,6 @@ import java.io.File;
|
||||||
import java.io.FileFilter;
|
import java.io.FileFilter;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.time.ZoneOffset;
|
import java.time.ZoneOffset;
|
||||||
import java.time.format.DateTimeFormatter;
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
|
||||||
public class BackupHelper {
|
public class BackupHelper {
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
package net.szum123321.textile_backup.core;
|
package net.szum123321.textile_backup.core;
|
||||||
|
|
||||||
import net.minecraft.server.command.ServerCommandSource;
|
import net.minecraft.server.command.ServerCommandSource;
|
||||||
import net.minecraft.text.TranslatableText;
|
import net.minecraft.text.LiteralText;
|
||||||
import net.szum123321.textile_backup.TextileBackup;
|
import net.szum123321.textile_backup.TextileBackup;
|
||||||
|
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
|
|
||||||
public class Utilities {
|
public class Utilities {
|
||||||
public static DateTimeFormatter getDateTimeFormatter(){
|
public static DateTimeFormatter getDateTimeFormatter(){
|
||||||
if(TextileBackup.config.dateTimeFormat != null)
|
if(!TextileBackup.config.dateTimeFormat.equals(""))
|
||||||
return DateTimeFormatter.ofPattern(TextileBackup.config.dateTimeFormat);
|
return DateTimeFormatter.ofPattern(TextileBackup.config.dateTimeFormat);
|
||||||
else
|
else
|
||||||
return getBackupDateTimeFormatter();
|
return getBackupDateTimeFormatter();
|
||||||
|
@ -25,7 +25,7 @@ public class Utilities {
|
||||||
|
|
||||||
public static void log(String s, ServerCommandSource ctx){
|
public static void log(String s, ServerCommandSource ctx){
|
||||||
if(ctx != null)
|
if(ctx != null)
|
||||||
ctx.sendFeedback(new TranslatableText(s), false);
|
ctx.sendFeedback(new LiteralText(s), false);
|
||||||
|
|
||||||
if(TextileBackup.config.log)
|
if(TextileBackup.config.log)
|
||||||
TextileBackup.logger.info(s);
|
TextileBackup.logger.info(s);
|
||||||
|
@ -33,7 +33,7 @@ public class Utilities {
|
||||||
|
|
||||||
public static void error(String s, ServerCommandSource ctx){
|
public static void error(String s, ServerCommandSource ctx){
|
||||||
if(ctx != null)
|
if(ctx != null)
|
||||||
ctx.sendFeedback(new TranslatableText(s), true);
|
ctx.sendFeedback(new LiteralText(s), true);
|
||||||
|
|
||||||
if(TextileBackup.config.log)
|
if(TextileBackup.config.log)
|
||||||
TextileBackup.logger.error(s);
|
TextileBackup.logger.error(s);
|
||||||
|
|
Loading…
Reference in New Issue