From 74f15b5b543bd46ae8ff22b424f2675d08ce3838 Mon Sep 17 00:00:00 2001 From: ulrich <undisclosed> Date: Fri, 09 Mar 2018 18:37:15 +0000 Subject: [PATCH] Abspielen via PiRC auf den Server verlagert --- src/java/de/uhilger/radiozentrale/api/SenderApi.java | 48 +++++++++++++++++++++++++++++++++++------------- 1 files changed, 35 insertions(+), 13 deletions(-) diff --git a/src/java/de/uhilger/radiozentrale/api/SenderApi.java b/src/java/de/uhilger/radiozentrale/api/SenderApi.java index 5493629..7088ff2 100644 --- a/src/java/de/uhilger/radiozentrale/api/SenderApi.java +++ b/src/java/de/uhilger/radiozentrale/api/SenderApi.java @@ -18,47 +18,69 @@ package de.uhilger.radiozentrale.api; -import de.uhilger.baselink.GenericRecord; import de.uhilger.baselink.PersistenceManager; import de.uhilger.radiozentrale.daten.Sender; import de.uhilger.radiozentrale.web.Initialiser; import java.sql.Connection; import java.util.List; +import java.util.logging.Logger; /** * */ -public class SenderApi extends Api { +public class SenderApi extends DbApi { - public static final String SQL_GET_SENDER = "getSender"; - public static final String SQL_GET_NEXT_KEY = "getNextKey"; - public static final String SQL_INCREMENT_KEY = "incrementKey"; + private static final Logger logger = Logger.getLogger(SenderApi.class.getName()); + public static final String SQL_GET_SENDER_LIST = "getSenderList"; public static final String KEY_SENDER_ID = "sender_id"; - public Sender neuerSender(Sender sender) { Sender neuerSender = null; PersistenceManager db = getDb(); Connection c = db.getConnection(); - List<List<String>> list = db.select(getSql(SQL_GET_NEXT_KEY), GenericRecord.WITHOUT_BLOBS, KEY_SENDER_ID); - 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); + db.startTransaction(c); + int nextKey = getNextId(db, KEY_SENDER_ID); + if(nextKey > -1) { sender.setId(nextKey); Object o = getDb().insert(sender, getMapper(Initialiser.MP_SENDER)); if(o instanceof Sender) { neuerSender = (Sender) o; db.commit(c); + logger.fine("Sender erstellt: " + sender.getId() + " " + sender.getName()); } else { db.rollback(c); + logger.info("Sender konnte nicht erstellt werden: " + sender.getName()); } + } else { + db.rollback(c); + logger.info("Sender konnte nicht erstellt werden, nextKey ist -1"); } return neuerSender; } - public List senderliste() { - return getDb().select(getSql(SQL_GET_SENDER), getMapper(Initialiser.MP_SENDER)); + public Sender senderAendern(Sender sender) { + Sender geaendert = null; + Object o = getDb().update(sender, getMapper(Initialiser.MP_SENDER)); + if(o instanceof Sender) { + geaendert = (Sender) o; + logger.fine("Sender geaendert: " + sender.getId() + " " + sender.getName()); + } + return geaendert; } + + public Sender senderLoeschen(Sender sender) { + Sender geloescht = null; + Object o = getDb().delete(sender, getMapper(Initialiser.MP_SENDER)); + if(o instanceof Sender) { + geloescht = (Sender) o; + logger.fine("Sender geloescht: " + sender.getId() + " " + sender.getName()); + } + return geloescht; + } + + public List senderliste() { + return getDb().select(getSql(SQL_GET_SENDER_LIST), getMapper(Initialiser.MP_SENDER)); + } + } -- Gitblit v1.9.3