Package l2p.gameserver.instancemanager

Source Code of l2p.gameserver.instancemanager.AuctionManager

package l2p.gameserver.instancemanager;

import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.logging.Logger;

import l2p.database.DatabaseUtils;
import l2p.database.FiltredPreparedStatement;
import l2p.database.L2DatabaseFactory;
import l2p.database.ThreadConnection;
import l2p.gameserver.model.entity.Auction.Auction;

public class AuctionManager
{
  protected static final Logger _log = Logger.getLogger(AuctionManager.class.getName());
  private static AuctionManager _instance;

  public static AuctionManager getInstance()
  {
    if(_instance == null)
    {
      _log.info("Initializing AuctionManager");
      _instance = new AuctionManager();
      _instance.load();
    }
    return _instance;
  }
  private ArrayList<Auction> _auctions;

  public void reload()
  {
    getAuctions().clear();
    load();
  }

  private void load()
  {
    ThreadConnection con = null;
    FiltredPreparedStatement statement = null;
    ResultSet rs = null;
    try
    {
      con = L2DatabaseFactory.getInstance().getConnection();
      statement = con.prepareStatement("SELECT id FROM auction ORDER BY id");
      rs = statement.executeQuery();
      while(rs.next())
      {
        getAuctions().add(new Auction(rs.getInt("id")));
      }
      _log.info("Loaded: " + getAuctions().size() + " active auction(s)");
    }
    catch(Exception e)
    {
      System.out.println("Exception: AuctionManager.load(): " + e.getMessage());
      e.printStackTrace();
    }
    finally
    {
      DatabaseUtils.closeDatabaseCSR(con, statement, rs);
    }
  }

  public final Auction getAuction(int id)
  {
    for(Auction auction : getAuctions())
    {
      if(auction.getId() == id)
      {
        return auction;
      }
    }
    return null;
  }

  public final ArrayList<Auction> getAuctions()
  {
    if(_auctions == null)
    {
      _auctions = new ArrayList<Auction>();
    }
    return _auctions;
  }
}
TOP

Related Classes of l2p.gameserver.instancemanager.AuctionManager

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.