Tuesday, March 10, 2015

RequestCanceledException

com.sun.corba.se.impl.protocol.RequestCanceledException

RequestCanceledException is described in the javadoc comments as:

If this exception is caught explicitly, this need to be rethrown.

Where is this exception thrown?

Following, is a list of exception messages cross-referenced to the source code responsible for throwing them. Click on the method link to view the code and see how the exception is thrown.

How is this exception thrown?

The following sub-sections identify where this exception is thrown, and how (or why) the code is throwing the exception.

Any source code quoted in this section is subject to the Java Research License unless stated otherwise.

com.sun.corba.se.impl.encoding.BufferManagerReadStream.underflow(ByteBufferWithInfo)

public ByteBufferWithInfo underflow(ByteBufferWithInfo bbwi) {
    ByteBufferWithInfo result = null;
    try {
        synchronized (fragmentQueue) {
            if (receivedCancel) {
                throw new RequestCanceledException(cancelReqId);
            }
            while (fragmentQueue.size() == 0) {
                if (endOfStream) {
                    throw wrapper.endOfStream();
                }
                try {
                    fragmentQueue.wait();
                } catch (InterruptedException e) {
                }
                if (receivedCancel) {
                    throw new RequestCanceledException(cancelReqId);
                }
            }
            result = fragmentQueue.dequeue();
            result.fragmented = true;
            if (debug) {
                int bbAddr = System.identityHashCode(result.byteBuffer);
                StringBuffer sb1 = new StringBuffer(80);
                sb1.append('underflow() - dequeued ByteBuffer id (');
                sb1.append(bbAddr).append(') from fragment queue.');
                String msg1 = sb1.toString();
                dprint(msg1);
            }
            if (markEngaged == false && bbwi != null && bbwi.byteBuffer != null) {
                ByteBufferPool byteBufferPool = getByteBufferPool();
                if (debug) {
                    int bbAddress = System.identityHashCode(bbwi.byteBuffer);
                    StringBuffer sb = new StringBuffer(80);
                    sb.append('underflow() - releasing ByteBuffer id (');
                    sb.append(bbAddress).append(') to ByteBufferPool.');
                    String msg = sb.toString();
                    dprint(msg);
                }
                byteBufferPool.releaseByteBuffer(bbwi.byteBuffer);
                bbwi.byteBuffer = null;
                bbwi = null;
            }
        }
        return result;
    } finally {
    }
}

Source: "Java SE Downloads: Java SE 6 JDK Source Code", at: http://www.oracle.com/technetwork/java/javase/downloads/index.html

No comments:

Post a Comment