package edu.whs.spin2018.baoapp.model.remote;

import edu.whs.spin2018.baoapp.service.BaoServiceInterface;

/**
 * Defniert die Grundlegenden Methoden fuer einen ServiceInteractor
 */
public interface BaseInteractorInterface extends BaoServiceInterface {

    /**
     * Registriert, zusätzlich zum Nachrichten-Event Listener, weitere Listener am Socket
     */
    void registriereBenoetigteListener();

    /**
     * Entfernt die zusätzlichen registrierten Listener vom Socket.
     */
    void entferneRegistrierteListener();

    /**
     * Wird beim erhalten eines Nachricht-Events aufgerufen.
     *
     * @param args - Daten, die mit dem Event gesendet wurden
     */
    void onNeueNachricht(Object... args);
}
