Skip to content

Instantly share code, notes, and snippets.

@arkadius
Created January 3, 2015 00:25
Show Gist options
  • Save arkadius/bd07fb66506ef1f1148f to your computer and use it in GitHub Desktop.
Save arkadius/bd07fb66506ef1f1148f to your computer and use it in GitHub Desktop.
class ProjectStateBinder
extends SimpleNgModelBinder("projectState", ProjectState(Nil))
with BindingToClient
with CometListener {
override protected def registerWith = ApplicationContext().projectActor
override def lowPriority: PartialFunction[Any, Unit] = resendState orElse super.lowPriority
private def resendState: PartialFunction[Any, Unit] = {
case f:LAFuture[_] =>
val projectStateFuture = f.asInstanceOf[LAFuture[ProjectState]]
projectStateFuture.onSuccess(this ! _)
case BoardStateChanged(sprintId) =>
scope.emit("boardStateChanged", sprintId)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment