public override void ProcessEvent(Event eventObj, BloombergSessionWrapper session) { Console.WriteLine("Processing SUBSCRIPTION_STATUS"); foreach (Message msg in eventObj) { var topic = (string)msg.CorrelationID.Object; Console.WriteLine(DateTime.Now.ToString("s") + ": " + topic + " - " + msg.MessageType); if (msg.HasElement(ReasonElementId)) { // This can occur on SubscriptionFailure. Element reason = msg.GetElement(ReasonElementId); Console.WriteLine("\t" + reason.GetElement(CategoryElementId).GetValueAsString() + ": " + reason.GetElement(DescriptionElementId).GetValueAsString()); } if (msg.HasElement(ExceptionElementId)) { // This can occur on SubscriptionStarted if at least // one field is good while the rest are bad. Element exceptions = msg.GetElement(ExceptionElementId); for (int i = 0; i < exceptions.NumValues; ++i) { Element exInfo = exceptions.GetValueAsElement(i); Element fieldId = exInfo.GetElement(FieldIdElementId); Element reason = exInfo.GetElement(ReasonElementId); Console.WriteLine("\t" + fieldId.GetValueAsString() + ": " + reason.GetElement(CategoryElementId).GetValueAsString()); } } Console.WriteLine(""); } }
protected override void RegisterEventHandlers(BloombergSessionWrapper wrapper) { var events = new List <Event.EventType> { Event.EventType.PARTIAL_RESPONSE, Event.EventType.RESPONSE }; wrapper.RegisterEventHandler <ReferenceDataEventHandler>(events); }
public override void ProcessEvent(Event eventObj, BloombergSessionWrapper session) { Console.WriteLine("Processor " + id + ": Processing " + eventObj.Type); foreach (Message msg in eventObj) { Console.WriteLine(DateTime.Now.ToString("s") + ": " + msg.MessageType + "\n"); } }
public override void ProcessEvent(Event eventObj, BloombergSessionWrapper session) { string messages = "--> inside the exception Handler i received this: "; foreach (Message message in eventObj) { messages += message + " "; } string file = Directory.GetCurrentDirectory() + "\\bb_session_error.log"; }
public override void ProcessEvent(Event eventObj, BloombergSessionWrapper session) { foreach (Message msg in eventObj) { ReferenceDataRequestInfo requestDescription = session.RequestDescriptions[msg.CorrelationID]; requestDescription.Response.SaveMessage(msg); if (requestDescription.Callback != null && eventObj.Type == Event.EventType.RESPONSE) { requestDescription.Callback(requestDescription.Response); } } }
public override void ProcessEvent(Event eventObj, BloombergSessionWrapper session) { foreach (Message msg in eventObj) { Element fields = msg.GetElement(FieldDataElementId); int numElements = fields.NumValues; PrintHeader(); for (int i = 0; i < numElements; i++) { PrintField(fields.GetValueAsElement(i)); } Console.WriteLine(); } }
private void CreateSession(DataService service) { if (SessionWrapper != null) { StopSession(); } SessionWrapper = new BloombergSessionWrapper(); SessionWrapper.PropertyChanged += SessionWrapperPropertyChanged; if (!StartSession()) { throw new SessionNotStartedException(); } SetDataService(service); RegisterEventHandlers(SessionWrapper); }
public override void ProcessEvent(Event eventObj, BloombergSessionWrapper session) { foreach (Message msg in eventObj) { var topic = (string)msg.CorrelationID.Object; foreach (Element field in msg.Elements) { if (field.IsNull) { continue; } // Assume all values are scalar. } } }
public abstract void ProcessEvent(Event eventObj, BloombergSessionWrapper session);
protected abstract void RegisterEventHandlers(BloombergSessionWrapper wrapper);