if (_dataIntegrity.type() != ClassesOfService.DataIntegrityTypes.BEST_EFFORT)
public TunnelStreamHandler() { // set the expected class of service for this provider (use defaults for common properties) _expectedClassOfService.authentication().type(ClassesOfService.AuthenticationTypes.OMM_LOGIN); _expectedClassOfService.flowControl().type(ClassesOfService.FlowControlTypes.BIDIRECTIONAL); _expectedClassOfService.dataIntegrity().type(ClassesOfService.DataIntegrityTypes.RELIABLE); }
private boolean isClassOfServiceValid(ClassOfService classOfService) { return (classOfService.common().maxMsgSize() == _expectedClassOfService.common().maxMsgSize() && classOfService.common().protocolType() == _expectedClassOfService.common().protocolType() && classOfService.common().protocolMajorVersion() == _expectedClassOfService.common().protocolMajorVersion() && classOfService.common().protocolMinorVersion() == _expectedClassOfService.common().protocolMinorVersion() && (classOfService.authentication().type() == _expectedClassOfService.authentication().type() || classOfService.authentication().type() == ClassesOfService.AuthenticationTypes.NOT_REQUIRED) && classOfService.flowControl().type() == _expectedClassOfService.flowControl().type() && classOfService.dataIntegrity().type() == _expectedClassOfService.dataIntegrity().type() && classOfService.guarantee().type() == _expectedClassOfService.guarantee().type()); }
_tunnelStreamOpenOptions.name("BasicTunnelStream"); _tunnelStreamOpenOptions.classOfService().flowControl().type(ClassesOfService.FlowControlTypes.BIDIRECTIONAL); _tunnelStreamOpenOptions.classOfService().dataIntegrity().type(ClassesOfService.DataIntegrityTypes.RELIABLE); _tunnelStreamOpenOptions.streamId(TUNNEL_STREAM_STREAM_ID); _tunnelStreamOpenOptions.domainType(_tunnelDomain);
public int openStream(ChannelInfo chnlInfo, ReactorErrorInfo errorInfo) { int ret; _serviceId = chnlInfo.tsServiceInfo.serviceId(); _tunnelStreamOpenOptions.clear(); _tunnelStreamOpenOptions.name("BasicTunnelStream"); _tunnelStreamOpenOptions.classOfService().flowControl().type(ClassesOfService.FlowControlTypes.BIDIRECTIONAL); _tunnelStreamOpenOptions.classOfService().dataIntegrity().type(ClassesOfService.DataIntegrityTypes.RELIABLE); _tunnelStreamOpenOptions.streamId(TUNNEL_STREAM_STREAM_ID); _tunnelStreamOpenOptions.domainType(_tunnelDomain); _tunnelStreamOpenOptions.serviceId(_serviceId); _tunnelStreamOpenOptions.defaultMsgCallback(this); _tunnelStreamOpenOptions.statusEventCallback(this); if (_tunnelAuth) _tunnelStreamOpenOptions.classOfService().authentication().type(ClassesOfService.AuthenticationTypes.OMM_LOGIN); if ((ret = chnlInfo.reactorChannel.openTunnelStream(_tunnelStreamOpenOptions, errorInfo)) != ReactorReturnCodes.SUCCESS) { System.out.println("ReactorChannel.openTunnelStream() failed: " + CodecReturnCodes.toString(ret) + "(" + errorInfo.error().text() + ")"); } chnlInfo.tunnelStreamOpenSent = true; _chnlInfo = chnlInfo; return ReactorReturnCodes.SUCCESS; }
tsOpenOptions.classOfService().dataIntegrity().type(cos.dataIntegrity().type());
_tunnelStreamAcceptOptions.classOfService().dataIntegrity().type(ClassesOfService.DataIntegrityTypes.RELIABLE); _tunnelStreamAcceptOptions.classOfService().flowControl().type((ClassesOfService.FlowControlTypes.BIDIRECTIONAL));
case ClassesOfService.FilterIds.DATA_INTEGRITY: _tempUInt.decode(_dIter); _dataIntegrity.type((int)_tempUInt.toLong()); break; case ClassesOfService.FilterIds.GUARANTEE:
@Override public int listenerCallback(TunnelStreamRequestEvent event) { super.listenerCallback(event); /* Accept the tunnel stream request. */ _acceptOpts.clear(); _acceptOpts.statusEventCallback(this); _acceptOpts.defaultMsgCallback(this); _acceptOpts.classOfService().common().maxMsgSize(_maxMsgSize); _acceptOpts.classOfService().dataIntegrity().type(DataIntegrityTypes.RELIABLE); _acceptOpts.classOfService().flowControl().type(FlowControlTypes.BIDIRECTIONAL); _acceptOpts.classOfService().authentication().type(event.classOfService().authentication().type()); assertEquals(ReactorReturnCodes.SUCCESS, reactorChannel().acceptTunnelStream(event, _acceptOpts, _errorInfo)); return ReactorReturnCodes.SUCCESS; }
if (_dataIntegrity.type() != ClassesOfService.DataIntegrityTypes.RELIABLE)
/** This provider always rejects tunnel streams. */ class TunnelStreamRejectProvider extends Provider { TunnelStreamRejectOptions _rejectOptions = ReactorFactory.createTunnelStreamRejectOptions(); public TunnelStreamRejectProvider(TestReactor reactor) { super(reactor); } @Override public int listenerCallback(TunnelStreamRequestEvent event) { super.listenerCallback(event); /* Accept the tunnel stream request. */ _rejectOptions.clear(); _rejectOptions.state().streamState(StreamStates.CLOSED); _rejectOptions.state().dataState(DataStates.SUSPECT); _rejectOptions.state().code(StateCodes.NOT_ENTITLED); assertEquals(ReactorReturnCodes.SUCCESS, reactorChannel().rejectTunnelStream(event, _rejectOptions, _errorInfo)); return ReactorReturnCodes.SUCCESS; } }
tsOpenOpts.queueMsgCallback(consumer); tsOpenOpts.defaultMsgCallback(consumer); tsOpenOpts.classOfService().dataIntegrity().type(DataIntegrityTypes.RELIABLE); tsOpenOpts.streamId(5); tsOpenOpts.serviceId(Provider.defaultService().serviceId());
tsOpenOpts.queueMsgCallback(consumer); tsOpenOpts.defaultMsgCallback(consumer); tsOpenOpts.classOfService().dataIntegrity().type(DataIntegrityTypes.RELIABLE); tsOpenOpts.streamId(5); tsOpenOpts.serviceId(Provider.defaultService().serviceId());
tsOpenOpts.queueMsgCallback(this); tsOpenOpts.defaultMsgCallback(this); tsOpenOpts.classOfService().dataIntegrity().type(DataIntegrityTypes.RELIABLE); tsOpenOpts.classOfService().flowControl().type(FlowControlTypes.BIDIRECTIONAL); tsOpenOpts.classOfService().guarantee().type(GuaranteeTypes.PERSISTENT_QUEUE);
tsOpenOpts.queueMsgCallback(consumer); tsOpenOpts.defaultMsgCallback(consumer); tsOpenOpts.classOfService().dataIntegrity().type(DataIntegrityTypes.RELIABLE); tsOpenOpts.streamId(5); tsOpenOpts.serviceId(Provider.defaultService().serviceId()); tsOpenOpts.queueMsgCallback(consumer); tsOpenOpts.defaultMsgCallback(consumer); tsOpenOpts.classOfService().dataIntegrity().type(DataIntegrityTypes.RELIABLE); tsOpenOpts.streamId(5); tsOpenOpts.serviceId(Provider.defaultService().serviceId());
tsOpenOpts.queueMsgCallback(consumer); tsOpenOpts.defaultMsgCallback(consumer); tsOpenOpts.classOfService().dataIntegrity().type(DataIntegrityTypes.RELIABLE); tsOpenOpts.streamId(5); tsOpenOpts.serviceId(Provider.defaultService().serviceId()); assertEquals(TunnelStream.DEFAULT_RECV_WINDOW, consTunnelStream.classOfService().flowControl().sendWindowSize()); assertEquals(TunnelStream.DEFAULT_RECV_WINDOW, consTunnelStream.classOfService().flowControl().recvWindowSize()); assertEquals(DataIntegrityTypes.RELIABLE, consTunnelStream.classOfService().dataIntegrity().type()); assertEquals(GuaranteeTypes.NONE, consTunnelStream.classOfService().guarantee().type()); assertEquals(CosCommon.DEFAULT_MAX_FRAGMENT_SIZE, provTunnelStream.classOfService().flowControl().sendWindowSize()); assertEquals(TunnelStream.DEFAULT_RECV_WINDOW, provTunnelStream.classOfService().flowControl().recvWindowSize()); assertEquals(DataIntegrityTypes.RELIABLE, provTunnelStream.classOfService().dataIntegrity().type()); assertEquals(GuaranteeTypes.NONE, provTunnelStream.classOfService().guarantee().type());
tsOpenOpts.queueMsgCallback(consumer); tsOpenOpts.defaultMsgCallback(consumer); tsOpenOpts.classOfService().dataIntegrity().type(DataIntegrityTypes.RELIABLE); tsOpenOpts.streamId(5); tsOpenOpts.serviceId(Provider.defaultService().serviceId());
tsOpenOpts.queueMsgCallback(consumer); tsOpenOpts.defaultMsgCallback(consumer); tsOpenOpts.classOfService().dataIntegrity().type(DataIntegrityTypes.RELIABLE); tsOpenOpts.streamId(5); tsOpenOpts.serviceId(Provider.defaultService().serviceId());
tsOpenOpts.queueMsgCallback(consumer); tsOpenOpts.defaultMsgCallback(consumer); tsOpenOpts.classOfService().dataIntegrity().type(DataIntegrityTypes.RELIABLE); tsOpenOpts.streamId(5); tsOpenOpts.serviceId(Provider.defaultService().serviceId()); assertEquals(TunnelStream.DEFAULT_RECV_WINDOW, consTunnelStream.classOfService().flowControl().sendWindowSize()); assertEquals(TunnelStream.DEFAULT_RECV_WINDOW, consTunnelStream.classOfService().flowControl().recvWindowSize()); assertEquals(DataIntegrityTypes.RELIABLE, consTunnelStream.classOfService().dataIntegrity().type()); assertEquals(GuaranteeTypes.NONE, consTunnelStream.classOfService().guarantee().type()); assertEquals(provTunnelStream.classOfService().common().maxFragmentSize(), provTunnelStream.classOfService().flowControl().sendWindowSize()); assertEquals(TunnelStream.DEFAULT_RECV_WINDOW, provTunnelStream.classOfService().flowControl().recvWindowSize()); assertEquals(DataIntegrityTypes.RELIABLE, provTunnelStream.classOfService().dataIntegrity().type()); assertEquals(GuaranteeTypes.NONE, provTunnelStream.classOfService().guarantee().type());