Oddjob is the network.
Sharing jobs allows them to be controlled and monitored by another Oddjob user or Oddjob process such as a scheduler.
A special server job is used to provide the sharing functionality. The server accepts connections from Oddjobs on other machines and provides information about the local configuration and accepts instructions such as to run and stop jobs.
To connect to a shared Oddjob a client job is required. This job connects to the server and reflects the remote jobs locally.
Working with the local reflection of a remote job is no different to working with a local job except that the action takes place on the server.
When using Oddjob Explorer working with server processes is a virtually seamless transition from working with local jobs.
Accessing a remote job and it's properties from a configuration file is a virtually seamless transition from working with a nested Oddjob job. A job is accessible using the notation ${client-id/id-of-job-on-server}.
Clients and Servers can be linked together to enable jobs to be visible across several servers:
client1 -> server1 -> client2 -> server2
In this configuration connecting to client1 allows access to job on server 1 and on server2. Connecting to client2 only allows access to jobs on server2.
The server has built in loop back detection to detect the situation when a client loops back to the originating server.
server1 server2
| \/ |
| /\ |
client1 client2
In this configuration connecting to either client allows both servers to be monitored.
Behind the scenes Oddjob uses JMX (Java Management Extensions) For more information please see the Sun documentation