ws.addPlugin(new ProxyPanel(framework)); ws.addPlugin(new SpiderPanel(framework)); ws.addPlugin(new ManualRequestPanel(framework)); ws.addPlugin(new SessionIDPanel(framework));
    public static void main(String args[]) {        WebScarab ws = new WebScarab();        ws.show();        boolean loaded = false;        if (args != null && args.length == 1 && !args[0].equals("")) {            loaded = ws.loadSession(args[0]);        } else {            JFileChooser jfc = new JFileChooser();            jfc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);            jfc.setDialogTitle("Select a directory to write the session into");            int returnVal = jfc.showOpenDialog(ws);            if (returnVal == JFileChooser.APPROVE_OPTION) {                File file = jfc.getSelectedFile();                String dir = file.toString() + System.getProperty("file.separator");                if (FileSystemStore.isExistingSession(dir)) {                    loaded = ws.loadSession(dir);                } else {                    loaded = ws.createSession(dir);                }            }        }        if (!loaded) {            JOptionPane.showMessageDialog(null, "Conversations and other data will not be saved unless you create or open a session", "Warning", JOptionPane.WARNING_MESSAGE);        }    }