コード例 #1
0
ファイル: PetDAO.java プロジェクト: namlehong/ertheia
  public void deletePet(ItemInstance item, Creature owner) {
    int petObjectId = 0;

    Connection con = null;
    PreparedStatement statement = null;
    ResultSet rset = null;
    try {
      int itemObjId = item.getObjectId();
      con = DatabaseFactory.getInstance().getConnection();
      statement = con.prepareStatement(SELECT_SQL_QUERY);
      statement.setInt(1, itemObjId);
      rset = statement.executeQuery();
      while (rset.next()) petObjectId = rset.getInt("objId");

      DbUtils.close(statement, rset);

      Player player = owner.getPlayer();

      PetInstance pet = player.getPet();
      if (pet != null && pet.getObjectId() == petObjectId) pet.unSummon(false);

      if (player != null && player.isMounted() && player.getMountControlItemObjId() == itemObjId)
        player.getMount().onControlItemDelete();

      // if it's a pet control item, delete the pet
      statement = con.prepareStatement(DELETE_SQL_QUERY);
      statement.setInt(1, itemObjId);
      statement.execute();
    } catch (Exception e) {
      _log.error("CharNameTable.deletePet(ItemInstance, Creature): " + e, e);
    } finally {
      DbUtils.closeQuietly(con, statement, rset);
    }
  }
コード例 #2
0
ファイル: CastleDAO.java プロジェクト: namlehong/ertheia
  public void select(Castle castle) {
    Connection con = null;
    PreparedStatement statement = null;
    ResultSet rset = null;

    try {
      con = DatabaseFactory.getInstance().getConnection();
      statement = con.prepareStatement(SELECT_SQL_QUERY);
      statement.setInt(1, castle.getId());
      rset = statement.executeQuery();
      if (rset.next()) {
        castle.setTaxPercent(rset.getInt("tax_percent"));
        castle.setTreasury(rset.getLong("treasury"));
        castle.setRewardCount(rset.getInt("reward_count"));
        castle.getSiegeDate().setTimeInMillis(rset.getLong("siege_date") * 1000L);
        castle.getLastSiegeDate().setTimeInMillis(rset.getLong("last_siege_date") * 1000L);
        castle.getOwnDate().setTimeInMillis(rset.getLong("own_date") * 1000L);
        castle.setResidenceSide(ResidenceSide.VALUES[rset.getInt("side")], true);
      }
    } catch (Exception e) {
      _log.error("CastleDAO.select(Castle):" + e, e);
    } finally {
      DbUtils.closeQuietly(con, statement, rset);
    }
  }
コード例 #3
0
 private static void LoadFromDB() {
   Connection con = null;
   PreparedStatement statement = null;
   ResultSet rs = null;
   try {
     con = DatabaseFactory.getInstance().getConnection();
     statement = con.prepareStatement("SELECT * FROM server_variables");
     rs = statement.executeQuery();
     while (rs.next()) server_vars.set(rs.getString("name"), rs.getString("value"));
   } catch (Exception e) {
     _log.error("", e);
   } finally {
     DbUtils.closeQuietly(con, statement, rs);
   }
 }
コード例 #4
0
ファイル: CastleDAO.java プロジェクト: namlehong/ertheia
 private void update0(Castle castle) {
   Connection con = null;
   PreparedStatement statement = null;
   try {
     con = DatabaseFactory.getInstance().getConnection();
     statement = con.prepareStatement(UPDATE_SQL_QUERY);
     statement.setInt(1, castle.getTaxPercent0());
     statement.setLong(2, castle.getTreasury());
     statement.setInt(3, castle.getRewardCount());
     statement.setInt(4, (int) (castle.getSiegeDate().getTimeInMillis() / 1000L));
     statement.setInt(5, (int) (castle.getLastSiegeDate().getTimeInMillis() / 1000L));
     statement.setInt(6, (int) (castle.getOwnDate().getTimeInMillis() / 1000L));
     statement.setInt(7, castle.getResidenceSide().ordinal());
     statement.setInt(8, castle.getId());
     statement.execute();
   } catch (Exception e) {
     _log.warn("CastleDAO#update0(Castle): " + e, e);
   } finally {
     DbUtils.closeQuietly(con, statement);
   }
 }
コード例 #5
0
 private static void SaveToDB(String name) {
   Connection con = null;
   PreparedStatement statement = null;
   try {
     con = DatabaseFactory.getInstance().getConnection();
     String value = getVars().getString(name, "");
     if (value.isEmpty()) {
       statement = con.prepareStatement("DELETE FROM server_variables WHERE name = ?");
       statement.setString(1, name);
       statement.execute();
     } else {
       statement =
           con.prepareStatement("REPLACE INTO server_variables (name, value) VALUES (?,?)");
       statement.setString(1, name);
       statement.setString(2, value);
       statement.execute();
     }
   } catch (Exception e) {
     _log.error("", e);
   } finally {
     DbUtils.closeQuietly(con, statement);
   }
 }