EmaEncodeMapAllWithFieldList(mapEncS); map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.DELETE, mapEncS, permission)); map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.ADD, mapEncS, permission)); map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.ADD, mapEncS, permission)); map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.UPDATE, mapEncS, permission));
static void EmaEncodeMapAllWithFieldList( Map map) { // encoding order: SummaryData(with FieldList), // Buffer, FieldList-Delete, // Buffer, FieldList-Add, // Buffer, FieldList-Add, // Buffer, FieldList-Update, map.totalCountHint(5); map.keyFieldId(3426); FieldList flEnc = EmaFactory.createFieldList(); EmaEncodeFieldListAll(flEnc); map.summaryData(flEnc); ByteBuffer permission = ByteBuffer.wrap("PERMISSION DATA".getBytes()); //first entry //Delete Buffer ByteBuffer orderBuf =ByteBuffer.wrap("ABCD".getBytes()); flEnc.clear(); EmaEncodeFieldListAll(flEnc); map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.DELETE, flEnc, permission)); //second entry //Add FieldList map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.ADD, flEnc, permission)); //third entry //Add FieldList orderBuf =ByteBuffer.wrap("EFGHI".getBytes()); map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.ADD, flEnc, permission)); //fourth entry //Update FieldList orderBuf =ByteBuffer.wrap("JKLMNOP".getBytes()); map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.UPDATE, flEnc, permission)); }
static void EmaEncodeMapAllWithElementList( Map map) { // encoding order: SummaryData(with ElementList), // Buffer, ElementList-Delete, // Buffer,ElementList-Add, // Buffer,ElementList-Add, // Buffer,ElementList-Update, map.totalCountHint(5); map.keyFieldId(3426); ElementList elEnc = EmaFactory.createElementList(); EmaEncodeElementListAll(elEnc); map.summaryData(elEnc); ByteBuffer permission = ByteBuffer.wrap("PERMISSION DATA".getBytes());; //first entry //Delete Buffer ByteBuffer orderBuf =ByteBuffer.wrap("ABCD".getBytes()); elEnc.clear(); EmaEncodeElementListAll(elEnc); map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.DELETE, elEnc, permission)); //second entry //Add ElementList map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.ADD, elEnc, permission)); //third entry //Add ElementList orderBuf =ByteBuffer.wrap("EFGHI".getBytes()); map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.ADD, elEnc, permission)); //fourth entry //Update ElementList orderBuf =ByteBuffer.wrap("JKLMNOP".getBytes()); map.add(EmaFactory.createMapEntry().keyBuffer(orderBuf, MapEntry.MapAction.UPDATE, elEnc, permission)); }
static void EmaEncodeMapAllWithFieldListWithUtf8Key( Map map) { // encoding order: SummaryData(with FieldList), // UTF8, FieldList-Delete, // UTF8,FieldList-Add, // UTF8,FieldList-Add, // UTF8,FieldList-Update, map.totalCountHint(5); map.keyFieldId(3426); FieldList flEnc = EmaFactory.createFieldList(); EmaEncodeFieldListAll(flEnc); map.summaryData(flEnc); ByteBuffer permission = ByteBuffer.wrap("PERMISSION DATA".getBytes()); //first entry //Delete Buffer ByteBuffer orderBuf =ByteBuffer.wrap("ABC".getBytes()); flEnc.clear(); EmaEncodeFieldListAll(flEnc); map.add(EmaFactory.createMapEntry().keyUtf8(orderBuf, MapEntry.MapAction.DELETE, flEnc, permission)); //second entry //Add FieldList map.add(EmaFactory.createMapEntry().keyUtf8(orderBuf, MapEntry.MapAction.ADD, flEnc, permission)); //third entry //Add FieldList orderBuf =ByteBuffer.wrap("DEFGH".getBytes()); map.add(EmaFactory.createMapEntry().keyUtf8(orderBuf, MapEntry.MapAction.ADD, flEnc, permission)); //fourth entry //Update FieldList orderBuf =ByteBuffer.wrap("KLMNOPQRS".getBytes()); map.add(EmaFactory.createMapEntry().keyUtf8(orderBuf, MapEntry.MapAction.UPDATE, flEnc, permission)); }
fieldList.add(EmaFactory.createFieldEntry().rmtes(212, ByteBuffer.wrap("Market Maker".getBytes()))); map.add(EmaFactory.createMapEntry().keyAscii(appClient.OrderNr, MapEntry.MapAction.ADD, fieldList));
map.add(EmaFactory.createMapEntry().keyAscii(appClient.OrderNr, MapEntry.MapAction.UPDATE, entryLoad));
public void testFieldList_EncodeEMA_EmptyEncode() { TestUtilities.printTestHead("testFieldList_EncodeEMA_EmptyEncode", "Encode empty fieldlist on map entry, should not get exception"); FieldList fieldList = EmaFactory.createFieldList(); fieldList.info(1, 1); MapEntry mapEntry = EmaFactory.createMapEntry(); try { mapEntry.keyAscii(TestUtilities.KEY_ASCII, MapEntry.MapAction.ADD, fieldList); TestUtilities.checkResult( "EMA Error: empty FieldList - should not get expected exception", true); } catch(OmmException excp) { TestUtilities.checkResult( "Exception not expected (empty FieldList - exception) : " + excp.getMessage(), false); } }
void processUpdateServiceStatus( OmmProvider provider) { ElementList serviceState = EmaFactory.createElementList(); serviceState.add( EmaFactory.createElementEntry().uintValue( EmaRdm.ENAME_SVC_STATE, EmaRdm.SERVICE_DOWN )); FilterList filterList = EmaFactory.createFilterList(); filterList.add( EmaFactory.createFilterEntry().elementList( EmaRdm.SERVICE_STATE_ID, FilterEntry.FilterAction.UPDATE, serviceState ) ); Map map = EmaFactory.createMap(); map.add( EmaFactory.createMapEntry().keyUInt( 1, MapEntry.MapAction.UPDATE, filterList )); RefreshMsg refreshMsg = EmaFactory.createRefreshMsg(); provider.submit( refreshMsg.domainType( EmaRdm.MMT_DIRECTORY ). filter( EmaRdm.SERVICE_STATE_FILTER ). payload( map ).complete( true ), 0); // use 0 item handle to fanout to all subscribers }
public void testMapKeyTypeAndAddEntryKeyTypeMismatch_Encode() { TestUtilities.printTestHead("testMapKeyTypeAndAddEntryMismatch_Encode","Encode Map with mismatch key type"); try { Map map = EmaFactory.createMap(); map.keyFieldId(11).totalCountHint(3).keyType(DataType.DataTypes.INT); map.add(EmaFactory.createMapEntry().keyAscii("Key1", MapEntry.MapAction.ADD)); map.add(EmaFactory.createMapEntry().keyAscii("Key2", MapEntry.MapAction.ADD)); map.add(EmaFactory.createMapEntry().keyAscii("Key3", MapEntry.MapAction.ADD)); ElementList element = EmaFactory.createElementList(); element.add(EmaFactory.createElementEntry().map("1", map)); } catch( OmmException excp) { TestUtilities.checkResult( true, "Fails to encode with invalid key type - exception expected with text : " + excp.getMessage() ); TestUtilities.checkResult(excp.getMessage().equals("Attempt to add entry of ASCII_STRING while Map entry key is set to INT with keyType() method"), "Check exception message text"); return; } TestUtilities.checkResult( false, "Fails to encode with invalid key type - expect exception" ); }
void processUpdateGroupStatus( OmmProvider provider) { ElementList serviceGroupId = EmaFactory.createElementList(); serviceGroupId.add( EmaFactory.createElementEntry().buffer( EmaRdm.ENAME_GROUP, groupId )); serviceGroupId.add( EmaFactory.createElementEntry().state( EmaRdm.ENAME_STATUS, OmmState.StreamState.CLOSED_RECOVER, OmmState.DataState.SUSPECT, OmmState.StatusCode.NONE, "Group Status Msg" ) ); FilterList filterList = EmaFactory.createFilterList(); filterList.add( EmaFactory.createFilterEntry().elementList( EmaRdm.SERVICE_GROUP_ID, FilterEntry.FilterAction.SET, serviceGroupId ) ); Map map = EmaFactory.createMap(); map.add( EmaFactory.createMapEntry().keyUInt(1, MapEntry.MapAction.UPDATE, filterList)); provider.submit( EmaFactory.createUpdateMsg().domainType( EmaRdm.MMT_DIRECTORY ). filter( EmaRdm.SERVICE_GROUP_FILTER ). payload( map ), 0); // use 0 item handle to fanout to all subscribers }
permissionData.putInt(1213).flip(); mapEnc.add(EmaFactory.createMapEntry().keyDateTime(2021, 04, 05, 1, 2, 3, 4, 5, 6, MapEntry.MapAction.ADD)); mapEnc.add(EmaFactory.createMapEntry().keyDateTime(2022, 05, 06, 2, 3, 4, 5, 6, 7, MapEntry.MapAction.UPDATE, permissionData)); mapEnc.add(EmaFactory.createMapEntry().keyDateTime(2023, 06, 07, 3, 4, 5, 6, 7, 8, MapEntry.MapAction.DELETE));
BigInteger key3 = new BigInteger("345"); mapEnc.add(EmaFactory.createMapEntry().keyUInt(key1, MapEntry.MapAction.ADD)); mapEnc.add(EmaFactory.createMapEntry().keyUInt(key2, MapEntry.MapAction.UPDATE, permissionData)); mapEnc.add(EmaFactory.createMapEntry().keyUInt(key3, MapEntry.MapAction.DELETE));
map.add(EmaFactory.createMapEntry().keyAscii("Key1", MapEntry.MapAction.ADD)); TestUtilities.checkResult("Map.toString() == toString() not supported", map.toString().equals("\nDecoding of just encoded object in the same application is not supported\n"));
void processMarketByOrderRequest(ReqMsg reqMsg, OmmProviderEvent event) { Map map = EmaFactory.createMap(); FieldList summary = EmaFactory.createFieldList(); FieldList entryLoad = EmaFactory.createFieldList(); summary.add(EmaFactory.createFieldEntry().enumValue(15, 840)); summary.add(EmaFactory.createFieldEntry().enumValue(53, 1)); summary.add(EmaFactory.createFieldEntry().enumValue(3423, 1)); summary.add(EmaFactory.createFieldEntry().enumValue(1709, 2)); map.summaryData(summary); entryLoad.add(EmaFactory.createFieldEntry().realFromDouble(3427, 7.76, OmmReal.MagnitudeType.EXPONENT_NEG_2)); entryLoad.add(EmaFactory.createFieldEntry().realFromDouble(3429, 9600)); entryLoad.add(EmaFactory.createFieldEntry().enumValue(3428, 2)); entryLoad.add(EmaFactory.createFieldEntry().rmtes(212, ByteBuffer.wrap("Market Maker".getBytes()))); String OrderNr="100"; map.add(EmaFactory.createMapEntry().keyAscii(OrderNr, MapEntry.MapAction.ADD, entryLoad)); event.provider().submit( EmaFactory.createRefreshMsg().domainType(EmaRdm.MMT_MARKET_BY_ORDER). name(reqMsg.name()).serviceName(reqMsg.serviceName()).solicited(true). state(OmmState.StreamState.NON_STREAMING, OmmState.DataState.OK, OmmState.StatusCode.NONE, "Refresh Completed"). payload(map).complete(true), event.handle() ); }
entryLoad.add(EmaFactory.createFieldEntry().rmtes(3435, ByteBuffer.wrap("Market Maker".getBytes()))); map.add(EmaFactory.createMapEntry().keyAscii(OrderNr, MapEntry.MapAction.ADD, entryLoad));
map.summaryData(mapSummaryData); map.add(EmaFactory.createMapEntry().keyAscii(OrderNr, MapEntry.MapAction.ADD, entryData));
map.add(EmaFactory.createMapEntry().keyAscii("Key1", MapEntry.MapAction.ADD));
map.add(EmaFactory.createMapEntry().keyAscii("key", MapEntry.MapAction.ADD, vector));
map.add(EmaFactory.createMapEntry().keyAscii("key", MapEntry.MapAction.ADD, series));
void processDirectoryRequest(ReqMsg reqMsg, OmmProviderEvent event) { OmmArray capablities = EmaFactory.createOmmArray(); capablities.add(EmaFactory.createOmmArrayEntry().uintValue( EmaRdm.MMT_MARKET_PRICE)); capablities.add(EmaFactory.createOmmArrayEntry().uintValue( EmaRdm.MMT_MARKET_BY_PRICE)); OmmArray dictionaryUsed = EmaFactory.createOmmArray(); dictionaryUsed.add(EmaFactory.createOmmArrayEntry().ascii( "RWFFld")); dictionaryUsed.add(EmaFactory.createOmmArrayEntry().ascii( "RWFEnum")); ElementList serviceInfoId = EmaFactory.createElementList(); serviceInfoId.add( EmaFactory.createElementEntry().ascii(EmaRdm.ENAME_NAME, "DIRECT_FEED")); serviceInfoId.add( EmaFactory.createElementEntry().array(EmaRdm.ENAME_CAPABILITIES, capablities)); serviceInfoId.add( EmaFactory.createElementEntry().array(EmaRdm.ENAME_DICTIONARYS_USED, dictionaryUsed)); ElementList serviceStateId = EmaFactory.createElementList(); serviceStateId.add( EmaFactory.createElementEntry().uintValue(EmaRdm.ENAME_SVC_STATE, EmaRdm.SERVICE_UP)); FilterList filterList = EmaFactory.createFilterList(); filterList.add( EmaFactory.createFilterEntry().elementList(EmaRdm.SERVICE_INFO_ID, FilterEntry.FilterAction.SET, serviceInfoId) ); filterList.add( EmaFactory.createFilterEntry().elementList(EmaRdm.SERVICE_STATE_ID, FilterEntry.FilterAction.SET, serviceStateId)); Map map = EmaFactory.createMap(); map.add( EmaFactory.createMapEntry().keyUInt(2, MapEntry.MapAction.ADD, filterList)); RefreshMsg refreshMsg = EmaFactory.createRefreshMsg(); event.provider().submit( refreshMsg.domainType(EmaRdm.MMT_DIRECTORY).clearCache(true). filter( EmaRdm.SERVICE_INFO_FILTER | EmaRdm.SERVICE_STATE_FILTER). payload(map).solicited(true).complete(true), event.handle()); }