/
codebase/src/net/sourceforge/pain/admin/console/command/
codebase/src/net/sourceforge/pain/data/role/
codebase/src/net/sourceforge/pain/network/console/telnet/
codebase/src/net/sourceforge/pain/network/guitool/
codebase/src/net/sourceforge/pain/plugin/
codebase/src/net/sourceforge/pain/util/
db/src/net/sourceforge/pain/util/
gui/
gui/lib/
gui/src/net/sourceforge/pain/tools/guitool/dbbrowse/
gui/src/net/sourceforge/pain/tools/guitool/dialog/
gui/src/net/sourceforge/pain/tools/guitool/menu/
gui/src/net/sourceforge/pain/tools/guitool/resources/
gui/src/net/sourceforge/pain/tools/guitool/resources/images/
gui/src/net/sourceforge/pain/tools/guitool/resources/images/explorer/
mudlibs/tinylib/
mudlibs/tinylib/area/
mudlibs/tinylib/etc/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/data/affect/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/data/prototype/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/data/trigger/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/affect/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/event/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/event/deploy/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/event/guitool/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/event/guitool/event/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/fn/util/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/trigger/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/trigger/impl/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/plugin/command/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/plugin/reset/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/plugin/shutdown/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/plugin/social/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/util/
tests/
tests/src/
tests/src/net/sourceforge/pain/db/data/
package net.sourceforge.pain.tinylib.logic.event.console.command;

import net.sourceforge.pain.tinylib.*;
import net.sourceforge.pain.tinylib.data.*;
import net.sourceforge.pain.tinylib.logic.fn.*;

import java.text.*;
import java.util.*;

public final class BanList extends GrantedCommand {
    private static final SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yy HH:mm");

    public void processCommand() throws Exception {
        Map bans = Mudlib.getWorld().getBanRegistry().getSiteBans();
        MessageOutFn.outln(console, "IP \t HOST \t TYPE \t ADMIN \t PULSE");
        if (bans.isEmpty()) {
            MessageOutFn.outln(console, "No bans found");
            return;
        }
        for (Iterator it = bans.values().iterator(); it.hasNext();) {
            SiteBan ban = (SiteBan) it.next();
            MessageOutFn.outln(console, ban.getSiteIP() + "\t" + ban.getSiteHost() + "\t" + (ban.getBanType() == BanRegistry.SITE_BAN_ALL ? " all " : " newbies ") + "\t" + ban.getAdminName() + "\t" + formatter.format(new Date(ban.getBanTime())));
        }
        MessageOutFn.outln(console, "TOTAL: " + bans.size() + " bans");
    }

    public void showHelp() {
        MessageOutFn.outln(console, command.name + ":  print list of banned sites");
        MessageOutFn.outln(console, "where <ban_type> = {'off', 'newbies', 'all'}");
    }

}