Location Broker Data
Each entry in a Location Broker database contains information about an object and an interface, and it contains the location of a server that exports the interface to the object.
The records in a database entry are as follows:
| Item | Description |
|---|---|
| Object UUID | Specifies a universally unique identifier (UUID) of the object. |
| Type UUID | Identifies a unique identifier that specifies the type of the object. |
| Interface UUID | Indicates a unique identifier of the interface to the object. |
| Flag | Specifies a flag that indicates if the object is global (and should be registered in the GLB database). |
| Annotation | Contains 64 characters of user-defined information. |
| Socket Address Length | Specifies the length of the socket address field. |
| Socket Address | Indicates the location of the server that exports the interface to the object. |
Each database entry contains one object UUID, one interface UUID, and one socket address. This means a Location Broker database must have an entry for each possible combination of object, interface, and socket address. For example, the database must have 10 entries for a server that does the following:
- Listens on two sockets, socket_a and socket_b.
- Exports interface_1 for object_x, object_y, and object_z.
- Exports interface_2 for object_p and object_q.
The server must make a total of 10 calls to the lb_$register routine to completely register its interfaces and objects.
You can look up Location Broker information by using any combination of the object UUID, type UUID, and interface UUID as keys. You can also request the information from the GLB database or from a particular LLB database. Therefore, you can obtain information about all objects of a specific type, all hosts with a specific interface to an object, or even all objects and interfaces at a specific host. For example, you can find the addresses of all remotely available array processors by looking up all entries with the arrayproc type.