/* Transit - Remote procedure calls made simple Copyright (c) 2012 Ulrich Hilger This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . */ package de.uhilger.transit.web; import javax.servlet.http.HttpSession; import de.uhilger.transit.NutzerKontext; /** * Eine Helferklasse, die Aktionen mit einer HttpSession ermoeglicht * * Im Augenblick ist die einzige Funktion das ungueltig machen einer * Session (invalidate) zum Zwecke der Abmeldung */ public class VerbindungsKoordinator implements VerbindungsKontext, NutzerKontext { private HttpSession verbindung; private String nutzerKennung; /** * Trennt die aktuelle Verbindung (HttpSession) */ public void verbindungTrennen() { this.verbindung.invalidate(); } /* ----------- Implementierung NutzerKontext ----------- */ /** * Den Namen des angemeldeten Benutzers ermitteln * * @return Name des angemeldeten Benutzers oder "anonymous", * wenn kein Benutzer angemeldet ist */ public String getNutzerId() { return this.nutzerKennung; } /** * Den Namen des angemeldeten Benutzers setzen * * @param nutzerId Name des angemeldeten Benutzers */ public void setNutzerId(String nutzerId) { this.nutzerKennung = nutzerId; } /* ----------- Implementierung VerbindungsKontext ----------- */ public void setVerbindung(HttpSession verbindung) { this.verbindung = verbindung; } public HttpSession getVerbindung() { return this.verbindung; } }