edu.whs.spin2018.baoapp.service.lobby

## Interface LobbyRemoteDataSource

- All Superinterfaces:
    BaoServiceInterface, BaseInteractorInterface, LobbyEventListener
  All Known Implementing Classes:
    LobbyServiceInteractor

      public interface LobbyRemoteDataSource
      extends LobbyEventListener, BaseInteractorInterface

  Definiert die Methoden, mit denen der Presenter Events über den ServiceInteractor verschicken und erhalten kann

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `geheInLobby()` Tritt der Lobby bei.
    `void` | `geheInNeuenRaum(java.lang.String neuerRaum)` Tritt einem neuen Raum bei.
    `void` | `ladeBenutzerInLobby()` Fordert die Benutzer aus der Lobby an.
    `void` | `lehneHerausforderungAb(java.lang.String absenderUUID)` Sendet dem Herausforderer, dass die Herausforderung abgelehnt wurde.
    `void` | `nimmHerausforderungAn(java.lang.String gegnerUUID)` Sendet dem Herausforderer, dass die Herausforderung angenommen wurde.
    `void` | `sendeHerausforderung(java.lang.String empfaengerUUID, Benutzer ich)` Sendet eine Herausforderung an den angegeben Benutzer.
    `void` | `setzeListener(LobbyEventListener listener)` Setzt einen Listener, der bei einkommenden Events benachrichtigt wird.
    `void` | `verlasseAktuellenRaum()` Verlaesst den aktuellen Raum.
    `void` | `verlasseLobby()` Verlaesst die Lobby in dem der Raum "Lobby" verlassen wird.

    - ### Methods inherited from interface edu.whs.spin2018.baoapp.service.lobby.LobbyEventListener

      `onBenutzerlisteErhalten, onBenutzerTrittRaumBeiErhalten, onBenutzerVerlaesstRaumErhalten, onHerausforderungAngenommenErhalten, onHerausforderungBeendetErhalten, onHerausforderungErhalten`

    - ### Methods inherited from interface edu.whs.spin2018.baoapp.service.BaseInteractorInterface

      `entferneRegistrierteListener, onNeueNachricht, registriereBenoetigteListener`

    - ### Methods inherited from interface edu.whs.spin2018.baoapp.service.BaoServiceInterface

      `entferneListener, raumBetreten, raumVerlassen, registriereBenutzerListeErhaltenListener, registriereBenutzerTrittRaumBeiListener, registriereBenutzerVerlaesstRaumListener, registriereNachrichtenListener, registriereVerbundenListener, sendeBroadcast, sendeNachricht, trennen, verbinden, zeigeBenutzerImRaum`

- - ### Method Detail

    - #### sendeHerausforderung

          void sendeHerausforderung(java.lang.String empfaengerUUID,
                                    Benutzer ich)

      Sendet eine Herausforderung an den angegeben Benutzer.
      Parameters:
        `empfaengerUUID` - - Benutzer, der herausgefordert werden soll
        `ich` - - Daten des Absenders

    - #### lehneHerausforderungAb

          void lehneHerausforderungAb(java.lang.String absenderUUID)

      Sendet dem Herausforderer, dass die Herausforderung abgelehnt wurde.
      Parameters:
        `absenderUUID` - - uuid des Absenders, um die Nachricht richtig zuzustellen

    - #### nimmHerausforderungAn

          void nimmHerausforderungAn(java.lang.String gegnerUUID)

      Sendet dem Herausforderer, dass die Herausforderung angenommen wurde.
      Parameters:
        `gegnerUUID` - - uuid des Gegners um die Nachricht richtig zuzustellen

    - #### ladeBenutzerInLobby

          void ladeBenutzerInLobby()

      Fordert die Benutzer aus der Lobby an.

    - #### verlasseLobby

          void verlasseLobby()

      Verlaesst die Lobby in dem der Raum "Lobby" verlassen wird.

    - #### verlasseAktuellenRaum

          void verlasseAktuellenRaum()

      Verlaesst den aktuellen Raum.

    - #### geheInLobby

          void geheInLobby()

      Tritt der Lobby bei.

    - #### geheInNeuenRaum

          void geheInNeuenRaum(java.lang.String neuerRaum)

      Tritt einem neuen Raum bei.
      Parameters:
        `neuerRaum` - - Raum, der betreten werden soll

    - #### setzeListener

          void setzeListener(LobbyEventListener listener)

      Setzt einen Listener, der bei einkommenden Events benachrichtigt wird.
      Parameters:
        `listener` - - Listener, der gesetzt werden soll