hi,
1a) "Your programs must not require use of command line arguments other than the single mode flag, which must be supported..."
1b) "...The mode flag must be either "server", indicating the server program must run, "alone", indicating standalone mode, or left out entirely, in which case the network client and gui must run."
2) "...In either case, the program must allow the user to specify the location of the database, and it must also accept an indication that a local database is to be used, in which case, the networking must be bypassed entirely."
there is one main entry to run the application (one class with one main()). when you run this class it should take one of the three values (server, alone and empty
string) and based on this argument main() will instantiate whatever it needs to get the job done (network / standalone layer and database layer).
Regarding the rest here is what it means:
the user should be able to specify the host name where the database is located (there is only one database shared between all clients) and you can specify any other needed parameters (such as port number).
NOW
where do you specify them? you specify them in the suncertify.properties. So your application needs to read the contents of that file and work upon them.
how can the user change the properties? user should be able to change settings from the GUI and not by opening/editing the properties file (using notepad for example).
hope that clarified things.