private void sendOrderCancelReject(String clOrdId, String origClOrdId, char cxlRejResponseTo) throws IOException { fix.prepare(txMessage, OrderCancelReject); txMessage.addField(OrderID).setString(UNKNOWN_ORDER_ID); txMessage.addField(ClOrdID).setString(clOrdId); txMessage.addField(OrigClOrdID).setString(origClOrdId); txMessage.addField(OrdStatus).setChar(OrdStatusValues.Rejected); txMessage.addField(CxlRejResponseTo).setChar(cxlRejResponseTo); txMessage.addField(CxlRejReason).setInt(CxlRejReasonValues.UnknownOrder); fix.send(txMessage); }
private void handleTooLowMsgSeqNum(FIXMessage message, FIXValue msgType, long msgSeqNum) throws IOException { if (msgType.length() != 1 || msgType.asChar() != SequenceReset) { FIXValue possDupFlag = message.valueOf(PossDupFlag); if (possDupFlag == null || !possDupFlag.asBoolean()) statusListener.tooLowMsgSeqNum(FIXConnection.this, msgSeqNum, rxMsgSeqNum); } }
private void handleResendRequest(FIXMessage message) throws IOException { FIXValue beginSeqNo = message.valueOf(BeginSeqNo); if (beginSeqNo == null) { sendReject(message.getMsgSeqNum(), RequiredTagMissing, "BeginSeqNo(7) not found"); return; } FIXValue endSeqNo = message.valueOf(EndSeqNo); if (endSeqNo == null) { sendReject(message.getMsgSeqNum(), RequiredTagMissing, "EndSeqNo(16) not found"); return; } sendSequenceReset(beginSeqNo, endSeqNo.asInt() + 1); }
private void handleTestRequest(FIXMessage message) throws IOException { FIXValue testReqId = message.valueOf(TestReqID); if (testReqId == null) { sendReject(message.getMsgSeqNum(), RequiredTagMissing, "TestReqID(112) not found"); return; } sendHeartbeat(testReqId); }
/** * Create a message container. * * @return a message container */ public FIXMessage create() { return new FIXMessage(config.getMaxFieldCount(), config.getFieldCapacity()); }
private void handleTooLowMsgSeqNum(FIXMessage message, FIXValue msgType, long msgSeqNum) throws IOException { if (msgType.length() != 1 || msgType.asChar() != SequenceReset) { FIXValue possDupFlag = message.valueOf(PossDupFlag); if (possDupFlag == null || possDupFlag.asChar() != 'Y') statusListener.tooLowMsgSeqNum(FIXConnection.this, msgSeqNum, rxMsgSeqNum); } }