Extension Infrastructure: Recent Achievements and Future Prospects

Post on 05-Jul-2015

1.660 views 2 download

Transcript of Extension Infrastructure: Recent Achievements and Future Prospects

Extensions Infrastructure

Recent Achievements and Future Prospects

Joachim LingnerSoftware EngineerSun Microsystems

2

About the speaker

• Started working as software engineer at Sun Microsystems in 1999

• Also began working on StarOffice at the same time• Involved in UNO development• Currently focused on developing the Extension Manager

3

Content

• Renaming of Package Manager • Extension identifier• Extension versioning• System integration• Options pages• Online update• Extensions repository• Future plans

4

Renaming of Package Manager

• Renaming “Package Manager” to “Extension Manager” and

• “UNO Package Bundle” to “Extension”

5

Renaming of Package ManagerMotivation

• “Extension” widely used, old name did not stick• Content can also be data with no relation to UNO• An extension is a container for code and data and it

must be deployed by the Extension Manager

6

Extension Identifier

• File names need not be unique anymore – shorter names possible

• Files with short names are easier to handle and • Shorter file names are better displayed in the dialog• Different extensions with the same file name can be

installed

7

Extension Identifier

• The identifier is determined by the description.xml• Use “Reversed Domain Name Scheme” to ensure

uniqueness

8

Versioning

• New “Version” column• Needed for online update

9

Versioning

• Only one version of an extension can be installed (per user and shared layer)

• Helpful messages when installing

10

Versioning

• The version is determined by the description.xml

11

System Integration

• Easier recognition by using an icon for .oxt files

12

System Integration

• Easier installation

13

System Integration

• Extension Manager GUI is used for installing

14

Options Pages

• Extensions may use the options dialog for their settings• All options in one dialog, no separate menus • Seamless integration in application settings

15

Options Pages

• Extensions can define new nodes• Nodes can appear for particular modules or always

16

Options PagesWhat is Required

• A tab-page, can be created with the dialog editor of OOo• Configuration data describing the leaves and nodes, etc.• An UNO service that takes care of loading and saving the

data• Configuration files (.xcs, .xcu) for the data of the option

pages

17

Online Update

• User friendly way of getting and installing updates• User starts the update• Get an update for a selected extension or for all

extensions

18

Online UpdateGetting Update Information

• Extension Manager needs information to determine if updates are available

• description.xml may contain a URL• Build-in URL, which is used in case the extension does

not provide one• URLs can

> directly refer to a file or> trigger the generation of update information by the web server

• Bundling of multiple update information in an atom feed

19

Online UpdateContent of Update Information

• Identifier• Version• Dependencies• Download URL

20

Online UpdateUpdate Dialog

21

Online UpdateSecurity

• Currently users must trust the connection and source• HTTPS is in development• Digital signatures are planned

22

Extension Repository

• Link to repository within the Extension Manager

23

Extension Repository

• http://extensions.services.openoffice.org• Hosted by the Open Source Lab (OSL), a facility of the

Oregon State University• No costs for the publishers of extensions• Free and commercial extensions• No payment system available, but• Downloads can be hosted at external sites (which may

support payments) • Supports the online update feature of the Extension

Manager

24

Future Plans

• Allow semi-automatic update through web site

• Automatic notification about updates (combined with office)

• Provide information about new extensions (from repository)

• Support of https

• Digital signatures

• GUI redesign

• Bundled Extensions

• Improve NetBeans OpenOffice.org API Plugin

• More UNO AWT controls (grid control)

• ...

Joachim Lingnerjoachim.lingner@sun.com

Extensions Infrastructure

Recent Achievements and Future Prospects

Questions?