summaryrefslogtreecommitdiff
path: root/java/common
diff options
context:
space:
mode:
authorRajith Muditha Attapattu <rajith@apache.org>2008-11-21 17:57:16 +0000
committerRajith Muditha Attapattu <rajith@apache.org>2008-11-21 17:57:16 +0000
commit61523667e8589275138a66ad23fda254c66c7dfe (patch)
treeb527337e67db558c4612a01831281a3eb679c1f3 /java/common
parentda89c7fe7cb06c3bb8c514fd31af353f3c53c978 (diff)
downloadqpid-python-61523667e8589275138a66ad23fda254c66c7dfe.tar.gz
Appologies for the sudden checkin without notice, close to the release cycle.
Reverting the changes back. Will attach a patch and commit after the release. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@719657 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/common')
-rw-r--r--java/common/src/main/java/org/apache/qpid/thread/DefaultThreadFactory.java18
-rw-r--r--java/common/src/main/java/org/apache/qpid/thread/RealtimeThreadFactory.java47
-rw-r--r--java/common/src/main/java/org/apache/qpid/thread/ThreadFactory.java7
-rw-r--r--java/common/src/main/java/org/apache/qpid/thread/Threading.java26
-rw-r--r--java/common/src/main/java/org/apache/qpid/transport/network/io/IoReceiver.java26
-rw-r--r--java/common/src/main/java/org/apache/qpid/transport/network/io/IoSender.java27
6 files changed, 16 insertions, 135 deletions
diff --git a/java/common/src/main/java/org/apache/qpid/thread/DefaultThreadFactory.java b/java/common/src/main/java/org/apache/qpid/thread/DefaultThreadFactory.java
deleted file mode 100644
index 94869ab205..0000000000
--- a/java/common/src/main/java/org/apache/qpid/thread/DefaultThreadFactory.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package org.apache.qpid.thread;
-
-public class DefaultThreadFactory implements ThreadFactory
-{
-
- public Thread createThread(Runnable r)
- {
- return new Thread(r);
- }
-
- public Thread createThread(Runnable r, int priority)
- {
- Thread t = new Thread(r);
- t.setPriority(priority);
- return t;
- }
-
-}
diff --git a/java/common/src/main/java/org/apache/qpid/thread/RealtimeThreadFactory.java b/java/common/src/main/java/org/apache/qpid/thread/RealtimeThreadFactory.java
deleted file mode 100644
index b711f749f8..0000000000
--- a/java/common/src/main/java/org/apache/qpid/thread/RealtimeThreadFactory.java
+++ /dev/null
@@ -1,47 +0,0 @@
-package org.apache.qpid.thread;
-
-import java.lang.reflect.Constructor;
-
-public class RealtimeThreadFactory implements ThreadFactory
-{
- private Class threadClass;
- private Constructor threadConstructor;
- private Constructor priorityParameterConstructor;
- private int defaultRTThreadPriority = 20;
-
- public RealtimeThreadFactory() throws Exception
- {
- defaultRTThreadPriority = Integer.getInteger("qpid.rt_thread_priority",20);
- threadClass = Class.forName("javax.realtime.RealtimeThread");
-
- Class schedulingParametersClass = Class.forName("javax.realtime.SchedulingParameters");
- Class releaseParametersClass = Class.forName("javax.realtime.ReleaseParameters");
- Class memoryParametersClass = Class.forName("javax.realtime.MemoryParameters");
- Class memoryAreaClass = Class.forName("javax.realtime.MemoryArea");
- Class processingGroupParametersClass = Class.forName("javax.realtime.ProcessingGroupParameters");
-
- Class[] paramTypes = new Class[]{schedulingParametersClass,
- releaseParametersClass,
- memoryParametersClass,
- memoryAreaClass,
- processingGroupParametersClass,
- java.lang.Runnable.class};
-
- threadConstructor = threadClass.getConstructor(paramTypes);
-
- Class priorityParameterClass = Class.forName("javax.realtime.PriorityParameters");
- priorityParameterConstructor = priorityParameterClass.getConstructor(new Class[]{int.class});
- }
-
- public Thread createThread(Runnable r) throws Exception
- {
- return createThread(r,defaultRTThreadPriority);
- }
-
- public Thread createThread(Runnable r, int priority) throws Exception
- {
- Object priorityParams = priorityParameterConstructor.newInstance(priority);
- return (Thread)threadConstructor.newInstance(priorityParams,null,null,null,null,r);
- }
-
-}
diff --git a/java/common/src/main/java/org/apache/qpid/thread/ThreadFactory.java b/java/common/src/main/java/org/apache/qpid/thread/ThreadFactory.java
deleted file mode 100644
index f9bcabfa3d..0000000000
--- a/java/common/src/main/java/org/apache/qpid/thread/ThreadFactory.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package org.apache.qpid.thread;
-
-public interface ThreadFactory
-{
- public Thread createThread(Runnable r) throws Exception;
- public Thread createThread(Runnable r, int priority) throws Exception;
-}
diff --git a/java/common/src/main/java/org/apache/qpid/thread/Threading.java b/java/common/src/main/java/org/apache/qpid/thread/Threading.java
deleted file mode 100644
index 0fb113d22c..0000000000
--- a/java/common/src/main/java/org/apache/qpid/thread/Threading.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package org.apache.qpid.thread;
-
-public final class Threading
-{
- private static ThreadFactory threadFactory;
-
- static {
- try
- {
- Class threadFactoryClass =
- Class.forName(System.getProperty("qpid.thread_factory",
- "org.apache.qpid.thread.DefaultThreadFactory"));
-
- threadFactory = (ThreadFactory)threadFactoryClass.newInstance();
- }
- catch(Exception e)
- {
- throw new Error("Error occured while loading thread factory",e);
- }
- }
-
- public static ThreadFactory getThreadFactory()
- {
- return threadFactory;
- }
-}
diff --git a/java/common/src/main/java/org/apache/qpid/transport/network/io/IoReceiver.java b/java/common/src/main/java/org/apache/qpid/transport/network/io/IoReceiver.java
index b245e47336..5efd51d5db 100644
--- a/java/common/src/main/java/org/apache/qpid/transport/network/io/IoReceiver.java
+++ b/java/common/src/main/java/org/apache/qpid/transport/network/io/IoReceiver.java
@@ -20,7 +20,6 @@
*/
package org.apache.qpid.transport.network.io;
-import org.apache.qpid.thread.Threading;
import org.apache.qpid.transport.Receiver;
import org.apache.qpid.transport.TransportException;
import org.apache.qpid.transport.util.Logger;
@@ -36,7 +35,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
*
*/
-final class IoReceiver implements Runnable
+final class IoReceiver extends Thread
{
private static final Logger log = Logger.get(IoReceiver.class);
@@ -47,7 +46,6 @@ final class IoReceiver implements Runnable
private final Socket socket;
private final long timeout;
private final AtomicBoolean closed = new AtomicBoolean(false);
- private final Thread receiverThread;
public IoReceiver(IoTransport transport, Receiver<ByteBuffer> receiver,
int bufferSize, long timeout)
@@ -57,18 +55,10 @@ final class IoReceiver implements Runnable
this.bufferSize = bufferSize;
this.socket = transport.getSocket();
this.timeout = timeout;
-
- try
- {
- receiverThread = Threading.getThreadFactory().createThread(this);
- }
- catch(Exception e)
- {
- throw new Error("Error creating IOReceiver thread",e);
- }
- receiverThread.setDaemon(true);
- receiverThread.setName(String.format("IoReceiver - %s", socket.getRemoteSocketAddress()));
- receiverThread.start();
+
+ setDaemon(true);
+ setName(String.format("IoReceiver - %s", socket.getRemoteSocketAddress()));
+ start();
}
void close(boolean block)
@@ -85,10 +75,10 @@ final class IoReceiver implements Runnable
{
socket.shutdownInput();
}
- if (block && Thread.currentThread() != receiverThread)
+ if (block && Thread.currentThread() != this)
{
- receiverThread.join(timeout);
- if (receiverThread.isAlive())
+ join(timeout);
+ if (isAlive())
{
throw new TransportException("join timed out");
}
diff --git a/java/common/src/main/java/org/apache/qpid/transport/network/io/IoSender.java b/java/common/src/main/java/org/apache/qpid/transport/network/io/IoSender.java
index 29f0c766fc..36ea14856a 100644
--- a/java/common/src/main/java/org/apache/qpid/transport/network/io/IoSender.java
+++ b/java/common/src/main/java/org/apache/qpid/transport/network/io/IoSender.java
@@ -24,7 +24,6 @@ import java.net.Socket;
import java.nio.ByteBuffer;
import java.util.concurrent.atomic.AtomicBoolean;
-import org.apache.qpid.thread.Threading;
import org.apache.qpid.transport.Sender;
import org.apache.qpid.transport.SenderException;
import org.apache.qpid.transport.TransportException;
@@ -33,7 +32,7 @@ import org.apache.qpid.transport.util.Logger;
import static org.apache.qpid.transport.util.Functions.*;
-public final class IoSender implements Runnable, Sender<ByteBuffer>
+public final class IoSender extends Thread implements Sender<ByteBuffer>
{
private static final Logger log = Logger.get(IoSender.class);
@@ -55,8 +54,7 @@ public final class IoSender implements Runnable, Sender<ByteBuffer>
private final Object notFull = new Object();
private final Object notEmpty = new Object();
private final AtomicBoolean closed = new AtomicBoolean(false);
- private final Thread senderThread;
-
+
private volatile Throwable exception = null;
@@ -76,18 +74,9 @@ public final class IoSender implements Runnable, Sender<ByteBuffer>
throw new TransportException("Error getting output stream for socket", e);
}
- try
- {
- senderThread = Threading.getThreadFactory().createThread(this);
- }
- catch(Exception e)
- {
- throw new Error("Error creating IOSender thread",e);
- }
-
- senderThread.setDaemon(true);
- senderThread.setName(String.format("IoSender - %s", socket.getRemoteSocketAddress()));
- senderThread.start();
+ setDaemon(true);
+ setName(String.format("IoSender - %s", socket.getRemoteSocketAddress()));
+ start();
}
private static final int pof2(int n)
@@ -199,10 +188,10 @@ public final class IoSender implements Runnable, Sender<ByteBuffer>
try
{
- if (Thread.currentThread() != senderThread)
+ if (Thread.currentThread() != this)
{
- senderThread.join(timeout);
- if (senderThread.isAlive())
+ join(timeout);
+ if (isAlive())
{
throw new SenderException("join timed out");
}