/** Dialogbox für Focused Crawl
* (c) Wolfgang Mederle <wam@mederle.de> 12.2000
*/
package lapis.cis;
import lapis.swing.*;
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.filechooser.*;
public class FocCrawlDialog extends JFrame {
private JPanel panel;
private boolean urldateida = false;
private boolean keyworddateida = false;
public String urlFile, keyFile;
private String newline ="\n";
public Browser browser;
public FocCrawlDialog(Browser x) {
this.browser = x;
setTitle ("Focused Crawl");
setSize (400, 200);
addWindowListener(new WindowAdapter() {
public void windowClosing (WindowEvent e) {
setVisible(false);
}
} );
// neue Leinwand: zwei Zeilen
panel = new JPanel();
panel.setLayout(new GridLayout(2,1));
// in die erste Zeile kommt eine Schachtel
Box schachtel = Box.createHorizontalBox();
// vor wir jetzt die Knöpfe für die Schachtel machen, müssen wir mal
// das Textausgabefeld erstellen, denn sonst wissen die Knöpfe nicht,
// wohin mit der Ausgabe.
final JTextArea woshammanacha = new JTextArea(3,30);
woshammanacha.setMargin(new Insets(5,5,5,5));
woshammanacha.setEditable(false);
// jetzt machen wir aber die Knöpfe...
JButton urlButton = new JButton ("Domain File");
urlButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent urlf_openevt) {
JFileChooser u = new JFileChooser();
int result = u.showDialog(FocCrawlDialog.this, "Choose");
urlFile = u.getSelectedFile().getPath();
woshammanacha.append((urldateida == false) ? "URL File: "+urlFile + newline : "URL File CHANGED to: " + newline + urlFile + newline);
urldateida = true;
startCrawl();
}
});
JButton keyButton = new JButton ("Keyword File");
keyButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent keyf_openevt) {
JFileChooser k = new JFileChooser();
int result = k.showDialog(FocCrawlDialog.this, "Choose");
keyFile = k.getSelectedFile().getPath();
woshammanacha.append((keyworddateida == false) ? "Keyword File: " +keyFile + newline : "Keyword File CHANGED to: " + newline + keyFile + newline);
keyworddateida = true;
startCrawl();
}
});
JButton cancelButton = new JButton ("Cancel");
cancelButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ka_aaktschn_ned) {
setVisible(false);
}
});
// ...und stecken sie in die Schachtel
schachtel.add(Box.createHorizontalStrut(10)); // bißchen Luft
schachtel.add(urlButton);
schachtel.add(Box.createGlue());
schachtel.add(keyButton);
schachtel.add(Box.createGlue());
schachtel.add(cancelButton);
schachtel.add(Box.createHorizontalStrut(10));
// die Schachtel stecken wir in die erste Zeile...
panel.add(schachtel, "Center");
// ...und das Textausgabefeld ohne Schachtel in die zweite
panel.add(woshammanacha);
// zum Schluß noch die Leinwand in den Rahmen gespannt und ab die Post!
Container inhalt = getContentPane();
inhalt.add(panel);
}
void startCrawl() {
if (urldateida == true && keyworddateida == true) {
setVisible(false);
FocCrawl krabble_los = new FocCrawl
(urlFile, keyFile);
int index;
HTMLDocString buffer = null;
DocFetcher[] docFetchers;
Classifier[] classifiers;
Watcher bb;
krabble_los.makeFastQuery();
docFetchers = krabble_los.startDocFetcher
(FocCrawl.DOC_FETCHER_NUMBER);
classifiers = krabble_los.startClassifier
(FocCrawl.CLASSIFIER_NUMBER);
bb = new Watcher
(docFetchers, classifiers, this.browser);
bb.setPriority(7);
bb.start();
}
else return;
}
}
syntax highlighted by Code2HTML, v. 0.8.12