public void CreateConflictDataSet(IOI i, Order o) { DataSet newDataSet = this.rmsx.CreateDataSet("conflict_I" + i.field("id_value").Value() + "|O" + o.field("EMSX_SEQUENCE").value()); log("Creating DataSet: " + newDataSet.GetName()); newDataSet.AddDataPoint("ioiid", new IOIFieldDataPointSource(i, i.field("id_value"))); newDataSet.AddDataPoint("ioichange", new IOIFieldDataPointSource(i, i.field("change"))); newDataSet.AddDataPoint("ioiticker", new IOIFieldDataPointSource(i, i.field("ioi_instrument_stock_security_ticker"))); newDataSet.AddDataPoint("ioitype", new IOIFieldDataPointSource(i, i.field("ioi_instrument_type"))); newDataSet.AddDataPoint("ioigooduntil", new IOIFieldDataPointSource(i, i.field("ioi_goodUntil"))); newDataSet.AddDataPoint("ioibidquantity", new IOIFieldDataPointSource(i, i.field("ioi_bid_size_quantity"))); newDataSet.AddDataPoint("ioiofferquantity", new IOIFieldDataPointSource(i, i.field("ioi_offer_size_quantity"))); newDataSet.AddDataPoint("ioiroutingbroker", new IOIFieldDataPointSource(i, i.field("ioi_routing_broker"))); newDataSet.AddDataPoint("ioiisvalid", new GenericBooleanSource(false)); newDataSet.AddDataPoint("orderStatus", new EMSXFieldDataPointSource(o.field("EMSX_STATUS"))); newDataSet.AddDataPoint("orderNumber", new EMSXFieldDataPointSource(o.field("EMSX_SEQUENCE"))); newDataSet.AddDataPoint("orderWorking", new EMSXFieldDataPointSource(o.field("EMSX_WORKING"))); newDataSet.AddDataPoint("orderAmount", new EMSXFieldDataPointSource(o.field("EMSX_AMOUNT"))); newDataSet.AddDataPoint("orderIdleAmount", new EMSXFieldDataPointSource(o.field("EMSX_IDLE_AMOUNT"))); newDataSet.AddDataPoint("orderTicker", new EMSXFieldDataPointSource(o.field("EMSX_TICKER"))); newDataSet.AddDataPoint("orderSide", new EMSXFieldDataPointSource(o.field("EMSX_SIDE"))); newDataSet.AddDataPoint("orderAssetClass", new EMSXFieldDataPointSource(o.field("EMSX_ASSET_CLASS"))); newDataSet.AddDataPoint("orderisvalid", new GenericBooleanSource(false)); this.rmsx.GetRuleSet("AutoRouteFromIOI").Execute(newDataSet); }
internal IOIFieldDataPointSource(IOI i, IOIField field) { this.field = field; this.value = field.Value(); i.addNotificationHandler(this); }
internal IOIFieldDataPointSource(IOI i, IOIField field) { this.field = field; if (field != null) { this.value = field.Value(); i.addNotificationHandler(this); } else { this.value = ""; } }
public ActionResult Get(int id) { IOI ioi = work.IOI.FindById(id); if (ioi != null) { return(Ok(ioi)); } else { return(NotFound($"The IOI with the id: {id} was not found ")); } }
public void parseIOI(IOI i) { DataSet newDataSet = this.rmsx.CreateDataSet("DS_IOI_" + i.field("id_value").Value()); newDataSet.AddDataPoint("handle", new IOIFieldDataPointSource(i, i.field("id_value"))); newDataSet.AddDataPoint("change", new IOIFieldDataPointSource(i, i.field("change"))); newDataSet.AddDataPoint("ticker", new IOIFieldDataPointSource(i, i.field("ioi_instrument_stock_security_ticker"))); newDataSet.AddDataPoint("type", new IOIFieldDataPointSource(i, i.field("ioi_instrument_type"))); newDataSet.AddDataPoint("bid_quantity", new IOIFieldDataPointSource(i, i.field("ioi_bid_size_quantity"))); newDataSet.AddDataPoint("offer_quantity", new IOIFieldDataPointSource(i, i.field("ioi_offer_size_quantity"))); this.rmsx.GetRuleSet("IOI").Execute(newDataSet); }
public IOI Post([FromBody] IOI value) { try { value.Warranty = work.Warranty.FindById(value.WarrantyId); work.IOI.Add(value); work.Commit(); Response.StatusCode = StatusCodes.Status201Created; } catch (Exception) { Response.StatusCode = StatusCodes.Status400BadRequest; } return(value); }
//EasyIOI Notification public void ProcessNotification(IOINotification notification) { if (notification.category == IOINotification.NotificationCategory.IOIDATA && (notification.type == IOINotification.NotificationType.NEW)) { //Create conflict set with all current orders. IOI i = notification.GetIOI(); log(i.field("ioi_instrument_stock_security_ticker").Value()); log("Creating conflict set for IOI: " + i.field("id_value").Value().ToString()); foreach (Order o in emsx.orders) { CreateConflictDataSet(i, o); } } }
public static ReadDataServiceRequest BuildLogixReadDataRequest(string tagAddress, ushort number, out int requestSize) { byte[] newIOI = IOI.BuildIOI(tagAddress); int pathLen = newIOI.Length;// IOI.BuildIOI(null, tagAddress); ReadDataServiceRequest request = new ReadDataServiceRequest(); request.Service = (byte)ControlNetService.CIP_ReadData; request.PathSize = (byte)(pathLen / 2); byte[] path = new byte[pathLen]; Buffer.BlockCopy(newIOI, 0, path, 0, newIOI.Length); //IOI.BuildIOI(path, tagAddress); request.Path = path; request.Elements = number; requestSize = request.Size; return request; }
public static WriteDataServiceRequest BuildLogixWriteDataRequest(string tagAddress, ushort dataType, ushort elementCount, byte[] data, ushort structHandle = 0x0000) #endif { byte[] newIOI = IOI.BuildIOI(tagAddress); int pathLen = newIOI.Length; WriteDataServiceRequest request = new WriteDataServiceRequest(); request.Service = (byte)ControlNetService.CIP_WriteData; request.PathSize = (byte)(pathLen / 2); byte[] path = new byte[pathLen]; Buffer.BlockCopy(newIOI, 0, path, 0, newIOI.Length); request.Path = path; request.Elements = elementCount; request.DataType = dataType; request.StructHandle = structHandle; request.Data = data; return request; }
public ActionResult <IOI> Put(int id, [FromBody] IOI value) { IOI ioi = work.IOI.FindById(id); if (ioi != null) { ioi.DeliveryDeadline = value.DeliveryDeadline; ioi.PaymentDeadline = value.PaymentDeadline; ioi.WarrantyId = value.WarrantyId; work.Commit(); return(Ok(ioi)); } else { return(BadRequest()); } }
public static ReadDataServiceRequest BuildFragmentedReadDataRequest(string tagAddress, ushort number, uint offset, out int requestSize) { byte[] newIOI = IOI.BuildIOI(tagAddress); int pathLen = newIOI.Length;// IOI.BuildIOI(null, tagAddress); ReadDataServiceRequest request = new ReadDataServiceRequest(); request.Service = (byte)ControlNetService.CIP_ReadDataFragmented; request.PathSize = (byte)(pathLen / 2); request.IsFragmented = true; request.DataOffset = offset; byte[] path = new byte[pathLen]; Buffer.BlockCopy(newIOI, 0, path, 0, newIOI.Length); //IOI.BuildIOI(path, tagAddress); request.Path = path; request.Elements = number; requestSize = request.Size; return(request); }
public ActionResult Delete(int id) { IOI forRemoval = work.IOI.FindById(id); try { if (forRemoval != null) { work.IOI.Delete(forRemoval); work.Commit(); return(Ok()); } else { return(NotFound()); } } catch (Exception e) { return(BadRequest(e.Message)); } }
public static ReadDataServiceRequest BuildShortReadDataRequest(uint tagInstance, ushort number, ushort size, out int requestSize) { byte[] newIOI = IOI.BuildIOI(tagInstance); int pathLen = newIOI.Length; ReadDataServiceRequest request = new ReadDataServiceRequest(); request.Service = 0x4E;// (byte)ControlNetService.CIP_ReadData; request.PathSize = 0x03; byte[] path = new byte[] { 0x20, 0xB2, 0x25, 0x00, 0x21, 0x00 }; request.Path = path; request.Elements = number; byte[] addData = new byte[10 + newIOI.Length]; addData[0] = 0x02; addData[1] = 0x00; addData[2] = 0x01; addData[3] = 0x01; addData[4] = 0x01; addData[5] = (byte)(size & 0xFF); addData[6] = (byte)((size & 0xFF00) >> 8); addData[7] = 0x03; addData[8] = 0x20; addData[9] = 0x6B; Buffer.BlockCopy(newIOI, 0, addData, 10, newIOI.Length); request.AddtlData = addData; requestSize = request.Size; return request; }
public virtual void onMessage(IOI message, QuickFix.SessionID session) { throw new QuickFix.UnsupportedMessageType(); }
public void Delete(IOI item) { context.IOI.Remove(item); }
public void Add(IOI item) { context.IOI.Add(item); }