Tibco RV Sample Listener

import org.apache.log4j.Logger;

import util.ConfigUtil;
import util.Constants;

import com.barcap.bondscape.monitor.PriceUpdateMonitor;
import com.tibco.tibrv.Tibrv;
import com.tibco.tibrv.TibrvDispatcher;
import com.tibco.tibrv.TibrvException;
import com.tibco.tibrv.TibrvListener;
import com.tibco.tibrv.TibrvMsg;
import com.tibco.tibrv.TibrvMsgCallback;
import com.tibco.tibrv.TibrvQueue;
import com.tibco.tibrv.TibrvRvdTransport;
import com.tibco.tibrv.TibrvTransport;


public class PriceListener implements TibrvMsgCallback, Constants
{
 Logger logger = Logger.getLogger(PriceListener.class);

 
 @Override
 public void onMsg(TibrvListener listener, TibrvMsg message)
 {
  try
  {
   if (message.get("ISIN") == null || message.get("RMDSSERVICE") == null || message.get("RICCODE") == null)
   {
    logger.error("ISIN or RMDSSERVICE or RICCODE is null");
    return;
   }
   String ricCode = message.get("ISIN").toString();
   String price = message.get("HOUSEPRICE").toString();
   logger.debug("ric:" + ricCode);
   logger.debug("housePrice:" + price);
  }
  catch (Exception e)
  {
   logger.error("exception while listening to prices" + e);
  }
 }
 
 public PriceListener()
 {
  String tibcoService = ConfigUtil.getValue(TIBCO_SERVICE);
  String tibcoNetwork = ConfigUtil.getValue(TIBCO_NETWORK);
  String tibcoDaemon = ConfigUtil.getValue(TIBCO_DAEMON);
  String tibcoSubject = ConfigUtil.getValue(TIBCO_SEND_SUBJECT);
  
  try
  {
   Tibrv.open(Tibrv.IMPL_NATIVE);
   TibrvTransport transport = new TibrvRvdTransport(tibcoService, tibcoNetwork, tibcoDaemon);
   TibrvQueue queue = new TibrvQueue();
   new TibrvListener(queue, this, transport, tibcoSubject, null);
   new TibrvDispatcher(queue);
   logger.debug("tibco rv connection successfully constructed!!");
  }
  catch (TibrvException e)
  {
   logger.error("Failed to start up price listener", e);
   System.exit(-1);
  }
 }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值