Skip to content
Snippets Groups Projects
Commit 1084d53c authored by Tobias Ullerich's avatar Tobias Ullerich
Browse files

Add Design Add, Update, Remove Listener

parent 5a648b7b
No related branches found
No related tags found
No related merge requests found
......@@ -6,6 +6,7 @@ import com.google.gson.{JsonObject, JsonParser}
import com.j256.ormlite.dao.Dao
import de.tobias.playpad.server.account
import de.tobias.playpad.server.account.Account
import de.tobias.playpad.server.server.project.sync.listener.design.{DesignAddListener, DesignRemoveListener, DesignUpdateListener}
import de.tobias.playpad.server.server.project.sync.listener.pad.{PadAddListener, PadClearListener, PadRemoveListener, PadUpdateListener}
import de.tobias.playpad.server.server.project.sync.listener.page.{PageAddListener, PageRemoveListener, PageUpdateListener}
import de.tobias.playpad.server.server.project.sync.listener.path.{PathAddListener, PathRemoveListener, PathUpdateListener}
......@@ -41,7 +42,11 @@ import scala.collection.{Map, mutable}
"path-add" -> new PathAddListener(),
"path-update" -> new PathUpdateListener(),
"path-rm" -> new PathRemoveListener()
"path-rm" -> new PathRemoveListener(),
"design-add" -> new DesignAddListener(),
"design-update" -> new DesignUpdateListener(),
"design-rm" -> new DesignRemoveListener()
)
@OnWebSocketConnect def onConnect(serverSession: Session): Unit = {
......
package de.tobias.playpad.server.server.project.sync.listener.design
import java.sql.Connection
import java.util.UUID
import com.google.gson.JsonObject
import de.tobias.playpad.server.account.Session
import de.tobias.playpad.server.project.utils.SqlDef
import de.tobias.playpad.server.server.SqlHelper
import de.tobias.playpad.server.server.project.sync.listener.Listener
/**
* Created by tobias on 19.02.17.
*/
class DesignAddListener extends Listener {
override def onChange(json: JsonObject, connection: Connection, session: Session): Unit = {
val designId = UUID.fromString(json.get("id").getAsString)
val padId = UUID.fromString(json.get("pad").getAsString)
val backgroundColor = json.get("background_color").getAsString
val playColor = json.get("play_color").getAsInt
SqlHelper.insertOrUpdate(connection, SqlDef.DESIGN, designId, SqlDef.DESIGN_PAD_REF, padId)
SqlHelper.insertOrUpdate(connection, SqlDef.DESIGN, designId, SqlDef.DESIGN_BACKGROUND_COLOR, backgroundColor)
SqlHelper.insertOrUpdate(connection, SqlDef.DESIGN, designId, SqlDef.DESIGN_PLAY_COLOR, playColor)
}
}
package de.tobias.playpad.server.server.project.sync.listener.design
import java.sql.Connection
import java.util.UUID
import com.google.gson.JsonObject
import de.tobias.playpad.server.account.Session
import de.tobias.playpad.server.project.utils.SqlDef
import de.tobias.playpad.server.server.SqlHelper
import de.tobias.playpad.server.server.project.sync.listener.Listener
/**
* Created by tobias on 19.02.17.
*/
class DesignRemoveListener extends Listener {
override def onChange(json: JsonObject, connection: Connection, session: Session): Unit = {
val designId = UUID.fromString(json.get("id").getAsString)
SqlHelper.delete(connection, SqlDef.DESIGN, designId)
}
}
package de.tobias.playpad.server.server.project.sync.listener.design
import java.sql.Connection
import java.util.UUID
import com.google.gson.JsonObject
import de.tobias.playpad.server.account.Session
import de.tobias.playpad.server.project.utils.SqlDef._
import de.tobias.playpad.server.server.SqlHelper
import de.tobias.playpad.server.server.project.sync.listener.Listener
/**
* Created by tobias on 19.02.17.
*/
class DesignUpdateListener extends Listener {
override def onChange(json: JsonObject, connection: Connection, session: Session): Unit = {
val designId = UUID.fromString(json.get("id").getAsString)
val padId = UUID.fromString(json.get("project").getAsString)
val field = json.get("field").getAsString
SqlHelper.insertOrUpdate(connection, DESIGN, designId, DESIGN_PAD_REF, padId)
field match {
case "background_color" => SqlHelper.insertOrUpdate(connection, DESIGN, designId, DESIGN_BACKGROUND_COLOR, json.get("value").getAsString)
case "play_color" => SqlHelper.insertOrUpdate(connection, DESIGN, designId, DESIGN_PLAY_COLOR, json.get("value").getAsInt)
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment