Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package com.techcavern.wavetact.consoleCommands.config; import com.techcavern.wavetact.annot.ConCMD; import com.techcavern.wavetact.objects.CommandIO; import com.techcavern.wavetact.objects.ConsoleCommand; import com.techcavern.wavetact.utils.DatabaseUtils; import com.techcavern.wavetact.utils.GeneralUtils; import org.apache.commons.lang3.StringUtils; import org.jooq.Record; import java.util.HashSet; import java.util.Set; import java.util.Set; import static com.techcavern.wavetactdb.Tables.BLACKLISTS; /** * @author jztech101 */ @ConCMD public class Blacklist extends ConsoleCommand { public Blacklist() { super(GeneralUtils.toArray("blacklist bl"), "blacklist [type] (-)[blacklist Url]", "Adds/removes domains from blacklist database"); } @Override public void onCommand(String command, String[] args, CommandIO commandIO) { if (args.length > 0) { if (args[1].startsWith("-")) { Record blacklist = DatabaseUtils.getBlacklist(args[0], args[1].replaceFirst("\\-", "").replaceAll("http://|https://", "")); if (blacklist != null) { DatabaseUtils.removeBlacklist(args[0], args[1].replaceFirst("\\-", "").replaceAll("http://|https://", "")); commandIO.getPrintStream().println(args[0] + " blacklist removed"); } else { commandIO.getPrintStream().println(args[0] + " blacklist does not exist on list"); } } else if (args[1].equalsIgnoreCase("list")) { Set<String> blacklists = new HashSet<>(); for (Record bl : DatabaseUtils.getBlacklists(args[0])) blacklists.add(bl.getValue(BLACKLISTS.URL)); if (!blacklists.isEmpty()) { commandIO.getPrintStream().println(StringUtils.join(blacklists, ", ")); } else { commandIO.getPrintStream().println(args[0] + " blacklist is empty"); } } else { Record blacklist = DatabaseUtils.getBlacklist(args[0], args[1].replaceFirst("\\-", "").replaceAll("http://|https://", "")); if (blacklist == null) { DatabaseUtils.addBlacklist(args[1].replaceFirst("\\-", "").replaceAll("http://|https://", ""), args[0]); commandIO.getPrintStream().println(args[0] + " blacklist added"); } else { commandIO.getPrintStream().println(args[0] + " blacklist is already listed"); } } } else { commandIO.getPrintStream().println("Please specify a " + args[0] + " blacklist"); } } }