3 import java.awt.BorderLayout;
4 import java.awt.FlowLayout;
6 import javax.swing.JButton;
7 import javax.swing.JDialog;
8 import javax.swing.JPanel;
9 import javax.swing.border.EmptyBorder;
11 import configuration.ConfigXML;
13 import javax.swing.JTextArea;
17 import java.awt.event.ActionListener;
18 import java.awt.event.ActionEvent;
21 * It runs the database server as a separate process.
23 public class ObjectdbManagerServer extends JDialog {
26 private static final long serialVersionUID = 1L;
27 private final JPanel contentPanel = new JPanel();
32 public static void main(String[] args) {
34 ObjectdbManagerServer dialog = new ObjectdbManagerServer();
35 dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
36 dialog.setVisible(true);
37 } catch (Exception e) {
43 public ObjectdbManagerServer() {
44 setTitle("objectDBManagerServer: running the database server");
45 setBounds(100, 100, 486, 180);
46 getContentPane().setLayout(new BorderLayout());
47 contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
48 getContentPane().add(contentPanel, BorderLayout.CENTER);
49 contentPanel.setLayout(new BorderLayout(0, 0));
51 textArea = new JTextArea();
52 contentPanel.add(textArea);
55 JPanel buttonPane = new JPanel();
56 buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
57 getContentPane().add(buttonPane, BorderLayout.SOUTH);
59 JButton okButton = new JButton("OK");
60 okButton.addActionListener(new ActionListener() {
61 public void actionPerformed(ActionEvent e) {
62 textArea.append("\n\n\nClosing the database... ");
64 System.out.println("Server close");
66 Runtime.getRuntime().exec("java -cp src\\main\\resources\\objectdb.jar com.objectdb.Server -port "+ c.getDatabasePort()+" stop");
67 } catch (Exception ioe) {
68 System.out.println (ioe);
73 } catch (Exception e1) {
78 okButton.setActionCommand("OK");
79 buttonPane.add(okButton);
80 getRootPane().setDefaultButton(okButton);
83 JButton cancelButton = new JButton("Cancel");
84 cancelButton.setActionCommand("Cancel");
85 buttonPane.add(cancelButton);
89 ConfigXML c=ConfigXML.getInstance();
91 if (c.isDatabaseLocal()) {
92 textArea.append("\nERROR, the database is configured as local");
96 System.out.println("Lauching objectdb server");
100 Runtime.getRuntime().exec("java -cp src\\main\\resources\\objectdb.jar com.objectdb.Server -port "+ c.getDatabasePort()+" start");
101 } catch (Exception ioe) {
102 System.out.println (ioe);
105 textArea.append("\nAccess granted to: "+c.getUser());
107 textArea.append("\nPress button to exit this database server... ");
109 } catch (Exception e) {
110 textArea.append("Something has happened in ObjectDbManagerServer: "+e.toString());