[jsword-devel] feather request: book downloading and index generating api

DM Smith dmsmith555 at yahoo.com
Fri Dec 8 08:27:38 MST 2006

David wrote:
> Hi, DM and fellow developers,
> I am developing web sword(90% done, pure j2ee implementation, will 
> help web hosting) and sword on eclipse RCP.  Issues were raised up 
> when I try to integrate install book and generate indices. The code 
> now has job api build in and also has the reporter to communicate with 
> user UI.
> In order to accelerate the acceptance of jword library,  the api for 
> downloading books and api for index processing need to seperated from 
> Job api.
I'm not sure I understand the problem.

The index api (org.crosswire.jsword.index) is independent of the Job and 
Reporter apis. The Lucene implementation is not.
Likewise for the install api (org.crosswire.jsword.index) and the sword 

Both the Job api and the Reporter api are listener based. If there is no 
listener for Job events or Reporter events, then those are not heard. 
Any listener of your choosing can be provided or not provided. It is up 
to you.

The purpose of the Job and Reporter apis is to provide asynchronous 
communication of a potentially background task thread. For example, you 
will notice in BibleDesktop that you can download and/or index more than 
one Book at a time. Each download and index is on its own thread and it 
communicates back to BibleDesktop asynchronously of its progress or any 
problems that are encountered.

In a web environment asynchronous communication of long-lived threads on 
the server may prove to be a challenge, but it should be possible.

More information about the jsword-devel mailing list