mirror of
https://git.krews.org/morningstar/Arcturus-Community.git
synced 2024-11-27 08:50:51 +01:00
Possible database leaks fixed
This commit is contained in:
parent
59613f8900
commit
2e66d305d4
@ -212,27 +212,20 @@ public class CatalogManager
|
|||||||
{
|
{
|
||||||
Emulator.getPluginManager().fireEvent(new EmulatorLoadCatalogManagerEvent());
|
Emulator.getPluginManager().fireEvent(new EmulatorLoadCatalogManagerEvent());
|
||||||
|
|
||||||
try
|
this.loadLimitedNumbers();
|
||||||
{
|
this.loadCatalogPages();
|
||||||
this.loadLimitedNumbers();
|
this.loadCatalogFeaturedPages();
|
||||||
this.loadCatalogPages();
|
this.loadCatalogItems();
|
||||||
this.loadCatalogFeaturedPages();
|
this.loadClubOffers();
|
||||||
this.loadCatalogItems();
|
this.loadTargetOffers();
|
||||||
this.loadClubOffers();
|
this.loadVouchers();
|
||||||
this.loadTargetOffers();
|
this.loadClothing();
|
||||||
this.loadVouchers();
|
this.loadRecycler();
|
||||||
this.loadClothing();
|
this.loadGiftWrappers();
|
||||||
this.loadRecycler();
|
this.loadCalendarRewards();
|
||||||
this.loadGiftWrappers();
|
|
||||||
this.loadCalendarRewards();
|
|
||||||
}
|
|
||||||
catch(SQLException e)
|
|
||||||
{
|
|
||||||
Emulator.getLogging().logSQLException(e);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private synchronized void loadLimitedNumbers() throws SQLException
|
private synchronized void loadLimitedNumbers()
|
||||||
{
|
{
|
||||||
this.limitedNumbers.clear();
|
this.limitedNumbers.clear();
|
||||||
|
|
||||||
@ -270,12 +263,12 @@ public class CatalogManager
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private synchronized void loadCatalogPages() throws SQLException
|
private synchronized void loadCatalogPages()
|
||||||
{
|
{
|
||||||
this.catalogPages.clear();
|
this.catalogPages.clear();
|
||||||
|
|
||||||
final THashMap<Integer, CatalogPage> pages = new THashMap<>();
|
final THashMap<Integer, CatalogPage> pages = new THashMap<>();
|
||||||
pages.put(-1, new CatalogRootLayout(null));
|
pages.put(-1, new CatalogRootLayout());
|
||||||
try (Connection connection = Emulator.getDatabase().getDataSource().getConnection(); PreparedStatement statement = connection.prepareStatement("SELECT * FROM catalog_pages ORDER BY parent_id, id"))
|
try (Connection connection = Emulator.getDatabase().getDataSource().getConnection(); PreparedStatement statement = connection.prepareStatement("SELECT * FROM catalog_pages ORDER BY parent_id, id"))
|
||||||
{
|
{
|
||||||
try (ResultSet set = statement.executeQuery())
|
try (ResultSet set = statement.executeQuery())
|
||||||
@ -338,7 +331,7 @@ public class CatalogManager
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private synchronized void loadCatalogFeaturedPages() throws SQLException
|
private synchronized void loadCatalogFeaturedPages()
|
||||||
{
|
{
|
||||||
this.catalogFeaturedPages.clear();
|
this.catalogFeaturedPages.clear();
|
||||||
|
|
||||||
@ -364,7 +357,7 @@ public class CatalogManager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private synchronized void loadCatalogItems() throws SQLException
|
private synchronized void loadCatalogItems()
|
||||||
{
|
{
|
||||||
this.clubItems.clear();
|
this.clubItems.clear();
|
||||||
catalogItemAmount = 0;
|
catalogItemAmount = 0;
|
||||||
@ -431,7 +424,7 @@ public class CatalogManager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadClubOffers() throws SQLException
|
private void loadClubOffers()
|
||||||
{
|
{
|
||||||
this.clubOffers.clear();
|
this.clubOffers.clear();
|
||||||
|
|
||||||
@ -446,9 +439,13 @@ public class CatalogManager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadTargetOffers() throws SQLException
|
private void loadTargetOffers()
|
||||||
{
|
{
|
||||||
synchronized (this.targetOffers)
|
synchronized (this.targetOffers)
|
||||||
{
|
{
|
||||||
@ -465,11 +462,15 @@ public class CatalogManager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void loadVouchers() throws SQLException
|
private void loadVouchers()
|
||||||
{
|
{
|
||||||
synchronized (this.vouchers)
|
synchronized (this.vouchers)
|
||||||
{
|
{
|
||||||
@ -482,11 +483,15 @@ public class CatalogManager
|
|||||||
this.vouchers.add(new Voucher(set));
|
this.vouchers.add(new Voucher(set));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void loadRecycler() throws SQLException
|
public void loadRecycler()
|
||||||
{
|
{
|
||||||
synchronized (this.prizes)
|
synchronized (this.prizes)
|
||||||
{
|
{
|
||||||
@ -520,7 +525,7 @@ public class CatalogManager
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void loadGiftWrappers() throws SQLException
|
public void loadGiftWrappers()
|
||||||
{
|
{
|
||||||
synchronized (this.giftWrappers)
|
synchronized (this.giftWrappers)
|
||||||
{
|
{
|
||||||
|
@ -39,6 +39,10 @@ public abstract class CatalogPage implements Comparable<CatalogPage>, ISerialize
|
|||||||
private final TIntObjectMap<CatalogItem> catalogItems = TCollections.synchronizedMap(new TIntObjectHashMap<>());
|
private final TIntObjectMap<CatalogItem> catalogItems = TCollections.synchronizedMap(new TIntObjectHashMap<>());
|
||||||
private final ArrayList<Integer> included = new ArrayList<>();
|
private final ArrayList<Integer> included = new ArrayList<>();
|
||||||
|
|
||||||
|
public CatalogPage()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
public CatalogPage(ResultSet set) throws SQLException
|
public CatalogPage(ResultSet set) throws SQLException
|
||||||
{
|
{
|
||||||
if (set == null)
|
if (set == null)
|
||||||
|
@ -8,6 +8,11 @@ import java.sql.SQLException;
|
|||||||
|
|
||||||
public class CatalogRootLayout extends CatalogPage
|
public class CatalogRootLayout extends CatalogPage
|
||||||
{
|
{
|
||||||
|
public CatalogRootLayout()
|
||||||
|
{
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
public CatalogRootLayout(ResultSet set) throws SQLException
|
public CatalogRootLayout(ResultSet set) throws SQLException
|
||||||
{
|
{
|
||||||
super(null);
|
super(null);
|
||||||
|
@ -368,7 +368,7 @@ public class MarketPlace
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static void sendErrorMessage(GameClient client, int baseItemId, int offerId) throws SQLException
|
public static void sendErrorMessage(GameClient client, int baseItemId, int offerId)
|
||||||
{
|
{
|
||||||
try (Connection connection = Emulator.getDatabase().getDataSource().getConnection(); PreparedStatement statement = connection.prepareStatement("SELECT marketplace_items.*, COUNT( * ) AS count\n" +
|
try (Connection connection = Emulator.getDatabase().getDataSource().getConnection(); PreparedStatement statement = connection.prepareStatement("SELECT marketplace_items.*, COUNT( * ) AS count\n" +
|
||||||
"FROM marketplace_items\n" +
|
"FROM marketplace_items\n" +
|
||||||
@ -394,6 +394,10 @@ public class MarketPlace
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -412,24 +416,18 @@ public class MarketPlace
|
|||||||
}
|
}
|
||||||
|
|
||||||
RequestOffersEvent.cachedResults.clear();
|
RequestOffersEvent.cachedResults.clear();
|
||||||
try
|
|
||||||
{
|
|
||||||
client.sendResponse(new RemoveHabboItemComposer(event.item.getGiftAdjustedId()));
|
|
||||||
client.sendResponse(new InventoryRefreshComposer());
|
|
||||||
|
|
||||||
event.item.setFromGift(false);
|
client.sendResponse(new RemoveHabboItemComposer(event.item.getGiftAdjustedId()));
|
||||||
|
client.sendResponse(new InventoryRefreshComposer());
|
||||||
|
|
||||||
MarketPlaceOffer offer = new MarketPlaceOffer(event.item, event.price, client.getHabbo());
|
event.item.setFromGift(false);
|
||||||
client.getHabbo().getInventory().addMarketplaceOffer(offer);
|
|
||||||
client.getHabbo().getInventory().getItemsComponent().removeHabboItem(event.item);
|
MarketPlaceOffer offer = new MarketPlaceOffer(event.item, event.price, client.getHabbo());
|
||||||
item.setUserId(-1);
|
client.getHabbo().getInventory().addMarketplaceOffer(offer);
|
||||||
item.needsUpdate(true);
|
client.getHabbo().getInventory().getItemsComponent().removeHabboItem(event.item);
|
||||||
Emulator.getThreading().run(item);
|
item.setUserId(-1);
|
||||||
}
|
item.needsUpdate(true);
|
||||||
catch (SQLException e)
|
Emulator.getThreading().run(item);
|
||||||
{
|
|
||||||
Emulator.getLogging().logSQLException(e);
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -48,7 +48,7 @@ public class MarketPlaceOffer implements Runnable
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public MarketPlaceOffer(HabboItem item, int price, Habbo habbo) throws SQLException
|
public MarketPlaceOffer(HabboItem item, int price, Habbo habbo)
|
||||||
{
|
{
|
||||||
this.price = price;
|
this.price = price;
|
||||||
this.baseItem = item.getBaseItem();
|
this.baseItem = item.getBaseItem();
|
||||||
@ -76,6 +76,10 @@ public class MarketPlaceOffer implements Runnable
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getOfferId()
|
public int getOfferId()
|
||||||
|
@ -349,7 +349,7 @@ public class ForumThread implements Runnable, ISerialize {
|
|||||||
return createdThread;
|
return createdThread;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static THashSet<ForumThread> getByGuildId(int guildId) throws SQLException {
|
public static THashSet<ForumThread> getByGuildId(int guildId) {
|
||||||
THashSet<ForumThread> threads = null;
|
THashSet<ForumThread> threads = null;
|
||||||
|
|
||||||
if(guildThreadsCache.containsKey(guildId)) {
|
if(guildThreadsCache.containsKey(guildId)) {
|
||||||
@ -381,14 +381,15 @@ public class ForumThread implements Runnable, ISerialize {
|
|||||||
))
|
))
|
||||||
{
|
{
|
||||||
statement.setInt(1, guildId);
|
statement.setInt(1, guildId);
|
||||||
ResultSet set = statement.executeQuery();
|
|
||||||
|
|
||||||
while(set.next()) {
|
try(ResultSet set = statement.executeQuery()) {
|
||||||
ForumThread thread = new ForumThread(set);
|
while (set.next()) {
|
||||||
synchronized (threads) {
|
ForumThread thread = new ForumThread(set);
|
||||||
threads.add(thread);
|
synchronized (threads) {
|
||||||
|
threads.add(thread);
|
||||||
|
}
|
||||||
|
cacheThread(thread);
|
||||||
}
|
}
|
||||||
cacheThread(thread);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (SQLException e)
|
catch (SQLException e)
|
||||||
@ -425,11 +426,12 @@ public class ForumThread implements Runnable, ISerialize {
|
|||||||
))
|
))
|
||||||
{
|
{
|
||||||
statement.setInt(1, threadId);
|
statement.setInt(1, threadId);
|
||||||
ResultSet set = statement.executeQuery();
|
|
||||||
|
|
||||||
while(set.next()) {
|
try(ResultSet set = statement.executeQuery()) {
|
||||||
foundThread = new ForumThread(set);
|
while (set.next()) {
|
||||||
cacheThread(foundThread);
|
foundThread = new ForumThread(set);
|
||||||
|
cacheThread(foundThread);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (SQLException e)
|
catch (SQLException e)
|
||||||
|
@ -57,11 +57,12 @@ public class ForumThreadComment implements Runnable, ISerialize {
|
|||||||
try (Connection connection = Emulator.getDatabase().getDataSource().getConnection(); PreparedStatement statement = connection.prepareStatement("SELECT * FROM `guilds_forums_comments` WHERE `id` = ? LIMIT 1"))
|
try (Connection connection = Emulator.getDatabase().getDataSource().getConnection(); PreparedStatement statement = connection.prepareStatement("SELECT * FROM `guilds_forums_comments` WHERE `id` = ? LIMIT 1"))
|
||||||
{
|
{
|
||||||
statement.setInt(1, id);
|
statement.setInt(1, id);
|
||||||
ResultSet set = statement.executeQuery();
|
|
||||||
|
|
||||||
while(set.next()) {
|
try(ResultSet set = statement.executeQuery()) {
|
||||||
foundComment = new ForumThreadComment(set);
|
while (set.next()) {
|
||||||
cacheComment(foundComment);
|
foundComment = new ForumThreadComment(set);
|
||||||
|
cacheComment(foundComment);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (SQLException e)
|
catch (SQLException e)
|
||||||
|
@ -68,7 +68,7 @@ public class ModToolManager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadCategory(Connection connection) throws SQLException
|
private void loadCategory(Connection connection)
|
||||||
{
|
{
|
||||||
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM support_issue_categories"))
|
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM support_issue_categories"))
|
||||||
{
|
{
|
||||||
@ -89,9 +89,13 @@ public class ModToolManager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadPresets(Connection connection) throws SQLException
|
private void loadPresets(Connection connection)
|
||||||
{
|
{
|
||||||
synchronized (this.presets)
|
synchronized (this.presets)
|
||||||
{
|
{
|
||||||
@ -102,10 +106,14 @@ public class ModToolManager
|
|||||||
this.presets.get(set.getString("type")).add(set.getString("preset"));
|
this.presets.get(set.getString("type")).add(set.getString("preset"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadTickets(Connection connection) throws SQLException
|
private void loadTickets(Connection connection)
|
||||||
{
|
{
|
||||||
synchronized (this.tickets)
|
synchronized (this.tickets)
|
||||||
{
|
{
|
||||||
@ -116,10 +124,14 @@ public class ModToolManager
|
|||||||
this.tickets.put(set.getInt("id"), new ModToolIssue(set));
|
this.tickets.put(set.getInt("id"), new ModToolIssue(set));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadCfhCategories(Connection connection) throws SQLException
|
private void loadCfhCategories(Connection connection)
|
||||||
{
|
{
|
||||||
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT " +
|
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT " +
|
||||||
"support_cfh_topics.id, " +
|
"support_cfh_topics.id, " +
|
||||||
@ -144,6 +156,10 @@ public class ModToolManager
|
|||||||
this.cfhCategories.get(set.getInt("support_cfh_category_id")).addTopic(new CfhTopic(set, this.getIssuePreset(set.getInt("default_sanction"))));
|
this.cfhCategories.get(set.getInt("support_cfh_category_id")).addTopic(new CfhTopic(set, this.getIssuePreset(set.getInt("default_sanction"))));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public CfhTopic getCfhTopic(int topicId)
|
public CfhTopic getCfhTopic(int topicId)
|
||||||
|
@ -106,7 +106,7 @@ public class PetManager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadRaces(Connection connection) throws SQLException
|
private void loadRaces(Connection connection)
|
||||||
{
|
{
|
||||||
this.petRaces.clear();
|
this.petRaces.clear();
|
||||||
|
|
||||||
@ -120,9 +120,13 @@ public class PetManager
|
|||||||
this.petRaces.get(set.getInt("race")).add(new PetRace(set));
|
this.petRaces.get(set.getInt("race")).add(new PetRace(set));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadPetData(Connection connection) throws SQLException
|
private void loadPetData(Connection connection)
|
||||||
{
|
{
|
||||||
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_actions ORDER BY pet_type ASC"))
|
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_actions ORDER BY pet_type ASC"))
|
||||||
{
|
{
|
||||||
@ -131,13 +135,17 @@ public class PetManager
|
|||||||
this.petData.put(set.getInt("pet_type"), new PetData(set));
|
this.petData.put(set.getInt("pet_type"), new PetData(set));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
|
|
||||||
this.loadPetItems(connection);
|
this.loadPetItems(connection);
|
||||||
|
|
||||||
this.loadPetVocals(connection);
|
this.loadPetVocals(connection);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadPetItems(Connection connection) throws SQLException
|
private void loadPetItems(Connection connection)
|
||||||
{
|
{
|
||||||
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_items"))
|
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_items"))
|
||||||
{
|
{
|
||||||
@ -169,9 +177,13 @@ public class PetManager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadPetVocals(Connection connection) throws SQLException
|
private void loadPetVocals(Connection connection)
|
||||||
{
|
{
|
||||||
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_vocals"))
|
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_vocals"))
|
||||||
{
|
{
|
||||||
@ -206,9 +218,13 @@ public class PetManager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadPetCommands(Connection connection) throws SQLException
|
private void loadPetCommands(Connection connection)
|
||||||
{
|
{
|
||||||
THashMap<Integer, PetCommand> commandsList = new THashMap<>();
|
THashMap<Integer, PetCommand> commandsList = new THashMap<>();
|
||||||
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_commands_data"))
|
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_commands_data"))
|
||||||
@ -218,6 +234,10 @@ public class PetManager
|
|||||||
commandsList.put(set.getInt("command_id"), new PetCommand(set, this.petActions.get(set.getInt("command_id"))));
|
commandsList.put(set.getInt("command_id"), new PetCommand(set, this.petActions.get(set.getInt("command_id"))));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
|
|
||||||
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_commands ORDER BY pet_id ASC"))
|
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_commands ORDER BY pet_id ASC"))
|
||||||
{
|
{
|
||||||
@ -231,9 +251,13 @@ public class PetManager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadPetBreeding(Connection connection) throws SQLException
|
private void loadPetBreeding(Connection connection)
|
||||||
{
|
{
|
||||||
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_breeding"))
|
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_breeding"))
|
||||||
{
|
{
|
||||||
@ -242,6 +266,10 @@ public class PetManager
|
|||||||
this.breedingPetType.put(set.getInt("pet_id"), set.getInt("offspring_id"));
|
this.breedingPetType.put(set.getInt("pet_id"), set.getInt("offspring_id"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
|
|
||||||
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_breeding_races"))
|
try (Statement statement = connection.createStatement(); ResultSet set = statement.executeQuery("SELECT * FROM pet_breeding_races"))
|
||||||
{
|
{
|
||||||
@ -261,6 +289,10 @@ public class PetManager
|
|||||||
this.breedingReward.get(reward.petType).get(reward.rarityLevel).add(reward);
|
this.breedingReward.get(reward.petType).get(reward.rarityLevel).add(reward);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public THashSet<PetRace> getBreeds(String petName)
|
public THashSet<PetRace> getBreeds(String petName)
|
||||||
|
@ -242,17 +242,6 @@ public class Room implements Comparable<Room>, ISerialize, Runnable
|
|||||||
|
|
||||||
this.bannedHabbos = new TIntObjectHashMap<>();
|
this.bannedHabbos = new TIntObjectHashMap<>();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
try (Connection connection = Emulator.getDatabase().getDataSource().getConnection(); PreparedStatement statement = connection.prepareStatement("SELECT * FROM room_promotions WHERE room_id = ? AND end_timestamp > ? LIMIT 1"))
|
try (Connection connection = Emulator.getDatabase().getDataSource().getConnection(); PreparedStatement statement = connection.prepareStatement("SELECT * FROM room_promotions WHERE room_id = ? AND end_timestamp > ? LIMIT 1"))
|
||||||
{
|
{
|
||||||
if(this.promoted)
|
if(this.promoted)
|
||||||
@ -273,6 +262,11 @@ public class Room implements Comparable<Room>, ISerialize, Runnable
|
|||||||
|
|
||||||
this.loadBans(connection);
|
this.loadBans(connection);
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
|
|
||||||
this.tradeMode = set.getInt("trade_mode");
|
this.tradeMode = set.getInt("trade_mode");
|
||||||
this.moveDiagonally = set.getString("move_diagonally").equals("1");
|
this.moveDiagonally = set.getString("move_diagonally").equals("1");
|
||||||
|
|
||||||
@ -456,7 +450,7 @@ public class Room implements Comparable<Room>, ISerialize, Runnable
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private synchronized void loadItems(Connection connection) throws SQLException
|
private synchronized void loadItems(Connection connection)
|
||||||
{
|
{
|
||||||
this.roomItems.clear();
|
this.roomItems.clear();
|
||||||
|
|
||||||
@ -471,9 +465,13 @@ public class Room implements Comparable<Room>, ISerialize, Runnable
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private synchronized void loadWiredData(Connection connection) throws SQLException
|
private synchronized void loadWiredData(Connection connection)
|
||||||
{
|
{
|
||||||
try (PreparedStatement statement = connection.prepareStatement("SELECT id, wired_data FROM items WHERE room_id = ? AND wired_data<>''"))
|
try (PreparedStatement statement = connection.prepareStatement("SELECT id, wired_data FROM items WHERE room_id = ? AND wired_data<>''"))
|
||||||
{
|
{
|
||||||
@ -499,13 +497,17 @@ public class Room implements Comparable<Room>, ISerialize, Runnable
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
Emulator.getLogging().logErrorLine(e);
|
Emulator.getLogging().logErrorLine(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private synchronized void loadBots(Connection connection) throws SQLException
|
private synchronized void loadBots(Connection connection)
|
||||||
{
|
{
|
||||||
this.currentBots.clear();
|
this.currentBots.clear();
|
||||||
|
|
||||||
@ -550,7 +552,7 @@ public class Room implements Comparable<Room>, ISerialize, Runnable
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private synchronized void loadPets(Connection connection) throws SQLException
|
private synchronized void loadPets(Connection connection)
|
||||||
{
|
{
|
||||||
this.currentPets.clear();
|
this.currentPets.clear();
|
||||||
|
|
||||||
@ -591,9 +593,13 @@ public class Room implements Comparable<Room>, ISerialize, Runnable
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private synchronized void loadWordFilter(Connection connection) throws SQLException
|
private synchronized void loadWordFilter(Connection connection)
|
||||||
{
|
{
|
||||||
this.wordFilterWords.clear();
|
this.wordFilterWords.clear();
|
||||||
|
|
||||||
@ -608,6 +614,10 @@ public class Room implements Comparable<Room>, ISerialize, Runnable
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
Emulator.getLogging().logSQLException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void updateTile(RoomTile tile)
|
public void updateTile(RoomTile tile)
|
||||||
|
@ -93,7 +93,7 @@ public class GuildForumDataComposer extends MessageComposer {
|
|||||||
return this.response;
|
return this.response;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void serializeForumData(ServerMessage response, Guild guild, Habbo habbo) throws SQLException {
|
public static void serializeForumData(ServerMessage response, Guild guild, Habbo habbo) {
|
||||||
|
|
||||||
final THashSet<ForumThread> forumThreads = ForumThread.getByGuildId(guild.getId());
|
final THashSet<ForumThread> forumThreads = ForumThread.getByGuildId(guild.getId());
|
||||||
int lastSeenAt = 0;
|
int lastSeenAt = 0;
|
||||||
|
@ -47,11 +47,7 @@ public class GuildForumListComposer extends MessageComposer {
|
|||||||
if(!it.hasNext())
|
if(!it.hasNext())
|
||||||
break;
|
break;
|
||||||
|
|
||||||
try {
|
GuildForumDataComposer.serializeForumData(this.response, it.next(), habbo);
|
||||||
GuildForumDataComposer.serializeForumData(this.response, it.next(), habbo);
|
|
||||||
} catch (SQLException e) {
|
|
||||||
return new ConnectionErrorComposer(500).compose();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.response;
|
return this.response;
|
||||||
|
Loading…
Reference in New Issue
Block a user