public void onClose(ReqMsg reqMsg, OmmProviderEvent event){ // sanity checking if (itemHandles.containsKey(event.clientHandle()) == false) { System.out.println("did not find client " + event.clientHandle() + " in itemHandles"); return; } if (reqMsg.domainType() == EmaRdm.MMT_LOGIN) { // removing client System.out.println("removing client " + event.clientHandle()); itemHandles.remove(event.clientHandle()); } else if (reqMsg.domainType() == EmaRdm.MMT_MARKET_PRICE) { // removing item System.out.println("removing item " + event.handle() + " from client " + event.clientHandle()); ArrayList<Long> tmp = itemHandles.get((Long)event.clientHandle()); if (tmp == null) { System.out.println("client " + event.clientHandle() + " had no items"); return; } tmp.remove((Long)event.handle()); itemHandles.put((Long)event.clientHandle(), tmp); } System.out.println("channel info for close event:\n\t" + event.channelInformation()); }
void processLoginRequest(ReqMsg reqMsg, OmmProviderEvent event) { event.provider().submit( EmaFactory.createRefreshMsg().domainType(EmaRdm.MMT_LOGIN).name(reqMsg.name()). nameType(EmaRdm.USER_NAME).complete(true).solicited(true). state(OmmState.StreamState.OPEN, OmmState.DataState.OK, OmmState.StatusCode.NONE, "Login accepted"), event.handle() ); if (itemHandles.containsKey((Long)event.clientHandle()) == true) System.out.println("map already contains an element with handle" + event.clientHandle()); else { itemHandles.put((Long)(event.clientHandle()), new ArrayList<Long>()); System.out.println("added client " + event.clientHandle()); } System.out.println("channel info for login event:\n\t" + event.channelInformation()); }
void processMarketPriceRequest(ReqMsg reqMsg, OmmProviderEvent event) { FieldList fieldList = EmaFactory.createFieldList(); fieldList.add( EmaFactory.createFieldEntry().real(22, 3990, OmmReal.MagnitudeType.EXPONENT_NEG_2)); fieldList.add( EmaFactory.createFieldEntry().real(25, 3994, OmmReal.MagnitudeType.EXPONENT_NEG_2)); fieldList.add( EmaFactory.createFieldEntry().real(30, 9, OmmReal.MagnitudeType.EXPONENT_0)); fieldList.add( EmaFactory.createFieldEntry().real(31, 19, OmmReal.MagnitudeType.EXPONENT_0)); event.provider().submit( EmaFactory.createRefreshMsg().name(reqMsg.name()).serviceId(reqMsg.serviceId()).solicited(true). state(OmmState.StreamState.OPEN, OmmState.DataState.OK, OmmState.StatusCode.NONE, "Refresh Completed"). payload(fieldList).complete(true), event.handle() ); ArrayList<Long> handles = itemHandles.get(event.clientHandle()); if (handles == null) { System.out.println("did not find client in itemHandles for processMarketPriceRequest"); return; } handles.add(event.handle()); itemHandles.put(event.clientHandle(), handles); System.out.println("added item " + event.handle() + " to client " + event.clientHandle()); System.out.println("channel info for market price request event:\n\t" + event.channelInformation()); }