/** * 加载备份MQ配置 * @throws EisException */ public AbstractServiceProvider(String alt) { this.config = CacheManager.getInstance().getConfig(); alt = alt + "."; MQParameter receive = new MQParameter(config.getProperty(alt + ConfigConstants.MQ_PROVIDER_RECV_IP), int.Parse(config.getProperty(alt + ConfigConstants.MQ_PROVIDER_RECV_PORT)), config.getProperty(alt + ConfigConstants.MQ_PROVIDER_RECV_CHANNEL), int.Parse(config.getProperty(alt + ConfigConstants.MQ_PROVIDER_RECV_CCSID)), config.getProperty(alt + ConfigConstants.MQ_PROVIDER_RECV_QMANAGER), config.getProperty(alt + ConfigConstants.MQ_PROVIDER_RECV_QUEUE)); receiveList.Add(receive); MQParameter send = new MQParameter(config.getProperty(alt + ConfigConstants.MQ_PROVIDER_SEND_IP), int.Parse(config.getProperty(alt + ConfigConstants.MQ_PROVIDER_SEND_PORT)), config.getProperty(alt + ConfigConstants.MQ_PROVIDER_SEND_CHANNEL), int.Parse(config.getProperty(alt + ConfigConstants.MQ_PROVIDER_SEND_CCSID)), config.getProperty(alt + ConfigConstants.MQ_PROVIDER_SEND_QMANAGER), config.getProperty(alt + ConfigConstants.MQ_PROVIDER_SEND_QUEUE)); sendList.Add(send); connectionPoolManager = new PoolableMQConnectionManager(sendList, receiveList, int.Parse(config.getProperty(ConfigConstants.MQ_PROVIDER_POOL_MAXNUM)), int.Parse(config.getProperty(ConfigConstants.MQ_PROVIDER_GETCONN_TIMEOUT))); ProviderShutDownHook.register(this); }
public MQPool(MQParameter sendQueue, MQParameter receiveQueue, int capacity, int initcount) { this.sendQueueList.Add(sendQueue); this.receiveQueueList.Add(receiveQueue); if (initcount < 0 || capacity < 1) { throw (new Exception("Invalid parameter!")); } _Connections = new ObjectPool(typeof(MQConnectionObject), this, initcount, capacity); }
/// <summary> /// ����Զ���string�� /// </summary> /// <param name="aName">����</param> /// <param name="aValue">ֵ</param> public void Add(string aName, string aValue) { if (aName.StartsWith(MQConst.JMS_FLAG)) throw new ArgumentException("�Զ����������(" + MQConst.JMS_FLAG + ")��ͷ"); foreach (MQParameter<string> list in _userDefined) { if (list.Name.Equals(aName)) { _userDefined.Remove(list); break; } } MQParameter<string> _param = new MQParameter<string>(aName, aValue); _userDefined.Add(_param); }
/** * @param sendQueue * @param receiveQueue * @param maxActive * max connection in pool * @param maxWait * max time to wait for a connection (second) */ public PoolableMQConnectionManager(MQParameter sendQueue, MQParameter receiveQueue, int maxActive, int maxWait) { this.sendQueueList.Add(sendQueue); this.receiveQueueList.Add(receiveQueue); this.pool = new ObjectPool(typeof(SOA.connection.mqcm.MQPool.MQConnectionObject), this, maxActive, maxWait); }
public AbstractServiceRequester() { LogUtil.Info(this, "AbstractServiceRequester init Start()"); this.config = CacheManager.getInstance().getConfig(); //加载主MQ队列管理器 MQParameter req = new MQParameter(config.getProperty(ConfigConstants.MQ_REQUESTER_REQ_IP), int.Parse(config.getProperty(ConfigConstants.MQ_REQUESTER_REQ_PORT)), config.getProperty(ConfigConstants.MQ_REQUESTER_REQ_CHANNEL), int.Parse(config.getProperty(ConfigConstants.MQ_REQUESTER_REQ_CCSID)), config.getProperty(ConfigConstants.MQ_REQUESTER_REQ_QMANAGER), config.getProperty(ConfigConstants.MQ_REQUESTER_REQ_QUEUE)); reqList.Add(req); MQParameter res = new MQParameter(config.getProperty(ConfigConstants.MQ_REQUESTER_RES_IP), int.Parse(config.getProperty(ConfigConstants.MQ_REQUESTER_RES_PORT)), config.getProperty(ConfigConstants.MQ_REQUESTER_RES_CHANNEL), int.Parse(config.getProperty(ConfigConstants.MQ_REQUESTER_RES_CCSID)), config.getProperty(ConfigConstants.MQ_REQUESTER_RES_QMANAGER), config.getProperty(ConfigConstants.MQ_REQUESTER_RES_QUEUE)); resList.Add(res); //加入对象池管理 connectionPoolManager = new MQPool( reqList, resList, int.Parse(config.getProperty(ConfigConstants.MQ_REQUESTER_POOL_MAXNUM)), int.Parse(config.getProperty(ConfigConstants.MQ_REQUESTER_GETCONN_TIMEOUT))); connectionPoolManagerList.Add(connectionPoolManager); //加载备用MQ队列管理器 String AltConfig = config.getProperty(ConfigConstants.ALTERNATIVE_REQUESTER_CONFIG); if (AltConfig != null && AltConfig.Trim() != "") { String[] AltConfigArr = AltConfig.Split(char.Parse(ConfigConstants.ALTERNATIVE_CONFIG_SPLIT)); for (int i = 0; i < AltConfigArr.Length; i++) { String alt = AltConfigArr[i] + "."; MQParameter req_t = new MQParameter(config.getProperty(alt + ConfigConstants.MQ_REQUESTER_REQ_IP), int.Parse(config.getProperty(alt + ConfigConstants.MQ_REQUESTER_REQ_PORT)), config.getProperty(alt + ConfigConstants.MQ_REQUESTER_REQ_CHANNEL), int.Parse(config.getProperty(alt + ConfigConstants.MQ_REQUESTER_REQ_CCSID)), config.getProperty(alt + ConfigConstants.MQ_REQUESTER_REQ_QMANAGER), config.getProperty(alt + ConfigConstants.MQ_REQUESTER_REQ_QUEUE)); List <MQParameter> reqList_t = new List <MQParameter>(); reqList_t.Add(req_t); MQParameter res_t = new MQParameter(config.getProperty(alt + ConfigConstants.MQ_REQUESTER_RES_IP), int.Parse(config.getProperty(alt + ConfigConstants.MQ_REQUESTER_RES_PORT)), config.getProperty(alt + ConfigConstants.MQ_REQUESTER_RES_CHANNEL), int.Parse(config.getProperty(alt + ConfigConstants.MQ_REQUESTER_RES_CCSID)), config.getProperty(alt + ConfigConstants.MQ_REQUESTER_RES_QMANAGER), config.getProperty(alt + ConfigConstants.MQ_REQUESTER_RES_QUEUE)); List <MQParameter> resList_t = new List <MQParameter>(); resList_t.Add(res_t); MQPool connectionPoolManager_t = new MQPool( reqList_t, resList_t, int.Parse(config.getProperty(ConfigConstants.MQ_REQUESTER_POOL_MAXNUM)), int.Parse(config.getProperty(ConfigConstants.MQ_REQUESTER_GETCONN_TIMEOUT))); connectionPoolManagerList.Add(connectionPoolManager_t); } } LogUtil.Info(this, "AbstractServiceRequester init End()"); }
/** * 加载主MQ配置 * @throws EisException */ public AbstractServiceProvider() { this.config = CacheManager.getInstance().getConfig(); // String AltConfig = config.getProperty(ConfigConstants.ALTERNATIVE_PROVIDER_CONFIG); // if (AltConfig == null){ // AltConfig = ""; // } // String[] AltConfigArr = AltConfig.split(ConfigConstants.ALTERNATIVE_CONFIG_SPLIT); // List<MQParameter> receiveList = new ArrayList<MQParameter>(); MQParameter receive = new MQParameter(config.getProperty(ConfigConstants.MQ_PROVIDER_RECV_IP), int.Parse(config.getProperty(ConfigConstants.MQ_PROVIDER_RECV_PORT)), config.getProperty(ConfigConstants.MQ_PROVIDER_RECV_CHANNEL), int.Parse(config.getProperty(ConfigConstants.MQ_PROVIDER_RECV_CCSID)), config.getProperty(ConfigConstants.MQ_PROVIDER_RECV_QMANAGER), config.getProperty(ConfigConstants.MQ_PROVIDER_RECV_QUEUE)); receiveList.Add(receive); // for (int i = 0; i < AltConfigArr.length; i++) { // String receiveAlt = AltConfigArr[i].trim(); // MQParameter receive_t = new MQParameter(config.getProperty(receiveAlt + ConfigConstants.MQ_PROVIDER_RECV_IP), // Integer.parseInt(config.getProperty(receiveAlt + ConfigConstants.MQ_PROVIDER_RECV_PORT)), // config.getProperty(receiveAlt + ConfigConstants.MQ_PROVIDER_RECV_CHANNEL), // Integer.parseInt(config.getProperty(receiveAlt + ConfigConstants.MQ_PROVIDER_RECV_CCSID)), // config.getProperty(receiveAlt + ConfigConstants.MQ_PROVIDER_RECV_QMANAGER), // config.getProperty(receiveAlt + ConfigConstants.MQ_PROVIDER_RECV_QUEUE)); // // receiveList.add(receive_t); // } // List<MQParameter> sendList = new ArrayList<MQParameter>(); MQParameter send = new MQParameter(config.getProperty(ConfigConstants.MQ_PROVIDER_SEND_IP), int.Parse(config.getProperty(ConfigConstants.MQ_PROVIDER_SEND_PORT)), config.getProperty(ConfigConstants.MQ_PROVIDER_SEND_CHANNEL), int.Parse(config.getProperty(ConfigConstants.MQ_PROVIDER_SEND_CCSID)), config.getProperty(ConfigConstants.MQ_PROVIDER_SEND_QMANAGER), config.getProperty(ConfigConstants.MQ_PROVIDER_SEND_QUEUE)); sendList.Add(send); // for (int i = 0; i < AltConfigArr.length; i++) { // String sendAlt = AltConfigArr[i].trim(); // MQParameter send_t = new MQParameter(config.getProperty(sendAlt + ConfigConstants.MQ_PROVIDER_SEND_IP), // Integer.parseInt(config.getProperty(sendAlt + ConfigConstants.MQ_PROVIDER_SEND_PORT)), // config.getProperty(sendAlt + ConfigConstants.MQ_PROVIDER_SEND_CHANNEL), // Integer.parseInt(config.getProperty(sendAlt + ConfigConstants.MQ_PROVIDER_SEND_CCSID)), // config.getProperty(sendAlt + ConfigConstants.MQ_PROVIDER_SEND_QMANAGER), // config.getProperty(sendAlt + ConfigConstants.MQ_PROVIDER_SEND_QUEUE)); // sendList.add(send_t); // } connectionPoolManager = new PoolableMQConnectionManager(sendList, receiveList, int.Parse(config.getProperty(ConfigConstants.MQ_PROVIDER_POOL_MAXNUM)), int.Parse(config.getProperty(ConfigConstants.MQ_PROVIDER_GETCONN_TIMEOUT))); ProviderShutDownHook.register(this); }