Porting example

From Apache OpenOffice Wiki
Jump to: navigation, search

Step 1 Choose an object to port

I randomly picked the Filter object e.g. XFilter in the helperapi, then browsed the helperapi code. I find XFilter is implemented by FilterImpl.java but it expects to be initialised by an XAutoFilter implementation object

so already we need to think about providing an implementation not only for XFilter but also for XAutoFilter

looking at XAutoFilter.idl we see that there is a Filters() attribute/method that returns a Collection of Filters, so additionally I now realise I also need an implementation of the XFilters object. The XAutoFilter implementation is the key object that the others are accessed/provided from. After some searching through the source code I find this is an attribute of the SheetImpl object

so, to summarize, after initially choosing one object to have a crack at porting, I find in fact I actually need to provide implementations for the following interfaces

  • XFilter
  • XAutoFilter
  • XFilters

and also I need to add a new attribute to return an XAutoFilter implementation

Step 2 Port the idl files

Personal tools