public void updateStatsBuild(boolean isInitial) { String archsamp = m_archiveDir + "/" + m_sample; String samplename = new File(archsamp).getName(); List<String> filelist = new ArrayList<String>(); filelist.add("fidlog"); filelist.add("ACQlist"); filelist.add("explist"); filelist.add("EXPLIST"); filelist.add("LONGLIST"); SQBuild builder = new SQBuild(archsamp, samplename, m_autodir, filelist, false); String locdir = builder.getActiveLocdir(); if (locdir != null) { locdir += "/current.fid/fid"; if (!locdir.equals(m_activeLocdir)) { Messages.postDebug("SQActive", "New active locdir: " + locdir); m_currentFileWatcher.removePath(m_activeLocdir); m_activeLocdir = locdir; m_currentFileWatcher.addPath(m_activeLocdir); } } final SQNodeList nodeList = builder.getNodeList(); final boolean initial = isInitial; // Run this in the Event Thread because it updates the GUI SwingUtilities.invokeLater( new Runnable() { public void run() { updateStatsBuildUI(initial, nodeList, m_curSQExp); } }); }