亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? pooledspringxasession.java

?? Jencks是一個輕量級的JCA容器。它可以輕松部署到Spring中以提供消息驅動的POJOs.此外Jencks通過使用類似于JMS,JAX-RPC,JBI與JCA CCI的API來提供對inboun
?? JAVA
字號:
/**  * Licensed under the Apache License, Version 2.0 (the "License");  * you may not use this file except in compliance with the License.  * You may obtain a copy of the License at  *  * http://www.apache.org/licenses/LICENSE-2.0 *  * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS,  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  * See the License for the specific language governing permissions and  * limitations under the License.  *  **/package org.jencks.pool;import java.io.Serializable;import javax.jms.XASession;import javax.jms.TopicSession;import javax.jms.QueueSession;import javax.jms.JMSException;import javax.jms.BytesMessage;import javax.jms.MapMessage;import javax.jms.Message;import javax.jms.ObjectMessage;import javax.jms.Queue;import javax.jms.StreamMessage;import javax.jms.TemporaryQueue;import javax.jms.TemporaryTopic;import javax.jms.TextMessage;import javax.jms.Topic;import javax.jms.QueueBrowser;import javax.jms.MessageConsumer;import javax.jms.Destination;import javax.jms.TopicSubscriber;import javax.jms.MessageListener;import javax.jms.QueueReceiver;import javax.jms.MessageProducer;import javax.jms.QueueSender;import javax.jms.TopicPublisher;import javax.jms.Session;import javax.transaction.xa.XAResource;import org.apache.commons.pool.ObjectPool;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;public class PooledSpringXASession implements TopicSession, QueueSession, XASession{  private static final Log log = LogFactory.getLog(PooledSpringXASession.class);    private XASession session;  private ObjectPool sessionPool;  private MessageProducer messageProducer;  private QueueSender queueSender;  private TopicPublisher topicPublisher;  private boolean ignoreClose;  public PooledSpringXASession(final XASession session, final ObjectPool sessionPool)  {    this.session = session;    this.sessionPool = sessionPool;    this.ignoreClose = false;  }  public boolean getIgnoreClose()  {    return this.ignoreClose;  }  public void setIgnoreClose(final boolean ignoreClose)  {    this.ignoreClose = ignoreClose;  }  /**   * If the Session goes into an unstable (unusable) state, then we want to   * close it down and permanently remove it from the pool.   */  public void destroyAndRemoveFromPool()  {    try {      sessionPool.invalidateObject(this);    } catch (Throwable t) {      log.warn("Unable to remove invalidated JMS Session from the pool due to the following exception.  Will ignore the exception and continue.", t);    }  }  public void close() throws JMSException  {    if(log.isDebugEnabled()) log.debug("---->>>>> PooledSpringXASession.close() called");    // If we are associated with a transaction, then we will let    // PooledSpringXAConnection's transaction synchronization handle closing    // us at the end of the transaction.    if(!getIgnoreClose()) {      if(log.isDebugEnabled()) log.debug("---->>>>> ignoreClose = false, so returning session pool...");      // TODO a cleaner way to reset??      // lets reset the session      getActualSession().setMessageListener(null);      try {        sessionPool.returnObject(this);      }      catch (Exception e) {        final JMSException jmsException = new JMSException("Failed to return session to pool: " + e);        jmsException.initCause(e);        throw jmsException;      }    } else if(log.isDebugEnabled()) {      log.debug("---->>>>> ignoreClose IS TRUE!  KEEPING SESSION OPEN!");    }  }  public void commit() throws JMSException  {    throw new JMSException("Cannot commit() inside XASession");  }  public BytesMessage createBytesMessage() throws JMSException  {    return getActualSession().createBytesMessage();  }  public MapMessage createMapMessage() throws JMSException  {    return getActualSession().createMapMessage();  }  public Message createMessage() throws JMSException  {    return getActualSession().createMessage();  }  public ObjectMessage createObjectMessage() throws JMSException  {    return getActualSession().createObjectMessage();  }  public ObjectMessage createObjectMessage(Serializable serializable)      throws JMSException  {    return getActualSession().createObjectMessage(serializable);  }  public Queue createQueue(String s) throws JMSException  {    return getActualSession().createQueue(s);  }  public StreamMessage createStreamMessage() throws JMSException  {    return getActualSession().createStreamMessage();  }  public TemporaryQueue createTemporaryQueue() throws JMSException  {    return getActualSession().createTemporaryQueue();  }  public TemporaryTopic createTemporaryTopic() throws JMSException  {    return getActualSession().createTemporaryTopic();  }  public void unsubscribe(String s) throws JMSException  {    getActualSession().unsubscribe(s);  }  public TextMessage createTextMessage() throws JMSException  {    return getActualSession().createTextMessage();  }  public TextMessage createTextMessage(String s) throws JMSException  {    return getActualSession().createTextMessage(s);  }  public Topic createTopic(String s) throws JMSException  {    return getActualSession().createTopic(s);  }  public int getAcknowledgeMode() throws JMSException  {    return getActualSession().getAcknowledgeMode();  }  public boolean getTransacted() throws JMSException  {    return true;  }  public void recover() throws JMSException  {    getActualSession().recover();  }  public void rollback() throws JMSException  {    throw new JMSException("Cannot rollback() inside XASession");  }  public void run()  {    if (session != null) {      session.run();    }  }  public XAResource getXAResource()  {    try {      return getActualSession().getXAResource();    } catch(Exception e) {      throw new RuntimeException(e);    }  }  public Session getSession() throws JMSException  {    return this;  }  // Consumer related methods  //-------------------------------------------------------------------------  public QueueBrowser createBrowser(Queue queue) throws JMSException  {    return getActualSession().createBrowser(queue);  }  public QueueBrowser createBrowser(Queue queue, String selector)      throws JMSException  {    return getActualSession().createBrowser(queue, selector);  }  public MessageConsumer createConsumer(Destination destination)      throws JMSException  {    return getActualSession().createConsumer(destination);  }  public MessageConsumer createConsumer(Destination destination,                                        String selector) throws JMSException  {    return getActualSession().createConsumer(destination, selector);  }  public MessageConsumer createConsumer(Destination destination,                                        String selector, boolean noLocal)      throws JMSException  {    return getActualSession().createConsumer(destination, selector, noLocal);  }  public TopicSubscriber createDurableSubscriber(Topic topic, String selector)      throws JMSException  {    return getActualSession().createDurableSubscriber(topic, selector);  }  public TopicSubscriber createDurableSubscriber(Topic topic, String name,                                                 String selector,                                                 boolean noLocal)      throws JMSException  {    return getActualSession().createDurableSubscriber(topic, name, selector, noLocal);  }  public MessageListener getMessageListener() throws JMSException  {    return getActualSession().getMessageListener();  }  public void setMessageListener(MessageListener messageListener)      throws JMSException  {    getActualSession().setMessageListener(messageListener);  }  public TopicSubscriber createSubscriber(Topic topic) throws JMSException  {    return ((TopicSession)getActualSession()).createSubscriber(topic);  }  public TopicSubscriber createSubscriber(Topic topic, String selector,                                          boolean local) throws JMSException  {    return ((TopicSession)getActualSession()).createSubscriber(topic, selector, local);  }  public QueueReceiver createReceiver(Queue queue) throws JMSException  {    return ((QueueSession)getActualSession()).createReceiver(queue);  }  public QueueReceiver createReceiver(Queue queue, String selector)      throws JMSException  {    return ((QueueSession)getActualSession()).createReceiver(queue, selector);  }  // Producer related methods  //-------------------------------------------------------------------------  public MessageProducer createProducer(Destination destination)      throws JMSException  {    return new PooledProducer(getMessageProducer(), destination);  }  public QueueSender createSender(Queue queue) throws JMSException  {    return new PooledQueueSender(getQueueSender(), queue);  }  public TopicPublisher createPublisher(Topic topic) throws JMSException  {    return new PooledTopicPublisher(getTopicPublisher(), topic);  }  // Implementation methods  //-------------------------------------------------------------------------  public XASession getActualSession() throws JMSException  {    if (this.session == null) {      throw new JMSException("The session has already been closed");    }    return this.session;  }  public MessageProducer getMessageProducer() throws JMSException  {    if (this.messageProducer == null) {      this.messageProducer = getActualSession().createProducer(null);    }    return this.messageProducer;  }  public QueueSender getQueueSender() throws JMSException  {    if (this.queueSender == null) {      this.queueSender = ((QueueSession)getActualSession()).createSender(null);    }    return this.queueSender;  }  public TopicPublisher getTopicPublisher() throws JMSException  {    if (this.topicPublisher == null) {      this.topicPublisher = ((TopicSession)getActualSession()).createPublisher(null);    }    return this.topicPublisher;  }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美中文字幕公布| 欧美日韩精品免费观看视频| 国产剧情在线观看一区二区| 麻豆免费看一区二区三区| 另类小说图片综合网| 大白屁股一区二区视频| eeuss鲁片一区二区三区| 在线观看免费视频综合| 欧美怡红院视频| 日韩欧美视频在线| 国产精品女同互慰在线看| 综合久久国产九一剧情麻豆| 日韩高清电影一区| 成人久久久精品乱码一区二区三区| 99精品视频在线免费观看| 欧美日韩一区精品| 久久精品在线免费观看| 日韩和欧美一区二区| 色综合咪咪久久| 久久久www成人免费无遮挡大片| 一区二区三区在线免费播放| 久久成人综合网| 欧美日韩色一区| 国产精品福利一区| 国精产品一区一区三区mba桃花 | 成人性生交大合| 欧美一二三在线| 亚洲国产精品欧美一二99| 国产宾馆实践打屁股91| 精品国产a毛片| 秋霞电影一区二区| 欧美一区二区三区性视频| 亚洲精品久久久久久国产精华液| 成人教育av在线| 国产亚洲视频系列| 国产成人免费视频网站 | 91免费视频网| 欧美激情中文字幕一区二区| 美女视频第一区二区三区免费观看网站| 欧美综合久久久| 国产三级欧美三级| 国产乱码精品一区二区三区忘忧草 | 色欧美88888久久久久久影院| 中文字幕av一区 二区| 成人一区二区三区在线观看| 国产精品福利一区| 欧美在线观看一区二区| 水蜜桃久久夜色精品一区的特点 | 亚洲综合精品久久| 精品视频在线免费观看| 日本视频在线一区| 久久久噜噜噜久久人人看| 国产成人精品一区二区三区网站观看| 中文字幕av一区 二区| 色婷婷久久久综合中文字幕| 亚洲不卡av一区二区三区| 欧美变态口味重另类| 99久久伊人精品| 五月婷婷激情综合| 国产精品素人视频| 日韩欧美在线一区二区三区| caoporn国产一区二区| 亚洲国产精品一区二区久久| 精品国产乱码久久久久久牛牛| 国产69精品久久777的优势| 亚洲大片精品永久免费| 国产日韩精品一区二区三区| 777色狠狠一区二区三区| 9l国产精品久久久久麻豆| 日韩精品一二区| xfplay精品久久| 午夜久久电影网| 亚洲日本乱码在线观看| 久久久久久久av麻豆果冻| 911精品产国品一二三产区| 一本色道亚洲精品aⅴ| 丰满放荡岳乱妇91ww| 久久99精品国产麻豆不卡| 亚洲精品第1页| 亚洲婷婷在线视频| 国产精品久久久久影院老司| 欧美xxxxxxxx| 日韩你懂的电影在线观看| 欧美无砖砖区免费| 91黄视频在线| 欧美日韩二区三区| 欧美日韩午夜在线| 欧美久久高跟鞋激| 欧美绝品在线观看成人午夜影视 | 国产一区二区三区香蕉| 亚洲成av人片一区二区梦乃| 国产精品久久久久aaaa樱花| 中文字幕日韩精品一区| 亚洲综合色成人| 奇米四色…亚洲| 盗摄精品av一区二区三区| 91蜜桃传媒精品久久久一区二区| 在线视频亚洲一区| 久久久综合网站| 亚洲国产一区视频| 成人av午夜电影| 欧美精品在线视频| 国产精品国产三级国产aⅴ入口| 亚洲国产精品久久久久婷婷884 | 欧美va在线播放| 日韩欧美电影在线| 国产欧美精品一区| 亚洲免费观看高清在线观看| 一区二区三区中文字幕精品精品| 亚洲成av人片www| jvid福利写真一区二区三区| 粉嫩久久99精品久久久久久夜| 欧美日韩极品在线观看一区| 欧美不卡一区二区三区四区| 亚洲人成亚洲人成在线观看图片| 午夜日韩在线电影| 不卡的av电影| 日韩精品一区二区三区视频播放| 国产精品嫩草久久久久| 亚洲18女电影在线观看| 国产成人综合亚洲网站| av激情成人网| 国产欧美日韩一区二区三区在线观看| 一区二区三区电影在线播| 午夜欧美视频在线观看| 在线免费观看成人短视频| 日本一区二区动态图| 日本中文字幕一区| 欧美久久久久久久久久| 久久久国产精华| 亚洲高清一区二区三区| www.亚洲国产| 欧美激情一区二区在线| 国产在线精品不卡| 国产亚洲欧美激情| 国产一区二区三区观看| 日韩一区二区免费电影| 免费黄网站欧美| 欧美色精品天天在线观看视频| 亚洲欧美一区二区久久 | 9191国产精品| 日韩中文字幕av电影| 91免费观看视频| 一区二区三区四区在线| 欧美日韩精品免费观看视频| 午夜精品久久久久久不卡8050| 欧美精品tushy高清| 麻豆国产一区二区| 中文字幕视频一区| 国产成人av电影在线| 亚洲免费在线播放| 欧美一区二区三区四区五区| 另类综合日韩欧美亚洲| 国产精品久久国产精麻豆99网站| 欧美中文字幕一区二区三区| 捆绑变态av一区二区三区| 中文字幕在线一区二区三区| 欧美三级日韩三级国产三级| 国内精品免费在线观看| 国产清纯白嫩初高生在线观看91| 色综合色综合色综合色综合色综合| 天天av天天翘天天综合网| 欧美一区欧美二区| 色综合久久天天| 国产精品自拍三区| 亚洲小少妇裸体bbw| 国产精品超碰97尤物18| 日韩欧美一级二级三级| 欧美日韩一二三| 91丨porny丨最新| 久久精工是国产品牌吗| 亚洲成人手机在线| 亚洲精品一二三| 精品成人私密视频| 欧美一级久久久| 91美女精品福利| 成人动漫一区二区| 成人综合在线网站| 成人av资源在线观看| 国产一区二区三区精品欧美日韩一区二区三区 | 一区二区三区四区在线播放| 国产亚洲污的网站| 国产亚洲精品精华液| 久久中文娱乐网| 日韩欧美精品在线视频| 日韩免费视频一区| 国产精品久久久久永久免费观看| 欧美国产精品专区| 国产性色一区二区| 国产精品五月天| 亚洲一卡二卡三卡四卡无卡久久| 亚洲国产视频一区| 三级一区在线视频先锋| 日韩一区精品视频| 国产精品一卡二卡| 欧美视频在线一区二区三区| 在线播放中文一区| 精品免费视频.| 亚洲成年人影院| 国产一区二区不卡老阿姨|