当前位置: 首页>>代码示例>>Java>>正文


Java BufferManagerReadStream类代码示例

本文整理汇总了Java中com.sun.corba.se.impl.encoding.BufferManagerReadStream的典型用法代码示例。如果您正苦于以下问题:Java BufferManagerReadStream类的具体用法?Java BufferManagerReadStream怎么用?Java BufferManagerReadStream使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


BufferManagerReadStream类属于com.sun.corba.se.impl.encoding包,在下文中一共展示了BufferManagerReadStream类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: newBufferManagerRead

import com.sun.corba.se.impl.encoding.BufferManagerReadStream; //导入依赖的package包/类
public static BufferManagerRead newBufferManagerRead(
        GIOPVersion version, byte encodingVersion, ORB orb) {

    // REVISIT - On the reading side, shouldn't we monitor the incoming
    // fragments on a given connection to determine what fragment size
    // they're using, then use that ourselves?

    if (encodingVersion != Message.CDR_ENC_VERSION) {
        return new BufferManagerReadGrow(orb);
    }

    switch (version.intValue())
    {
        case GIOPVersion.VERSION_1_0:
            return new BufferManagerReadGrow(orb);
        case GIOPVersion.VERSION_1_1:
        case GIOPVersion.VERSION_1_2:
            // The stream reader can handle fragmented and
            // non fragmented messages
            return new BufferManagerReadStream(orb);
        default:
            // REVISIT - what is appropriate?
            throw new INTERNAL("Unknown GIOP version: "
                               + version);
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:27,代码来源:BufferManagerFactory.java

示例2: signalExceptionToAllWaiters

import com.sun.corba.se.impl.encoding.BufferManagerReadStream; //导入依赖的package包/类
public void signalExceptionToAllWaiters(SystemException systemException)
{

    if (orb.transportDebugFlag) {
        dprint(".signalExceptionToAllWaiters: " + systemException);
    }

    OutCallDesc call;
    java.util.Enumeration e = out_calls.elements();
    while(e.hasMoreElements()) {
        call = (OutCallDesc) e.nextElement();

        synchronized(call.done){
            // anything waiting for BufferManagerRead's fragment queue
            // needs to be cancelled
            CorbaMessageMediator corbaMsgMediator =
                         (CorbaMessageMediator)call.messageMediator;
            CDRInputObject inputObject =
                       (CDRInputObject)corbaMsgMediator.getInputObject();
            // IMPORTANT: If inputObject is null, then no need to tell
            //            BufferManagerRead to cancel request processing.
            if (inputObject != null) {
                BufferManagerReadStream bufferManager =
                    (BufferManagerReadStream)inputObject.getBufferManager();
                int requestId = corbaMsgMediator.getRequestId();
                bufferManager.cancelProcessing(requestId);
            }
            call.inputObject = null;
            call.exception = systemException;
            call.done.notify();
        }
    }
}
 
开发者ID:aducode,项目名称:openjdk-source-code-learn,代码行数:34,代码来源:CorbaResponseWaitingRoomImpl.java

示例3: signalExceptionToAllWaiters

import com.sun.corba.se.impl.encoding.BufferManagerReadStream; //导入依赖的package包/类
public void signalExceptionToAllWaiters(SystemException systemException)
{

    if (orb.transportDebugFlag) {
        dprint(".signalExceptionToAllWaiters: " + systemException);
    }

    synchronized (out_calls) {
        if (orb.transportDebugFlag) {
            dprint(".signalExceptionToAllWaiters: out_calls size :" +
                   out_calls.size());
        }

        for (OutCallDesc call : out_calls.values()) {
            if (orb.transportDebugFlag) {
                dprint(".signalExceptionToAllWaiters: signaling " +
                        call);
            }
            synchronized(call.done) {
                try {
                    // anything waiting for BufferManagerRead's fragment queue
                    // needs to be cancelled
                    CorbaMessageMediator corbaMsgMediator =
                                 (CorbaMessageMediator)call.messageMediator;
                    CDRInputObject inputObject =
                               (CDRInputObject)corbaMsgMediator.getInputObject();
                    // IMPORTANT: If inputObject is null, then no need to tell
                    //            BufferManagerRead to cancel request processing.
                    if (inputObject != null) {
                        BufferManagerReadStream bufferManager =
                            (BufferManagerReadStream)inputObject.getBufferManager();
                        int requestId = corbaMsgMediator.getRequestId();
                        bufferManager.cancelProcessing(requestId);
                    }
                } catch (Exception e) {
                } finally {
                    // attempt to wake up waiting threads in all cases
                    call.inputObject = null;
                    call.exception = systemException;
                    call.done.notifyAll();
                }
            }
        }
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:46,代码来源:CorbaResponseWaitingRoomImpl.java


注:本文中的com.sun.corba.se.impl.encoding.BufferManagerReadStream类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。