[ 
https://issues.apache.org/jira/browse/STANBOL-146?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bertrand Delacretaz resolved STANBOL-146.
-----------------------------------------

    Resolution: Fixed

All of the above (*) is implemented in revision 1089486, and I have modified 
the opennlp engine (revision 1089451) to use the new DataFileProvider service.

The attached screenshot shows the console plugin, with the opennlp engine using 
two files provided by its own ClasspathDataFileProvider and two found under 
/tmp/datafiles, which was configured as the DataFileProvider's data files 
folder.

(*) Except the display of missing files on the stanbol homepage - this would be 
done by querying the DataFileProviderLog for events where 
getActualFileLocation() is null.

> DataFileProvider service
> ------------------------
>
>                 Key: STANBOL-146
>                 URL: https://issues.apache.org/jira/browse/STANBOL-146
>             Project: Stanbol
>          Issue Type: Improvement
>          Components: Commons
>            Reporter: Bertrand Delacretaz
>            Assignee: Bertrand Delacretaz
>            Priority: Minor
>         Attachments: dfp-console.jpg
>
>
> Several stanbol enhancer engines and other components use potentially large 
> read-only data files (models, indexes etc.), and some of those cannot be 
> distributed with Stanbol because of licensing or size issues.
> We discussed this at the Saarbrücken workshop and came up with these specs 
> for a DataFileProvider service:
> DataFileProvider provides data files (InputStreams actually) to OSGi 
> components.
> Bundles can provide default data files via their own DataFileProvider 
> services. The main DataFileProvider has a service.ranking of 0 to make it the 
> default provider. A bundle that provides a DataFileProvider service must 
> register it in its Activator, so that it's up before any component of the 
> bundle asks for it.
> The main DataFileProvider ignores other providers if it finds the requested 
> data file in the filesystem, in a specific folder ("datafiles folder"). The 
> name of that folder is configurable in the main DataFileProvider service.
> When a bundle with symbolic name foo asks for data file bar.bin, the main 
> DataFileProvider first looks for a file named foo-bar.bin in the datafiles 
> folder, then for a file named bar.bin.
> A request for a data file can include a downloadExplanation String, that 
> describes how to get the full data file, in case we only supply a default 
> smaller one.
> An OSGi console plugin lists all (successful or failed) requests to the main 
> DataFileProvider service, along with their downloadExplanations. This list of 
> requests can also be queried so that failed requests can be shown on the 
> stanbol server home page, for example. This provides a single location where 
> stanbol users see what data files are needed and which ones were actually 
> loaded from where.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to