From 8c352d59e8d9de9c53d70c2327330022a1d658b7 Mon Sep 17 00:00:00 2001
From: ulrich <undisclosed>
Date: Sun, 25 Feb 2018 18:12:03 +0000
Subject: [PATCH] SenderApi aufgeraeumt
---
src/java/de/uhilger/radiozentrale/api/SenderApi.java | 16 +++++++---------
1 files changed, 7 insertions(+), 9 deletions(-)
diff --git a/src/java/de/uhilger/radiozentrale/api/SenderApi.java b/src/java/de/uhilger/radiozentrale/api/SenderApi.java
index ac56940..5493629 100644
--- a/src/java/de/uhilger/radiozentrale/api/SenderApi.java
+++ b/src/java/de/uhilger/radiozentrale/api/SenderApi.java
@@ -23,9 +23,6 @@
import de.uhilger.radiozentrale.daten.Sender;
import de.uhilger.radiozentrale.web.Initialiser;
import java.sql.Connection;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
import java.util.List;
/**
@@ -44,23 +41,24 @@
Sender neuerSender = null;
PersistenceManager db = getDb();
Connection c = db.getConnection();
- db.startTransaction(c);
List<List<String>> list = db.select(getSql(SQL_GET_NEXT_KEY), GenericRecord.WITHOUT_BLOBS, KEY_SENDER_ID);
- if(list != null && list.size() > 0) {
- int nextKey = Integer.parseInt(list.get(1).get(0));
+ if(list != null && list.size() > 1) {
+ int nextKey = Integer.parseInt(list.get(1).get(0)); // erster Datensatz ist Ueberschrift
+ db.startTransaction(c);
db.execute(getSql(SQL_INCREMENT_KEY), nextKey+1, KEY_SENDER_ID, nextKey);
sender.setId(nextKey);
Object o = getDb().insert(sender, getMapper(Initialiser.MP_SENDER));
if(o instanceof Sender) {
neuerSender = (Sender) o;
+ db.commit(c);
+ } else {
+ db.rollback(c);
}
}
- db.commit(c);
return neuerSender;
}
public List senderliste() {
- String sql = getSql(SQL_GET_SENDER);
- return getDb().select(sql, getMapper(Initialiser.MP_SENDER));
+ return getDb().select(getSql(SQL_GET_SENDER), getMapper(Initialiser.MP_SENDER));
}
}
--
Gitblit v1.9.3