Report invalid enchantments in kits.

Improve error logging
This commit is contained in:
KHobbits 2012-04-04 03:09:27 +01:00
parent 2b99ed9a2a
commit 2ddd31a37d
9 changed files with 40 additions and 19 deletions

View File

@ -5,6 +5,7 @@ import static com.earth2me.essentials.I18n.capitalCase;
import com.earth2me.essentials.commands.NoChargeException;
import com.earth2me.essentials.craftbukkit.InventoryWorkaround;
import java.util.*;
import java.util.logging.Level;
import org.bukkit.Material;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.enchantments.Enchantment;
@ -31,7 +32,7 @@ public class Kit
}
catch (Exception ex)
{
throw new Exception(_("kitError"));
throw new Exception(_("kitError"), ex);
}
}
@ -76,7 +77,7 @@ public class Kit
catch (Exception e)
{
user.sendMessage(_("kitError2"));
throw new Exception(_("kitErrorHelp"));
throw new Exception(_("kitErrorHelp"),e);
}
}
@ -104,6 +105,10 @@ public class Kit
continue;
}
final Enchantment enchantment = Enchantments.getByName(split[0]);
if (enchantment == null)
{
throw new Exception("Enchantment not found: " + split[0]);
}
int level;
if (split.length > 1)
{
@ -113,7 +118,14 @@ public class Kit
{
level = enchantment.getMaxLevel();
}
stack.addEnchantment(enchantment, level);
try
{
stack.addEnchantment(enchantment, level);
}
catch (Exception ex)
{
throw new Exception("Enchantment " + enchantment.getName() + ": " + ex.getMessage(), ex);
}
}
}
@ -141,7 +153,15 @@ public class Kit
catch (Exception e)
{
user.updateInventory();
throw new Exception(_("kitError2"));
if (ess.getSettings().isDebug())
{
ess.getLogger().log(Level.WARNING, e.getMessage());
}
else
{
ess.getLogger().log(Level.WARNING, e.getMessage());
}
throw new Exception(_("kitError2"), e);
}
}
}

View File

@ -61,7 +61,7 @@ public class Commandkillall extends EssentialsCommand
}
catch (NumberFormatException e)
{
throw new Exception(_("numberRequired"));
throw new Exception(_("numberRequired"), e);
}
}
}

View File

@ -79,7 +79,7 @@ public class Commandptime extends EssentialsCommand
}
catch (NumberFormatException e)
{
throw new NotEnoughArgumentsException();
throw new NotEnoughArgumentsException(e);
}
}

View File

@ -47,7 +47,7 @@ public class Commandremove extends EssentialsCommand
}
catch (NumberFormatException e)
{
throw new Exception(_("numberRequired"));
throw new Exception(_("numberRequired"), e);
}
}
@ -57,7 +57,7 @@ public class Commandremove extends EssentialsCommand
}
catch (IllegalArgumentException e)
{
throw new NotEnoughArgumentsException(); //TODO: translate and list types
throw new NotEnoughArgumentsException(e); //TODO: translate and list types
}
removeEntities(user, world, toRemove, radius);
@ -84,7 +84,7 @@ public class Commandremove extends EssentialsCommand
}
catch (IllegalArgumentException e)
{
throw new NotEnoughArgumentsException(); //TODO: translate and list types
throw new NotEnoughArgumentsException(e); //TODO: translate and list types
}
removeEntities(sender, world, toRemove, 0);
}
@ -92,8 +92,9 @@ public class Commandremove extends EssentialsCommand
protected void removeEntities(final CommandSender sender, final World world, final ToRemove toRemove, int radius) throws Exception
{
int removed = 0;
if (radius > 0) {
radius*=radius;
if (radius > 0)
{
radius *= radius;
}
for (Chunk chunk : world.getLoadedChunks())
{

View File

@ -103,7 +103,7 @@ public class Commandspawnmob extends EssentialsCommand
}
catch (MobException e)
{
throw new Exception(_("unableToSpawnMob"));
throw new Exception(_("unableToSpawnMob"), e);
}
if (mountType != null)
@ -129,7 +129,7 @@ public class Commandspawnmob extends EssentialsCommand
}
catch (MobException e)
{
throw new Exception(_("unableToSpawnMob"));
throw new Exception(_("unableToSpawnMob"), e);
}
spawnedMob.setPassenger(spawnedMount);
}
@ -164,7 +164,7 @@ public class Commandspawnmob extends EssentialsCommand
}
catch (MobException e)
{
throw new Exception(_("unableToSpawnMob"));
throw new Exception(_("unableToSpawnMob"), e);
}
spawnedMob.setPassenger(spawnedMount);
}

View File

@ -49,7 +49,7 @@ public class Commandtime extends EssentialsCommand
}
catch (NumberFormatException e)
{
throw new NotEnoughArgumentsException();
throw new NotEnoughArgumentsException(e);
}
setWorldsTime(sender, worlds, ticks);

View File

@ -29,7 +29,7 @@ public class Commandunban extends EssentialsCommand
}
catch (NoSuchFieldException e)
{
throw new Exception(_("playerNotFound"));
throw new Exception(_("playerNotFound"), e);
}
}
}

View File

@ -41,7 +41,7 @@ public class SignEnchant extends EssentialsSign
}
catch (NumberFormatException ex)
{
throw new SignException(ex.getMessage());
throw new SignException(ex.getMessage(), ex);
}
if (level < 1 || level > enchantment.getMaxLevel())
{
@ -57,7 +57,7 @@ public class SignEnchant extends EssentialsSign
}
catch (Throwable ex)
{
throw new SignException(ex.getMessage());
throw new SignException(ex.getMessage(), ex);
}
getTrade(sign, 3, ess);
return true;

View File

@ -224,7 +224,7 @@ public class SignTrade extends EssentialsSign
}
catch (SignException e)
{
throw new SignException(_("tradeSignEmpty"));
throw new SignException(_("tradeSignEmpty"), e);
}
}