diff --git a/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala b/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala index d38f16983184b4b380a9b455e43b16b8cb6c932e..d7a1a4e0a7c89455993e1c0f0f36703cd2f89a8e 100644 --- a/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala +++ b/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala @@ -2,14 +2,12 @@ package de.tobias.playpad.server import java.nio.file.{Files, Paths} import java.sql.DriverManager -import java.util.UUID import com.j256.ormlite.dao.{Dao, DaoManager} import com.j256.ormlite.jdbc.JdbcConnectionSource import com.j256.ormlite.table.TableUtils import de.tobias.playpad.server.account.{Account, Session} import de.tobias.playpad.server.plugin.Plugin -import de.tobias.playpad.server.project.{Design, Pad, Page, Project} import de.tobias.playpad.server.server.account._ import de.tobias.playpad.server.server.plugin.{PluginGet, PluginList} import de.tobias.playpad.server.server.project._ @@ -33,7 +31,7 @@ object PlayPadServer extends App { private val settings = settingsLoader.load(settingsPath) - private val databaseUrl = "jdbc:mysql://" + settings.db_host + ":" + settings.db_port + "/" + settings.db_database + "?autoReconnect=true&wait_timeout=24" + private val databaseUrl = s"jdbc:mysql://${settings.db_host}:${settings.db_port}/${settings.db_database}?autoReconnect=true&wait_timeout=24" var connectionSource = new JdbcConnectionSource(databaseUrl) connectionSource.setUsername(settings.db_username) connectionSource.setPassword(settings.db_password) @@ -80,7 +78,7 @@ object PlayPadServer extends App { // DEBUG exception(classOf[Exception], (exception, _, _) => { exception.printStackTrace() - halt(500, "internal error: " + exception.getLocalizedMessage) + halt(500, s"internal error: ${exception.getLocalizedMessage}") }) RouteOverview.enableRouteOverview() diff --git a/src/main/scala/de/tobias/playpad/server/project/loader/sql/PadLoader.scala b/src/main/scala/de/tobias/playpad/server/project/loader/sql/PadLoader.scala index aa232255de5c571de6a4d7854c294a1be0417db2..d97d5472c64e1399696dac3e5fd41f9722fc2a73 100644 --- a/src/main/scala/de/tobias/playpad/server/project/loader/sql/PadLoader.scala +++ b/src/main/scala/de/tobias/playpad/server/project/loader/sql/PadLoader.scala @@ -9,8 +9,8 @@ import de.tobias.playpad.server.project.{Pad, Page} /** * Created by tobias on 17.02.17. */ -class PadLoader { - def load(connection: Connection, page: Page): List[Pad] = { +class PadLoader(val connection: Connection) { + def load(page: Page): List[Pad] = { val sql = s"SELECT * FROM $PAD WHERE $PAD_PAGE_REF = ?" val preparedStatement = connection.prepareStatement(sql) preparedStatement.setString(1, page.toString) diff --git a/src/main/scala/de/tobias/playpad/server/project/loader/sql/PageLoader.scala b/src/main/scala/de/tobias/playpad/server/project/loader/sql/PageLoader.scala index 526be459d6c8a8e21f4a8eac0cb16ab87aebe956..7ce80fa0e5aee425ae4fff4e4d85da8504940c73 100644 --- a/src/main/scala/de/tobias/playpad/server/project/loader/sql/PageLoader.scala +++ b/src/main/scala/de/tobias/playpad/server/project/loader/sql/PageLoader.scala @@ -9,8 +9,8 @@ import de.tobias.playpad.server.project.{Page, Project} /** * Created by tobias on 17.02.17. */ -class PageLoader { - def load(connection: Connection, project: Project): List[Page] = { +class PageLoader(val connection: Connection) { + def load(project: Project): List[Page] = { val sql = s"SELECT * FROM $PAGE WHERE $PAGE_PROJECT_REF = ?" val preparedStatement = connection.prepareStatement(sql) preparedStatement.setString(1, project.id.toString) @@ -23,8 +23,8 @@ class PageLoader { page.id = UUID.fromString(result.getString(PAGE_ID)) page.name = result.getString(PAGE_NAME) - val padLoader = new PadLoader() - page.pads = padLoader.load(connection, page) + val padLoader = new PadLoader(connection) + page.pads = padLoader.load(page) page.project = project pages = page :: pages diff --git a/src/main/scala/de/tobias/playpad/server/project/loader/sql/ProjectLoader.scala b/src/main/scala/de/tobias/playpad/server/project/loader/sql/ProjectLoader.scala index f2bce4a7ee9db15ac820b18a4b604ae31e97f43a..7504c623b47d9b6b4f6db0ca592b37ee97f2a5c8 100644 --- a/src/main/scala/de/tobias/playpad/server/project/loader/sql/ProjectLoader.scala +++ b/src/main/scala/de/tobias/playpad/server/project/loader/sql/ProjectLoader.scala @@ -9,8 +9,8 @@ import de.tobias.playpad.server.project.utils.SqlDef._ /** * Created by tobias on 17.02.17. */ -class ProjectLoader { - def load(connection: Connection, id: UUID): List[Project] = { +class ProjectLoader(val connection: Connection) { + def load(id: UUID): List[Project] = { val sql = s"SELECT * FROM $PROJECT WHERE $PROJECT_ID = ?" val preparedStatement = connection.prepareStatement(sql) preparedStatement.setString(1, id.toString) @@ -24,8 +24,8 @@ class ProjectLoader { project.name = result.getString(PROJECT_NAME) project.accountId = result.getInt(PROJECT_ACCOUNT_ID) - val pageLoader = new PageLoader() - project.pages = pageLoader.load(connection, project) + val pageLoader = new PageLoader(connection) + project.pages = pageLoader.load(project) projects = project :: projects } @@ -36,7 +36,7 @@ class ProjectLoader { projects } - def getAccountId(connection: Connection, id: UUID): Int = { + def getAccountId(id: UUID): Int = { val sql = s"SELECT account_id FROM $PROJECT WHERE $PROJECT_ID = ?" val preparedStatement = connection.prepareStatement(sql) diff --git a/src/main/scala/de/tobias/playpad/server/project/saver/sql/PadSaver.scala b/src/main/scala/de/tobias/playpad/server/project/saver/sql/PadSaver.scala index 52204c255b6103047abf8c6be74948a0d8685cbc..1e35fb0026e4871a45be8781daf4ca1a25a9e8f3 100644 --- a/src/main/scala/de/tobias/playpad/server/project/saver/sql/PadSaver.scala +++ b/src/main/scala/de/tobias/playpad/server/project/saver/sql/PadSaver.scala @@ -9,8 +9,8 @@ import de.tobias.playpad.server.server.SqlHelper /** * Created by tobias on 17.02.17. */ -class PadSaver { - def save(connection: Connection, pad: Pad): Unit = { +class PadSaver(val connection: Connection) { + def save(pad: Pad): Unit = { SqlHelper.insertOrUpdate(connection, PAD, pad.id, PAD_NAME, pad.name) SqlHelper.insertOrUpdate(connection, PAD, pad.id, PAD_POSITION, pad.position) SqlHelper.insertOrUpdate(connection, PAD, pad.id, PAD_PAGE, pad.pageIndex) diff --git a/src/main/scala/de/tobias/playpad/server/project/saver/sql/PageSaver.scala b/src/main/scala/de/tobias/playpad/server/project/saver/sql/PageSaver.scala index 6abdd60e4a6d6b49af4a52474971f2665e91d391..ec28b8501dd38410456332e94a55092b45a4630a 100644 --- a/src/main/scala/de/tobias/playpad/server/project/saver/sql/PageSaver.scala +++ b/src/main/scala/de/tobias/playpad/server/project/saver/sql/PageSaver.scala @@ -9,13 +9,13 @@ import de.tobias.playpad.server.server.SqlHelper /** * Created by tobias on 17.02.17. */ -class PageSaver { - def save(connection: Connection, page: Page): Unit = { +class PageSaver(connection: Connection) { + def save(page: Page): Unit = { SqlHelper.insertOrUpdate(connection, PAGE, page.id, PAGE_NAME, page.name) SqlHelper.insertOrUpdate(connection, PAGE, page.id, PAGE_POSITION, page.position) SqlHelper.insertOrUpdate(connection, PAGE, page.id, PAGE_PROJECT_REF, page.project.id) - val padSaver = new PadSaver - page.pads.foreach(padSaver.save(connection, _)) + val padSaver = new PadSaver(connection) + page.pads.foreach(padSaver.save) } } diff --git a/src/main/scala/de/tobias/playpad/server/project/saver/sql/ProjectSaver.scala b/src/main/scala/de/tobias/playpad/server/project/saver/sql/ProjectSaver.scala index be385e41e82cab37cd7eb7e305fde150f5270372..8fcd2027e2769b4224bcd43b9aabcec3b552c17e 100644 --- a/src/main/scala/de/tobias/playpad/server/project/saver/sql/ProjectSaver.scala +++ b/src/main/scala/de/tobias/playpad/server/project/saver/sql/ProjectSaver.scala @@ -10,15 +10,15 @@ import de.tobias.playpad.server.server.SqlHelper /** * Created by tobias on 17.02.17. */ -class ProjectSaver { - def save(connection: Connection, project: Project): Unit = { +class ProjectSaver(val connection: Connection) { + def save(project: Project): Unit = { SqlHelper.insertOrUpdate(connection, PROJECT, project.id, PROJECT_NAME, project.name) SqlHelper.insertOrUpdate(connection, PROJECT, project.id, PROJECT_ACCOUNT_ID, project.accountId) - val pageSaver = new PageSaver - project.pages.foreach(pageSaver.save(connection, _)) + val pageSaver = new PageSaver(connection) + project.pages.foreach(pageSaver.save) } - def delete(connection: Connection, project: UUID): Unit = { + def delete(project: UUID): Unit = { SqlHelper.delete(connection, PROJECT, project) } } diff --git a/src/main/scala/de/tobias/playpad/server/server/project/ProjectDelete.scala b/src/main/scala/de/tobias/playpad/server/server/project/ProjectDelete.scala index b5a48aa89a6fb84cb1ebf11c199da209e78e7481..689c90d26dd8ef7b9a02b50caca19b21fb1c233a 100644 --- a/src/main/scala/de/tobias/playpad/server/server/project/ProjectDelete.scala +++ b/src/main/scala/de/tobias/playpad/server/server/project/ProjectDelete.scala @@ -21,11 +21,12 @@ class ProjectDelete(connection: Connection, sessionDao: Dao[Session, Int]) exten case Some(s) => val projectId = UUID.fromString(request.queryParams("project")) - val projectLoader = new ProjectLoader - val account_id = projectLoader.getAccountId(connection, projectId) + val projectLoader = new ProjectLoader(connection) + val account_id = projectLoader.getAccountId(projectId) + if (account_id == s.getAccount.id) { - val projectSaver = new ProjectSaver - projectSaver.delete(connection, projectId) + val projectSaver = new ProjectSaver(connection) + projectSaver.delete(projectId) return new Result(Status.OK, "added project") } diff --git a/src/main/scala/de/tobias/playpad/server/server/project/ProjectGet.scala b/src/main/scala/de/tobias/playpad/server/server/project/ProjectGet.scala index 8cf5aef679674559fa146d7efe1a1659076e3bbc..71f86b84352df7789f32a42e39a211bb957170b6 100644 --- a/src/main/scala/de/tobias/playpad/server/server/project/ProjectGet.scala +++ b/src/main/scala/de/tobias/playpad/server/server/project/ProjectGet.scala @@ -23,8 +23,8 @@ class ProjectGet(connection: Connection, sessionDao: Dao[Session, Int]) extends session match { case Some(s) => - val projectLoader = new ProjectLoader() - val projects = projectLoader.load(connection, UUID.fromString(projectId)) + val projectLoader = new ProjectLoader(connection) + val projects = projectLoader.load(UUID.fromString(projectId)) if (projects.size == 1) { val project = projects.head diff --git a/src/main/scala/de/tobias/playpad/server/server/project/ProjectPost.scala b/src/main/scala/de/tobias/playpad/server/server/project/ProjectPost.scala index bf2365eeb8d21041cf7576edbd6fc1a11602afb1..93fa8a7d65936affa8147f16fc681c5a1a5bf2d0 100644 --- a/src/main/scala/de/tobias/playpad/server/server/project/ProjectPost.scala +++ b/src/main/scala/de/tobias/playpad/server/server/project/ProjectPost.scala @@ -27,8 +27,8 @@ class ProjectPost(connection: Connection, sessionDao: Dao[Session, Int]) extends val project = projectLoader.load(json) project.accountId = s.getAccount.id - val projectSaver = new ProjectSaver - projectSaver.save(connection, project) + val projectSaver = new ProjectSaver(connection) + projectSaver.save(project) new Result(Status.OK, "added project") case None =>