Kaynağa Gözat

Set bulkDelete's parameters to be non null

pull/12/head
Kristijan Mitrovic 4 yıl önce
ebeveyn
işleme
04683a86d8
1 değiştirilmiş dosya ile 3 ekleme ve 3 silme
  1. +3
    -3
      wizard-server/src/main/java/org/cobbzilla/wizard/dao/AbstractCRUDDAO.java

+ 3
- 3
wizard-server/src/main/java/org/cobbzilla/wizard/dao/AbstractCRUDDAO.java Dosyayı Görüntüle

@@ -341,7 +341,7 @@ public abstract class AbstractCRUDDAO<E extends Identifiable>
public static final String EX_UUID = "__exclude_uuid__";

private int bulkDelete(String field, Object value, boolean notUuid) {
if (value == null) return bulkDeleteWhere(field + " IS NULL", null);
if (value == null) return bulkDeleteWhere(field + " IS NULL", new HashMap<>());

if (notUuid) {
final var params = new HashMap<String, Object>();
@@ -353,11 +353,11 @@ public abstract class AbstractCRUDDAO<E extends Identifiable>
return bulkDeleteWhere(field + " = :" + field, new SingletonMap(field, value));
}

public int bulkDeleteWhere(@NonNull final String whereClause, @Nullable final Map<String, Object> parameters) {
public int bulkDeleteWhere(@NonNull final String whereClause, @NonNull final Map<String, Object> parameters) {
final Session session = getHibernateTemplate().getSessionFactory().getCurrentSession();
final String deleteSql = "DELETE FROM " + getEntityClass().getSimpleName() + " WHERE " + whereClause;
final Query query = session.createQuery(deleteSql);
if (!empty(parameters)) parameters.forEach(query::setParameter);
parameters.forEach(query::setParameter);
final int count = query.executeUpdate();
session.setFlushMode(FlushMode.COMMIT);
session.flush();


Yükleniyor…
İptal
Kaydet