Package com.bloomberglp.blpapi

Examples of com.bloomberglp.blpapi.Message


      if (event == null) {
        return;
      }
      MessageIterator msgIter = event.messageIterator();
      while (msgIter.hasNext()) {
        Message msg = msgIter.next();
        String bbgUniqueId = msg.topicName();

        if (event.eventType() == Event.EventType.SUBSCRIPTION_DATA) {
          FudgeMsg eventAsFudgeMsg = BloombergDataUtils.parseElement(msg.asElement());
          liveDataReceived(bbgUniqueId, eventAsFudgeMsg);
          // REVIEW 2012-09-19 Andrew -- Why return? Might the event contain multiple messages?
          return;
        }
        s_logger.info("Got event {} {} {}", event.eventType(), bbgUniqueId, msg.asElement());

        if (event.eventType() == Event.EventType.SESSION_STATUS) {
          s_logger.info("SESSION_STATUS event received: {}", msg.messageType());
          if (msg.messageType().toString().equals("SessionTerminated")) {
            disconnect();
            terminate();
          }
        }
      }
View Full Code Here


      }
      //getLogger().debug("Got event of type {}", event.eventType());
      MessageIterator msgIter = event.messageIterator();
      CorrelationID realCID = null;
      while (msgIter.hasNext()) {
        Message msg = msgIter.next();
        if (event.eventType() == Event.EventType.SESSION_STATUS) {
          if (msg.messageType().toString().equals("SessionTerminated")) {
            getLogger().error("Session terminated");
            terminate();
            return;
          }
        }
       
        CorrelationID bbgCID = msg.correlationID();
        Element element = msg.asElement();
        getLogger().debug("got msg with cid={} msg.asElement={}", bbgCID, msg.asElement());
        if (bbgCID != null) {
          realCID = _correlationIDMap.get(bbgCID);
          if (realCID != null) {
            BlockingQueue<Element> messages = _correlationIDElementMap.get(realCID);
            if (messages == null) {
View Full Code Here

  private void processSubscriptionStatus(Event event, Session session) throws Exception {
    s_logger.debug("Processing SUBSCRIPTION_STATUS");
    MessageIterator msgIter = event.messageIterator();
    while (msgIter.hasNext()) {
      Message msg = msgIter.next();
      String topic = (String) msg.correlationID().object();
      s_logger.debug("{}: {} - {}", new Object[]{_dateFormat
          .format(Calendar.getInstance().getTime()), topic, msg.messageType()});
      if (msg.messageType().equals("SubscriptionTerminated")) {
        s_logger.warn("SubscriptionTerminated for {}", msg.correlationID().object());
        s_logger.warn("msg = {}", msg.toString());
      }

      if (msg.hasElement(REASON)) {
        // This can occur on SubscriptionFailure.
        Element reason = msg.getElement(REASON);
        s_logger.warn("{}: security={} category={} description={}",
            new Object[]{_dateFormat.format(Calendar.getInstance().getTime()), topic, reason.getElement(CATEGORY).getValueAsString(), reason.getElement(DESCRIPTION).getValueAsString()});
      }

      if (msg.hasElement(EXCEPTIONS)) {
        // This can occur on SubscriptionStarted if at least
        // one field is good while the rest are bad.
        Element exceptions = msg.getElement(EXCEPTIONS);
        for (int i = 0; i < exceptions.numValues(); ++i) {
          Element exInfo = exceptions.getValueAsElement(i);
          Element fieldId = exInfo.getElement(FIELD_ID);
          Element reason = exInfo.getElement(REASON);
          s_logger.warn("{}: security={} field={} category={}",
View Full Code Here

  private void processSubscriptionDataEvent(Event event, Session session) throws Exception {
    s_logger.debug("Processing SUBSCRIPTION_DATA");
    if (tickWriterIsAlive()) {
      MessageIterator msgIter = event.messageIterator();
      while (msgIter.hasNext()) {
        Message msg = msgIter.next();
        if (isValidMessage(msg)) {
          String securityDes = (String) msg.correlationID().object();
          MutableFudgeMsg tickMsg = s_fudgeContext.newMessage();
          Instant instant = Clock.systemUTC().instant();
          long epochMillis = instant.toEpochMilli();
          tickMsg.add(RECEIVED_TS_KEY, epochMillis);
          tickMsg.add(SECURITY_KEY, securityDes);
          tickMsg.add(FIELDS_KEY, BloombergDataUtils.parseElement(msg.asElement()));
          s_logger.debug("{}: {} - {}", new Object[]{_dateFormat
              .format(Calendar.getInstance().getTime()), securityDes, msg.messageType()});
          s_logger.debug("{}", msg.asElement());
          _allTicksQueue.put(tickMsg);
          s_logger.debug("singleQueueSize {}", _allTicksQueue.size());
        }
      }
    } else {
View Full Code Here

  private void processMiscEvents(Event event, Session session) throws Exception {
    s_logger.info("Processing {}", event.eventType());
    MessageIterator msgIter = event.messageIterator();
    while (msgIter.hasNext()) {
      Message msg = msgIter.next();
      s_logger.debug("{}: {}\n", _dateFormat
          .format(Calendar.getInstance().getTime()), msg.messageType());
    }
  }
View Full Code Here

TOP

Related Classes of com.bloomberglp.blpapi.Message

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.