Class LettoUserLoginService

java.lang.Object
at.letto.databaseclient.service.LettoUserLoginService

@Service public class LettoUserLoginService extends Object
Zugriff auf die Mongo-DB
  • Field Details

    • lettoUserRepository

      @Autowired LeTToUserRepository lettoUserRepository
      Zugriff auf die Benutzer in der Default-Datenbank
    • lettoSessionRepository

      @Autowired LeTToSessionRepository lettoSessionRepository
      Zugriff auf die Sessions in der Default-Datenbank
    • lettoRedisDBService

      @Autowired BaseLettoRedisDBService lettoRedisDBService
    • logger

      private org.slf4j.Logger logger
  • Constructor Details

    • LettoUserLoginService

      public LettoUserLoginService()
  • Method Details

    • addActiveSessionsToUser

      public LeTToUserWithSessions addActiveSessionsToUser(LeTToUser user)
    • addAllSessionsToUser

      public LeTToUserWithSessions addAllSessionsToUser(LeTToUser user)
    • getSessionsForUser

      public List<LeTToSession> getSessionsForUser(String userID)
    • getLoggedInUsers

      public List<LeTToUserWithSessions> getLoggedInUsers()
      Liefert alle eingeloggten Benutzer an einem Serverknoten
    • getLoggedInUsers

      public List<LeTToUserWithSessions> getLoggedInUsers(String school)
      Liefert alle eingeloggten Benutzer einer Schule
    • lastLoggedOutUsersSessionsLastSeconds

      public List<LeTToUserWithSessions> lastLoggedOutUsersSessionsLastSeconds(long seconds)
      Liefert alle Benutzer welche innerhalb der letzten "seconds" Sekunden ausgeloggt wurden
      Parameters:
      seconds - Anzahl der Sekunden
      Returns:
      Liste aller Benutzer die ausgeloggt wurden
    • logoutOutdatedUsers

      public void logoutOutdatedUsers()
      löscht alle abgelaufenen Tokens, schließt Sessions welche keine Tokens mehr haben und speichert die Daten beim Benutzer
    • getUser

      public LeTToUser getUser(LettoToken lettoToken)
    • getUser

      public LeTToUser getUser(String school, String username)
      Sucht nach einem Benutzereintrag eines username einer Schule
    • save

      public boolean save(LeTToUser user)
      Speichert einen Benutzereintrag true wenn erfolgreich false wenn nicht erfolgreich
    • lastLoggedOutUsers

      public List<LeTToUser> lastLoggedOutUsers(long timestamp)
      Liefert alle Benutzer welche seit dem letzten timestamp(DateInteger) ausgeloggt wurden
      Parameters:
      timestamp - DateInteger für die Abfrage
      Returns:
      Liste aller Benutzer die seit dem letzten timestamp ausgeloggt wurden
    • lastLoggedOutUsersLastSeconds

      public List<LeTToUser> lastLoggedOutUsersLastSeconds(long seconds)
      Liefert alle Benutzer welche innerhalb der letzten "seconds" Sekunden ausgeloggt wurden
      Parameters:
      seconds - Anzahl der Sekunden
      Returns:
      Liste aller Benutzer die ausgeloggt wurden
    • newSessionID

      public String newSessionID()
      erzeugt eine neue Session-ID
    • createLeTToSession

      public LeTToSession createLeTToSession(String sessionID, LeTToUser leTToUser, String fingerprint, String ipAddress, LettoToken lettoToken, String service, String infos, String userAgent)
      Erzeugt eine neue LeTToSession für einen Login-Vorgang
    • getSession

      public LeTToSession getSession(String sessionID)
      Liefert eine Session mit der angegebenen sessionID
    • getSession

      public LeTToSession getSession(LettoToken lettoToken)
    • sessionExists

      public boolean sessionExists(String sessionID)
      Prüft ob eine Session mit der angegebenen sessionID existiert
    • save

      public boolean save(LeTToSession leTToSession)
      Speichert eine Session true wenn erfolgreich false wenn nicht erfolgreich
    • getActiveSessions

      public List<LeTToSession> getActiveSessions(LeTToUser user)
    • getActiveSessions

      public List<LeTToSession> getActiveSessions(String userID)
    • currentlyLoggedIn

      public boolean currentlyLoggedIn(LeTToUser user)
    • failedLogin

      public LeTToUser failedLogin(LeTToUser u)
    • loginOk

      private LeTToUser loginOk(LeTToUser u, LettoToken lettoToken)
    • aliasLogin

      public LeTToUser aliasLogin(LeTToUser u, LettoToken lettoToken, String originUserName)
      Alias Login von einem berechtigten Benutzer aus
    • logout

      public boolean logout(LettoToken lettoToken)
    • logout

      public boolean logout(LeTToSession leTToSession)
    • delete

      public boolean delete(LeTToSession leTToSession)
    • logout

      public boolean logout(LeTToUser u)
    • removeAllTokensFromSession

      public boolean removeAllTokensFromSession(LeTToSession leTToSession)
    • addToken

      public boolean addToken(LeTToUser u, LeTToSession leTToSession, LettoToken lettoToken)