![]() ![]() However, there is much more to be said about simple types, interfaces, properties and services in UNO. In First Steps the most important UNO types were introduced. The data types in the API reference are UNO types which have to be mapped to the types of any programming language that can be used with the LibreOffice API. The relationship between API specifications and LibreOffice implementations is treated in Understanding the API Reference. The data types of the API reference are explained in Data Types. The reference provides abstract specifications which sometimes can make you wonder how they map to implementations you can actually use. In the API reference there are UNOIDL data types which are unknown outside of the API. This section provides you with a thorough understanding of the concepts behind the LibreOffice API. When this target will be reached, the API, the components and the fundamental concepts will provide a construction kit, which makes LibreOffice adaptable to a wide range of specialized solutions and not only an office suite with a predefined and static functionality. Such components are manageable, they interact with each other to provide high level features and they are exchangeable with other implementations providing the same functionality, even if these new implementations are implemented in a different programming language. Its main goals are to provide an API to access the functionality of LibreOffice, to enable users to extend the functionality by their own solutions and new features, and to make the internal implementation of LibreOffice exchangeable.Ī long term target on the LibreOffice roadmap is to split the existing LibreOffice into small components which are combined to provide the complete LibreOffice functionality. The LibreOffice API is a language independent approach to specify the functionality of LibreOffice. The specification for the programmable features of LibreOffice is called the LibreOffice API. Most objects of LibreOffice are able to communicate in a UNO environment.These runtime environments are provided as language bindings. Both ends of the bridge must be UNO environments, therefore a language-specific UNO runtime environment to connect to another UNO process in any of the supported languages is required. ![]() The remote bridges use a special UNO remote protocol (URP) for this purpose which is supported for sockets and pipes. UNO provides bridges to send method calls and receive return values between processes and between objects written in different implementation languages.Communication takes place exclusively over interface calls as specified in UNOIDL. This is transparent for the developer, there is no need to care about a component's implementation language. The service manager might ask Linux to load and instantiate a shared object written in C++ or it might call upon the local Java VM to instantiate a Java class. It maintains a database of registered components which are known by their name and can be created by name. This factory is called the service manager. To instantiate components in a target environment UNO uses a factory concept.Components must support certain base interfaces to be able to run in the UNO environment. UNO objects in the form of compiled and bound libraries are called components. From UNOIDL specifications, language dependent header files and libraries can be generated to implement UNO objects in the target language. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |