.oafinfo file format reference

Table of Contents
The <oaf_server> tag
The <oaf_attribute> tag

This section describes the format of the .oafinfo files used by applications to tell the OAF daemon about the interfaces they support.


The <oaf_server> tag

Here follows a simple example of a minimalist .oafinfo file.
<oaf_info>
<oaf_server iid="OAFIID:oaf_naming_service:7e2b90ef-eaf0-4239-bb7c-812606fcd80d" 
  type="exe" location="oafd">
</oaf_server>
<oaf_info>
Each oaf_server entry conventionally has 3 mandatory properties: iid (an iid generated by uuidgen), type (can be exe, factory and shlib) and location. If the type is exe, location is the name of the executable which creates the CORBA interfaces associated to this entry and registers them to OAF. It the type is factory, location is the iid of the component which can create the corresponding CORBA server. Here follows a simple example of this:
<oaf_info>

<oaf_server iid="OAFIID:demo_echo_factory:a7080731-d06c-42d2-852e-179c538f6ee5"
  type="exe" location="bonobo-echo">
</oaf_server>

<oaf_server iid="OAFIID:demo_echo:fe45dab2-ae27-45e9-943d-34a49eefca96"
  type="factory" location="OAFIID:demo_echo_factory:a7080731-d06c-42d2-852e-179c538f6ee5">
</oaf_server>

</oaf_info>
If you ask OAF to activate the OAFIID:demo_echo:fe45dab2-ae27-45e9-943d-34a49eefca96 component, OAF will first check it is a factory, make sure the corresponding factory compoenent is running (by activating it. Here, activating the factory component is a matter of launching the executable) and call ::create on the factory. It will return you that object.

If the type is shlib, location is the name of the library the code is in: libgmf.so for example.