Hi... I've just checked in some code which provides both server and client-side bridges between the BioJava sequence model and BioCorba 0.3 (a.k.a. BSANE). At the moment, the best way to get hold of it is from CVS: check out the `biojava-bsane' module.
The CORBA idl files were taken from the BioPython CVS repository. Are these the right ones to be using, or have they been superceded by something else? This is a new implementation which is significantly different from the old (BioCorba 0.1) support code -- After looking at the old code and the new interfaces, I decided it was probably easier to start again. I've taken the opportunity to write thee serverbridge in the new style (Servant/POA). This means that it won't work with the builtin ORB in J2SE 1.2 or 1.3. It does, however, work nicely in J2SE 1.4, and should also work with most of the commercial ORBs. So far, I've been testing with J2SE 1.4, and I'd be interested to hear about experiences with other ORBs. The client-side code should work fine on 1.3. It should build in the normal BioJava-ish way: - Copy over the dependancy .jar files. With J2SE1.4, all you need it biojava.jar. With other ORBs, you'll probably also need to copy a jar containing the org.omg.PortableServer package, and edit build.xml - Type `ant' to build biojava-bsane.jar - `ant javadocs' builds the API documentation. - If you've got a recent version of JUnit installed, try `ant runtests' to start the test suite. There are the following known limitations: - BSANE iterators returned by some of the methods don't implement the reset() method. I wasn't clear about the correct semantics for this. All methods which return an iterator also return the first `block' of results as an array. So the question is: does the reset method take you back to the iterator's original state (`least surprise' option), or right back to the start of the data set (seems potentially more useful). I can't really see a sensible use case for this method -- can someone who's actually going to use it give an opinion on this? - NucleotideSequence isn't implemented. Everything just gets returned as a BioSequence at the moment. - On the client side, custom alphabets aren't yet supported (but I plan to add these soon). The serverbridge already exposes BioJava alphabets correctly as BSANE objects (where possible). Other than these, it seems to work quite nicely. There are some (very) simple clients and servers in the demos/ directory. You can do something like serving up an Ensembl database as CORBA, then using one of the clients to dump features from a region as GFF. I'd be interested in doing some interoperability testing at some point. If anyone is curious, I can probably put some test servers up to experiment (but I'll have to run them on my home machine, so I don't want to put IORs out publically). Hope people find this useful, Thomas. _______________________________________________ Biojava-l mailing list - [EMAIL PROTECTED] http://biojava.org/mailman/listinfo/biojava-l