void copyDirectoryRequest(DirectoryRequest directoryRequest) { if (directoryRequest != null) { if (_directoryRequest == null) { _directoryRequest = (DirectoryRequest)DirectoryMsgFactory.createMsg(); _directoryRequest.rdmMsgType(DirectoryMsgType.REQUEST); } directoryRequest.copy(_directoryRequest); } } }
sourceDirectoryReqInfo.chnl = chnl; sourceDirectoryReqInfo.isInUse = true; directoryRequest.copy(pStoredRequest); break;
@Override public int rdmDirectoryMsgCallback(RDMDirectoryMsgEvent event) { ReactorChannel reactorChannel = event.reactorChannel(); ProviderSession provSession = (ProviderSession)reactorChannel.userSpecObj(); DirectoryMsg directoryMsg = event.rdmDirectoryMsg(); switch (directoryMsg.rdmMsgType()) { case REQUEST: DirectoryRequest directoryRequest = (DirectoryRequest)directoryMsg; directoryRequest.copy(_directoryProvider.directoryRequest()); System.out.println("Received Source Directory Request"); // send source directory response _directoryProvider.sendRefreshReactor(provSession.clientChannelInfo(), event.errorInfo().error()); break; case CLOSE: System.out.println("Received Directory Close for streamId " + directoryMsg.streamId()); break; default: event.errorInfo().error().text("Received unhandled Source Directory msg type: " + event.msg().msgClass()); event.errorInfo().error().errorId(PerfToolsReturnCodes.FAILURE); } return ReactorCallbackReturnCodes.SUCCESS; }
@Test public void directoryRequestCopyTests() { DirectoryRequest reqMsg1 = (DirectoryRequest)DirectoryMsgFactory.createMsg(); reqMsg1.rdmMsgType(DirectoryMsgType.REQUEST); DirectoryRequest reqMsg2 = (DirectoryRequest)DirectoryMsgFactory.createMsg(); reqMsg2.rdmMsgType(DirectoryMsgType.REQUEST); System.out.println("DirectoryRequest copy tests..."); /* Parameter setup */ int streamId = -5; int serviceId = 1; int filter = 1; reqMsg1.clear(); reqMsg1.applyStreaming(); reqMsg1.rdmMsgType(DirectoryMsgType.REQUEST); reqMsg1.streamId(streamId); reqMsg1.filter(filter); reqMsg1.applyHasServiceId(); reqMsg1.serviceId(serviceId); int ret = reqMsg1.copy(reqMsg2); assertEquals(CodecReturnCodes.SUCCESS, ret); assertEquals(DirectoryMsgType.REQUEST, reqMsg2.rdmMsgType()); assertEquals(reqMsg1.flags(), reqMsg2.flags()); assertEquals(reqMsg1.checkStreaming(), reqMsg2.checkStreaming()); assertEquals(filter, reqMsg2.filter()); assertEquals(streamId, reqMsg2.streamId()); assertEquals(serviceId, reqMsg2.serviceId()); System.out.println("Done."); }
((DirectoryRequest)srcMsg).copy((DirectoryRequest)destMsg); break; case CLOSE: