public void run() {

        //start collectors
        for (Konto collector : kontosbox) {
            if (collector.getTyp().startsWith("SMTPOutgoingMailServer")) continue;
            new MailCollectorThread(emailsbox, collector, sleeptime).start();
        }

        //start Keeperthread
        //accept POP3 incoming
        ServerSocket welcomePOP3Socket = null;

        try {
            welcomePOP3Socket = new ServerSocket(POP3Client.getPort(), 0, InetAddress.getByName(POP3Client.getHost()));
        } catch (IOException e) {
            System.out.println("Host is invalid");
        }

        ConnectionAcceptThread POP3Proxy = new ConnectionAcceptThread(this, welcomePOP3Socket, POP3Client, emailsbox, kontosbox);
        POP3Proxy.setDaemon(true);
        POP3Proxy.start();

        //accept SMTP incomming
        ServerSocket welcomeSMTPSocket = null;

        try {
            welcomeSMTPSocket = new ServerSocket(SMTPClient.getPort(), 0, InetAddress.getByName(SMTPClient.getHost()));
        } catch (IOException e) {
            System.out.println("Host is invalid");
        }

        ConnectionAcceptThread SMTPProxy = new ConnectionAcceptThread(this, welcomeSMTPSocket, SMTPClient, emailsbox, kontosbox);
        SMTPProxy.setDaemon(true);
        SMTPProxy.start();

        System.out.println("server is started");

        //if thread is death started him
        while (acceptConnect) {
            if (!POP3Proxy.isAlive()) POP3Proxy.start();
            if (!SMTPProxy.isAlive()) SMTPProxy.start();
        }

        //close all und exit
        try {
            welcomePOP3Socket.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

        System.out.println("server not accept connection");
    }