from socketLib import IVerbindungsSocket
import threading

def handleClient(komm_s):
    # DEBUG
    # client = komm_s.komm_s.getpeername()
    # print('Thread läuft für Anfrage von ' +  str(client))
    
    anfrage = komm_s.empfangeStringBis(0)
    
    # antwort = 'HALLO, ICH BIN EIN SCHREISERVER! ICH SCHREIE EINFACH ALLES ZURÜCK, WAS DU MIR SCHICKST: ' + anfrage.upper() + '!!!'
    antwort = anfrage.upper()
    
    komm_s.sendeString(antwort)    

    komm_s.sendeBytes([0])
    
    komm_s.trennen()
    
    # DEBUG
    # print('Thread beendet für Anfrage von ' +  str(client))
    
# Hauptprogramm    
verbindungs_s = IVerbindungsSocket()
verbindungs_s.anPortBinden(5001)

while True:
    komm_s = verbindungs_s.verbindungAnnehmen()
    print('Anfrage von ' +  str(komm_s.komm_s.getpeername()))
    
    t = threading.Thread(target=handleClient, args=(komm_s,))
    t.start()