- a tiny ORB wrapper on SOAP,RMT -
(2004/05/03) I've recently updated OperaORB. It has now a 'native'-mode. It means OperaORB runs on RMT (not SOAP). Since RMT is a Squeak specific messaging layer, it is not portable. But the strong point is its performance. Plese see the doc:
OperaORB provides very simple API for distributed computing.
Suppose you have 'OperaPerson', which is normal Smalltalk class (no special code for distributed object).
To export an OperaPerson:
" 1: start OperaORB (optional - normally StartUpList will do automatically)"
OperaORB run.
" 2: init object adapter"
OperaORB root initialize.
" 3: register object implementation"
OperaORB root at: #John put: OperaPerson new.
Now, the OperaPerson instance can be accessed by the name of #John.
Suppose you would like to send message #doSomething: to #John, who is waiting at the host named 'nowhereland'.
To send a remote message:
" 1: start OperaORB (if not started)"
OperaORB run.
" 2: create remote object"
john := OperaRemoteObject name: #John host: 'nowhereland'.
"john := OperaRemoteObject named: #John." "shortcut for localhost"
" 3: remote message send"
john doSomething: 'Smalltalk!!'.
That's all!