Thank you Paul!
That's what I think too, I just can't confirm it.
One of the problem I have is combining local and RMI DataClient in one class file.
My concern is that, no matter which mode user choice, I'll use the same interface (DataServer: my RMI remote interface) as the access point for my Data class.
When user selects RMI mode, one constructor in my DataClient will instantiate the DataServer ds from RMI server, (Naming.lookup).
When user elects local mode, the other constructor will take a
string (db.db location), and instantiate the Data class (new Data()).
The one thing that concerns me is that the DataServer is a interface that extends Remote. Of course, when in local mode, it does do anything special, it's just an ordinary interface.
Is my design ok?