diff --git a/pom.xml b/pom.xml
index fb8a0bf..7d4a060 100755
--- a/pom.xml
+++ b/pom.xml
@@ -158,7 +158,7 @@
org.bstats
bstats-bukkit
- 3.1.0
+ 3.0.2
compile
diff --git a/src/main/java/net/coreprotect/command/LookupCommand.java b/src/main/java/net/coreprotect/command/LookupCommand.java
index 4137e29..88b2094 100755
--- a/src/main/java/net/coreprotect/command/LookupCommand.java
+++ b/src/main/java/net/coreprotect/command/LookupCommand.java
@@ -1,10 +1,5 @@
package net.coreprotect.command;
-import java.nio.charset.StandardCharsets;
-import java.sql.Connection;
-import java.sql.Statement;
-import java.text.NumberFormat;
-import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
import java.util.Map;
@@ -20,31 +15,16 @@ import org.bukkit.command.ConsoleCommandSender;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
-import com.google.common.base.Strings;
-
+import net.coreprotect.command.lookup.BlockLookupThread;
+import net.coreprotect.command.lookup.ChestTransactionLookupThread;
+import net.coreprotect.command.lookup.StandardLookupThread;
import net.coreprotect.config.Config;
import net.coreprotect.config.ConfigHandler;
-import net.coreprotect.database.Database;
-import net.coreprotect.database.Lookup;
-import net.coreprotect.database.logger.ItemLogger;
-import net.coreprotect.database.lookup.BlockLookup;
-import net.coreprotect.database.lookup.ChestTransactionLookup;
-import net.coreprotect.database.lookup.InteractionLookup;
-import net.coreprotect.database.lookup.PlayerLookup;
-import net.coreprotect.database.lookup.SignMessageLookup;
-import net.coreprotect.database.statement.UserStatement;
import net.coreprotect.language.Phrase;
import net.coreprotect.language.Selector;
-import net.coreprotect.listener.channel.PluginChannelHandshakeListener;
-import net.coreprotect.listener.channel.PluginChannelListener;
import net.coreprotect.utility.Chat;
import net.coreprotect.utility.ChatMessage;
-import net.coreprotect.utility.ChatUtils;
import net.coreprotect.utility.Color;
-import net.coreprotect.utility.EntityUtils;
-import net.coreprotect.utility.ItemUtils;
-import net.coreprotect.utility.MaterialUtils;
-import net.coreprotect.utility.StringUtils;
import net.coreprotect.utility.WorldUtils;
public class LookupCommand {
@@ -351,35 +331,8 @@ public class LookupCommand {
double dy = 0.5 * (y + y2);
double dz = 0.5 * (z + z2);
final Location location = new Location(Bukkit.getServer().getWorld(world), dx, dy, dz);
- final CommandSender player2 = player;
- final int p2 = p;
- final int finalLimit = re;
- class BasicThread implements Runnable {
- @Override
- public void run() {
- try (Connection connection = Database.getConnection(true)) {
- ConfigHandler.lookupThrottle.put(player2.getName(), new Object[] { true, System.currentTimeMillis() });
- if (connection != null) {
- Statement statement = connection.createStatement();
- List blockData = ChestTransactionLookup.performLookup(command.getName(), statement, location, player2, p2, finalLimit, false);
- for (String data : blockData) {
- Chat.sendComponent(player2, data);
- }
- statement.close();
- }
- else {
- Chat.sendMessage(player2, Color.DARK_AQUA + "CoreProtect " + Color.WHITE + "- " + Phrase.build(Phrase.DATABASE_BUSY));
- }
- }
- catch (Exception e) {
- e.printStackTrace();
- }
-
- ConfigHandler.lookupThrottle.put(player2.getName(), new Object[] { false, System.currentTimeMillis() });
- }
- }
- Runnable runnable = new BasicThread();
+ Runnable runnable = new ChestTransactionLookupThread(player, command, location, p, re);
Thread thread = new Thread(runnable);
thread.start();
}
@@ -440,66 +393,10 @@ public class LookupCommand {
ConfigHandler.lookupCommand.put(player.getName(), bc);
String world = WorldUtils.getWorldName(wid);
- final Block fblock = Bukkit.getServer().getWorld(world).getBlockAt(x, y, z);// .getLocation();
- final BlockState fblockstate = fblock.getState();
- final CommandSender player2 = player;
- final int p2 = page;
- final int finalLimit = re;
- final int t = type;
- class BasicThread implements Runnable {
- @Override
- public void run() {
- try (Connection connection = Database.getConnection(true)) {
- ConfigHandler.lookupThrottle.put(player2.getName(), new Object[] { true, System.currentTimeMillis() });
- if (connection != null) {
- Statement statement = connection.createStatement();
- if (t == 8) {
- List signData = SignMessageLookup.performLookup(command.getName(), statement, fblockstate.getLocation(), player2, p2, finalLimit);
- for (String signMessage : signData) {
- String bypass = null;
+ final Block block = Bukkit.getServer().getWorld(world).getBlockAt(x, y, z);
+ final BlockState blockState = block.getState();
- if (signMessage.contains("\n")) {
- String[] split = signMessage.split("\n");
- signMessage = split[0];
- bypass = split[1];
- }
-
- if (signMessage.length() > 0) {
- Chat.sendComponent(player2, signMessage, bypass);
- }
- }
- }
- else {
- String blockdata = null;
- if (t == 7) {
- blockdata = InteractionLookup.performLookup(command.getName(), statement, fblock, player2, 0, p2, finalLimit);
- }
- else {
- blockdata = BlockLookup.performLookup(command.getName(), statement, fblockstate, player2, 0, p2, finalLimit);
- }
- if (blockdata.contains("\n")) {
- for (String b : blockdata.split("\n")) {
- Chat.sendComponent(player2, b);
- }
- }
- else if (blockdata.length() > 0) {
- Chat.sendComponent(player2, blockdata);
- }
- }
- statement.close();
- }
- else {
- Chat.sendMessage(player2, Color.DARK_AQUA + "CoreProtect " + Color.WHITE + "- " + Phrase.build(Phrase.DATABASE_BUSY));
- }
- }
- catch (Exception e) {
- e.printStackTrace();
- }
-
- ConfigHandler.lookupThrottle.put(player2.getName(), new Object[] { false, System.currentTimeMillis() });
- }
- }
- Runnable runnable = new BasicThread();
+ Runnable runnable = new BlockLookupThread(player, command, block, blockState, page, re, type);
Thread thread = new Thread(runnable);
thread.start();
}
@@ -676,431 +573,25 @@ public class LookupCommand {
}
}
- final List rollbackusers2 = rollbackusers;
- long unixtimestamp = (System.currentTimeMillis() / 1000L);
- if (timeStart == -1) {
- if (startTime <= 0) {
- timeStart = 0;
- }
- else {
- timeStart = unixtimestamp - startTime;
- }
- if (endTime <= 0) {
- timeEnd = 0;
- }
- else {
- timeEnd = unixtimestamp - endTime;
- }
- }
-
- final long finalTimeStart = timeStart;
- final long finalTimeEnd = timeEnd;
- final Integer[] radius = argRadius;
-
try {
Chat.sendMessage(player, Color.DARK_AQUA + "CoreProtect " + Color.WHITE + "- " + Color.ITALIC + Phrase.build(Phrase.LOOKUP_SEARCHING));
- final CommandSender player2 = player;
- final int finalX = x;
- final int finalY = y;
- final int finalZ = z;
- final int finalWid = wid;
- final int finalArgWid = argWid;
- final int noisy = argNoisy;
- final String rtime = ts;
- final int excluded = argExcluded;
- final int restricted = argRestricted;
- // final List uuid_list = arg_uuids;
- final List