Bug 20247 - Lack java.util.concurrent.LinkedBlockingQueue
Summary: Lack java.util.concurrent.LinkedBlockingQueue
Alias: None
Product: classpath
Classification: Unclassified
Component: classpath (show other bugs)
Version: 0.15
: P2 enhancement
Target Milestone: 0.92
Assignee: Not yet assigned to anyone
Depends on:
Blocks: 19740 22091
  Show dependency treegraph
Reported: 2005-02-28 13:08 UTC by Marco Pesenti Gritti
Modified: 2006-06-20 21:34 UTC (History)
6 users (show)

See Also:
Known to work:
Known to fail:
Last reconfirmed: 2005-10-30 17:22:05


Note You need to log in before you can comment on or make changes to this bug.
Description Marco Pesenti Gritti 2005-02-28 13:08:55 UTC
This API was added to java 1.5
Comment 1 Andrew Pinski 2005-02-28 13:15:23 UTC
Confirmed, even classpath does not have this yet.
Comment 2 Andrew Pinski 2005-07-26 21:57:20 UTC
This is a classpath issue but for some reason I cannot move it.
Comment 3 Andrew Pinski 2005-07-26 23:08:43 UTC
Moving to classpath.
Comment 4 David Walluck 2006-04-07 10:56:50 UTC
FYI, the JSR 166 Concurrency Utilities sources <http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/main/java/> are in the public domain.
Comment 5 Roman Kennke 2006-04-07 11:08:57 UTC
This is not really public domain:


This code is covered by the nearly-but-not-exactly-free nuclear-bsd license.
Comment 6 Roman Kennke 2006-04-07 11:11:45 UTC
whoops sorry, I missed the first couple of lines, which hopefully means that most of the code is indeed public domain:

The software comprising JSR166 was written by Doug Lea with assistance
from members of JCP JSR-166 Expert roup and released to the public
domain, as explained at:
http://creativecommons.org/licenses/publicdomain, excepting portions
of the class java.util.concurrent.CopyOnWriteArrayList, which were
adapted from class java.util.ArrayList, written by Sun Microsystems,
Inc, which are used with kind permission, and subject to the
Comment 7 Tom Tromey 2006-04-07 16:50:54 UTC
Yes, we can use most of these sources, just not all of them.
I have a patch here which does it.  And we already have
stubbed declarations for most of the needed VM support.

To finish we need:

1. A script which takes the jsr166 source and strips out
everything copyright Sun (last time I did this by hand,
but we want to automate for future imports).

2. A script to change com.sun.Unsafe (or whatever it was called)
to gnu.classpath.Unsafe (a trivial sed would do).

3. We have to figure out how to handle some reflection permissions
calls in the concurrency code.  Nobody has really looked at this
yet; in my tree I have them commented out just to make it all compile.

At this point we could import, but it wouldn't work.
For it to work, VMs must implement the Unsafe API.

I can send my patch to anybody who wants it.
Perhaps I ought to upload it here... ?
Comment 8 Tom Tromey 2006-06-20 21:34:26 UTC
Checked in on the generics branch.
Note that the VM requires changes for this code to work.