MozillaZine

Help With The 'Blackwood' Project

Monday September 20th, 1999

Frank Mitchell of Sun has a request for any coders out there interested in helping with the Blackwood project - specifically the enabling of Java-based components in Mozilla. Frank writes:

"If you've been reading netscape.public.mozilla.xpcom, you may notice my posting on the problems we -- or should I say 'I' -- are having on the XPCOM-Java Bridge part of Blackwood. Right now, we're severely understaffed.

So, I'm asking for some volunteers to help finish implementing the bridge. The code is in mozilla/java/xpcom; it's available by checking out that directory (which is all you need if you have Mozilla already), or by checking out Blackwood (or SeaMonkeyBlackwood for SeaMonkey + Blackwood) to get all the Blackwood code.

Remaining tasks include:

- Generating a Java proxy class on-the-fly for each XPCOM interface.

- Generating an instance of a Java proxy to wrap a C++ object, based on the interface being exposed.

- Mapping a Java object back to the C++ object it proxies for, if any.

- Building a subclass of nsXPTCStubBase to act as a proxy for Java XPCOM objects.

- Detecting whether a Java object is a proxy to be unwrapped, or a real Java object to be wrapped.

- Insuring that each Java object has at most one C++ proxy instance. (And vice versa, although that might require weak references, which are only available in Java 2 ...)

- Completing the method dispatch code, which currently doesn't handle nsIDs and interfaces. (The former is a simple addition, the latter requires a small amount of work.)

- Writing similar method dispatch code for C++ to Java, perhaps after abstracting out bits of the Java to C++ code.

- Making method calls, particularly refcounting, thread-safe.

- Fixing leaks, and debugging in general.

If anyone is interested, please email frankm@eng.sun.com; tell me what you want to work on, and how much time you think you can afford to spend on it, so I know which areas are covered. Also send me any questions about the project or the code base; I realize that the website docs and READMEs are sketchy right now, and there's a lot of design assumptions that I haven't -- yet -- committed to HTML or code.

Thanks, Frank"


#1 Post to the JavaLobby

by BrerBear

Tuesday September 21st, 1999 10:03 AM

You are replying to this message

Frank-

I'd highly recommend that you post this request to the JavaLobby site at <http://www.javalobby.org> . I'd wager there are more people there who might be available to help.