source: trunk/gli/src/org/greenstone/gatherer/GathererProg.java@ 10242

Last change on this file since 10242 was 10242, checked in by mdewsnip, 19 years ago

Moved a lot of the duplicated code out of GathererProg and GathererApplet and into Gatherer.

  • Property svn:keywords set to Author Date Id Revision
File size: 2.9 KB
Line 
1/**
2 *#########################################################################
3 *
4 * A component of the Gatherer application, part of the Greenstone digital
5 * library suite from the New Zealand Digital Library Project at the
6 * University of Waikato, New Zealand.
7 *
8 * Author: John Thompson, NZDL Project, University of Waikato
9 *
10 * Copyright (C) 2005 New Zealand Digital Library Project
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2 of the License, or
15 * (at your option) any later version.
16 *
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, write to the Free Software
24 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
25 *########################################################################
26 */
27package org.greenstone.gatherer;
28
29
30import java.io.*;
31import javax.swing.*;
32import org.greenstone.gatherer.util.Utility;
33
34
35/**
36 * Containing the main() method, this class is the entry point for the
37 * stand-alone (non-Applet) GLI. The main point of this class is to set
38 * some stand-alone specific properties and then create an instance of the
39 * Gatherer class.
40 * @author John Thompson, NZDL Project, University of Waikato
41 */
42public class GathererProg
43{
44 /** The entry point into the stand-alone GLI.
45 * @param args A collection of arguments that may include: initial screen size, dictionary, path to the GSDL etc.
46 */
47 static public void main(String[] args)
48 {
49 // A serious hack, but its good enough to stop crappy 'Could not
50 // lock user prefs' error messages. Thanks to Walter Schatz from
51 // the java forums.
52 System.setProperty("java.util.prefs.syncInterval","2000000");
53 // => results in one message every 600 hours!
54
55 // Ensure platform specific LAF
56 try {
57 UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
58 }
59 catch (Exception exception) {
60 exception.printStackTrace();
61 }
62
63 // Ensure the GLI user directory exists
64 File gli_user_directory = Utility.setGLIUserFolder(null); // Defaults to user's home area
65 if (!gli_user_directory.exists() && !gli_user_directory.mkdirs()) {
66 System.err.println("Error: Unable to make directory: " + gli_user_directory.toString());
67 }
68
69 // Create an instance of the Gatherer class, which will parse the args and prepare the rest of the GLI
70 Gatherer gatherer = new Gatherer(args);
71
72 // Display the GUI immediately
73 gatherer.openGUI();
74
75 // If there was an open collection last session, reopen it
76 if (Gatherer.open_collection_file_path != null) {
77 Gatherer.c_man.loadCollection(Gatherer.open_collection_file_path);
78 }
79 }
80}
Note: See TracBrowser for help on using the repository browser.