Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index



On Thu, 2011-11-24 at 14:42 +0100, Tomas Hlavaty wrote:
- I write my application in a dynamic programming language with no
  dependencies on libreoffice code;

        Ok :-) so you would have a native implementation of the UNO RPC
protocol?

- My application reads the type library (RDB or better a simple XML
  alternative) of the actually installed libreoffice on the target
  machines (possibly different versions).

        Fine.

- My application communicates with libreoffice via UNO using the correct
  version of the type library (which I didn't exactly know before
  installing my application on the target machine).

        OK; so you rely on your dynamic language binding to elide / add extra
fields etc. - make sense.

At the moment, I parse IDL files and hope (or have to make sure) that
the installed libreoffice is compatible.

        So - in -theory- (for all interesting cases), the UNO API is frozen (at
the moment). In the future we plan to change that, so we can avoid
piling up hacks).

To an extend, I could probably build the type library dynamically by
querying all interfaces instead of reading the RDB file, but I think
that would be unnecessarily slow.

        You could perhaps introspect them via UNO remotely, and cache the data
per interface; not sure how many interfaces people typically use - but,
prolly not -that- many :-)

There seems to be some Python bridge to libreoffice. Does it use the
store code underneath a FFI?

        Sure - it links to the URE run-time; we have a stable C ABI that we
export that has all the basic symbols and type information you need; and
of course that makes running in-proc. much cleaner.

        HTH,

                Michael.

-- 
michael.meeks@suse.com  <><, Pseudo Engineer, itinerant idiot


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.