本文整理汇总了Java中com.sun.corba.se.spi.transport.CorbaConnection.isPostInitialContexts方法的典型用法代码示例。如果您正苦于以下问题:Java CorbaConnection.isPostInitialContexts方法的具体用法?Java CorbaConnection.isPostInitialContexts怎么用?Java CorbaConnection.isPostInitialContexts使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.sun.corba.se.spi.transport.CorbaConnection
的用法示例。
在下文中一共展示了CorbaConnection.isPostInitialContexts方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: addServiceContexts
import com.sun.corba.se.spi.transport.CorbaConnection; //导入方法依赖的package包/类
protected void addServiceContexts(CorbaMessageMediator messageMediator)
{
ORB orb = (ORB)messageMediator.getBroker();
CorbaConnection c = (CorbaConnection) messageMediator.getConnection();
GIOPVersion giopVersion = messageMediator.getGIOPVersion();
ServiceContexts contexts = messageMediator.getRequestServiceContexts();
addCodeSetServiceContext(c, contexts, giopVersion);
// Add the RMI-IIOP max stream format version
// service context to every request. Once we have GIOP 1.3,
// we could skip it since we now support version 2, but
// probably safer to always send it.
contexts.put(MaxStreamFormatVersionServiceContext.singleton);
// ORBVersion servicecontext needs to be sent
ORBVersionServiceContext ovsc = new ORBVersionServiceContext(
ORBVersionFactory.getORBVersion() ) ;
contexts.put( ovsc ) ;
// NOTE : We only want to send the runtime context the first time
if ((c != null) && !c.isPostInitialContexts()) {
// Do not do c.setPostInitialContexts() here.
// If a client interceptor send_request does a ForwardRequest
// which ends up using the same connection then the service
// context would not be sent.
SendingContextServiceContext scsc =
new SendingContextServiceContext( orb.getFVDCodeBaseIOR() ) ; //d11638
contexts.put( scsc ) ;
}
}
示例2: addCodeSetServiceContext
import com.sun.corba.se.spi.transport.CorbaConnection; //导入方法依赖的package包/类
protected void addCodeSetServiceContext(CorbaConnection conn,
ServiceContexts ctxs,
GIOPVersion giopVersion) {
// REVISIT. OMG issue 3318 concerning sending the code set
// service context more than once was deemed too much for the
// RTF. Here's our strategy for the moment:
//
// Send it on every request (necessary in cases of fragmentation
// with multithreaded clients or when the first thing on a
// connection is a LocateRequest). Provide an ORB property
// to disable multiple sends.
//
// Note that the connection is null in the local case and no
// service context is included. We use the ORB provided
// encapsulation streams.
//
// Also, there will be no negotiation or service context
// in GIOP 1.0. ISO8859-1 is used for char/string, and
// wchar/wstring are illegal.
//
if (giopVersion.equals(GIOPVersion.V1_0) || conn == null)
return;
CodeSetComponentInfo.CodeSetContext codeSetCtx = null;
if (conn.getBroker().getORBData().alwaysSendCodeSetServiceContext() ||
!conn.isPostInitialContexts()) {
// Get the negotiated code sets (if any) out of the connection
codeSetCtx = conn.getCodeSetContext();
}
// Either we shouldn't send the code set service context, or
// for some reason, the connection doesn't have its code sets.
// Perhaps the server didn't include them in the IOR. Uses
// ISO8859-1 for char and makes wchar/wstring illegal.
if (codeSetCtx == null)
return;
CodeSetServiceContext cssc = new CodeSetServiceContext(codeSetCtx);
ctxs.put(cssc);
}
示例3: getServiceContextsForReply
import com.sun.corba.se.spi.transport.CorbaConnection; //导入方法依赖的package包/类
protected ServiceContexts getServiceContextsForReply(
CorbaMessageMediator messageMediator, ServiceContexts contexts)
{
CorbaConnection c = (CorbaConnection) messageMediator.getConnection();
if (((ORB)messageMediator.getBroker()).subcontractDebugFlag) {
dprint(".getServiceContextsForReply: "
+ opAndId(messageMediator)
+ ": " + c);
}
if (contexts == null) {
contexts = new ServiceContexts(((ORB)messageMediator.getBroker()));
}
// NOTE : We only want to send the runtime context the first time
if (c != null && !c.isPostInitialContexts()) {
c.setPostInitialContexts();
SendingContextServiceContext scsc =
new SendingContextServiceContext(
((ORB)messageMediator.getBroker()).getFVDCodeBaseIOR()) ;
if (contexts.get( scsc.getId() ) != null)
throw wrapper.duplicateSendingContextServiceContext() ;
contexts.put( scsc ) ;
if ( ((ORB)messageMediator.getBroker()).subcontractDebugFlag)
dprint(".getServiceContextsForReply: "
+ opAndId(messageMediator)
+ ": added SendingContextServiceContext" ) ;
}
// send ORBVersion servicecontext as part of the Reply
ORBVersionServiceContext ovsc
= new ORBVersionServiceContext(ORBVersionFactory.getORBVersion());
if (contexts.get( ovsc.getId() ) != null)
throw wrapper.duplicateOrbVersionServiceContext() ;
contexts.put( ovsc ) ;
if ( ((ORB)messageMediator.getBroker()).subcontractDebugFlag)
dprint(".getServiceContextsForReply: "
+ opAndId(messageMediator)
+ ": added ORB version service context");
return contexts;
}