![]() |
![]() |
MateComponent Activation API Reference Manual | ![]() |
---|
MateComponent Activation has a query language used to request components with
specific properties from the MateComponent Activation daemon.
The API call matecomponent_activation_activate
takes a
requirements parameter which is
a string containing a specific request in the OAF query
langage.
A simple example is:
CORBA_Object o = matecomponent_activation_activate ("repo_ids.has ('IDL:MATE/Graph/Layout:1.0')", NULL, 0, NULL, &ev);
This will ask for a component which supports the MATE/Graph/Lyout:1.0 interface. You can also do much more complicated things.
"(repo_ids.has_all (['IDL:MateComponent/Control:1.0', 'IDL:Nautilus/ContentView:1.0']) OR repo_ids.has_one (['IDL:MateComponent/Control:1.0', 'IDL:MateComponent/Embeddable:1.0'])) AND repo_ids.has('IDL:MateComponent/PersistFile:1.0') AND foo:bar.defined()"
This would get any component with both 'Control' and 'ContentView' or with either 'Control' or 'Embeddable' as long as they supported the 'PersistFile' interface, and defined the attribute 'foo:bar'.