Berechtigungsprüfung im Controller - Scala / Play

Dies ist ein einfaches Beispiel für einen Controller in Play Framework, bei dem jede Aktion die Sitzung überprüft - sofern der Benutzer angemeldet ist.

object Application extends Controller {

    def index = Action { implicit request =>
        if (request.session.isEmpty) {
            Redirect("/login")
        } else {
            Ok(views.html.index("index"))
        }
    }

    def about = Action { implicit request =>
        if (request.session.isEmpty) {
            Redirect("/login")
        } else {
            Ok(views.html.index("about"))
        }
    }

}

Ich möchte die Sitzungsüberprüfung im Konstruktor anstelle jeder Aktionsmethode durchführen, weiß aber nicht, wie? Es sollte ungefähr so ​​aussehen:

object Application extends Controller {

    //This is where the constructor would check if session exists
    //and if not - redirect to login screen

    def index = Action {
        Ok(views.html.index("index"))
    }

    def about = Action {
        Ok(views.html.index("about"))
    }

}

Ist das möglich und wenn ja, wie?

Mein Stack ist Play Framework 2.2.1, Scala 2.10.3, Java 1.8.0-ea 64bit

UPDATE - Gelöst Vielen Dank für alle Ihre Ideen, die Lösung ist jetzt gefunden, siehe meine Antwort.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage