Debug.msg("Suche FritzBox ber UPNP / SSDP");
if (JFritzUtils.parseBoolean(JFritz.getProperty("option.useSSDP", "true"))) { Debug.msg("Suche FritzBox ber UPNP / SSDP");
    public JFritz(boolean fetchCalls, boolean csvExport, String csvFileName,            boolean clearList) {        loadProperties();        clearUnnecesseryProperties();        loadMessages(new Locale("de", "DE"));        loadSounds();        String osName = System.getProperty("os.name");        Debug.msg("Betriebssystem: " + osName);        if (osName.startsWith("Mac OS"))            HostOS = "mac";        else if (osName.startsWith("Windows"))            HostOS = "windows";        else if (osName.equals("Linux")) {            HostOS = "linux";        }        Debug.msg("JFritz runs on " + HostOS);        if (HostOS.equalsIgnoreCase("mac")) {            new MacHandler(this);        }        phonebook = new PhoneBook(this);        phonebook.loadFromXMLFile(PHONEBOOK_FILE);        callerlist = new CallerList(this);        callerlist.loadFromXMLFile(CALLS_FILE);                sipprovider = new SipProviderTableModel();        sipprovider.loadFromXMLFile(SIPPROVIDER_FILE);                Debug.msg("Start des commandline parsing");        if (fetchCalls) {            Debug.msg("Anrufliste wird von Fritz!Box geholt..");            try {                callerlist.getNewCalls();            } catch (WrongPasswordException e) {                Debug.err(e.toString());            } catch (IOException e) {                Debug.err(e.toString());            } finally {                if (csvExport) {                    Debug.msg("CSV-Export to " + csvFileName);                    callerlist.saveToCSVFile(csvFileName, true);                }                if (clearList) {                    Debug.msg("Clearing Caller List");                    callerlist.clearList();                }                Debug.msg("JFritz! beendet sich nun.");                System.exit(0);            }        }        if (csvExport) {            Debug.msg("CSV-Export to " + csvFileName);            callerlist.saveToCSVFile(csvFileName, true);            if (clearList) {                Debug.msg("Clearing Caller List");                callerlist.clearList();            }            System.exit(0);        }        if (clearList) {            Debug.msg("Clearing Caller List");            callerlist.clearList();            System.exit(0);        }        Debug.msg("Neue Instanz von JFrame");        jframe = new JFritzWindow(this);        Debug.msg("Checke Systray-Support");        if (checkForSystraySupport()) {            try {                systray = SystemTray.getDefaultSystemTray();                createTrayMenu();            } catch (Exception e) {                Debug.err(e.toString());                SYSTRAY_SUPPORT = false;            }        }        Debug.msg("Suche FritzBox ber UPNP / SSDP");        ssdpthread = new SSDPdiscoverThread(this, SSDP_TIMEOUT);        ssdpthread.start();        javax.swing.SwingUtilities.invokeLater(jframe);    }