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

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

?? persistenceadapter.java

?? 一個java方面的消息訂閱發送的源碼
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/**
 * Redistribution and use of this software and associated documentation
 * ("Software"), with or without modification, are permitted provided
 * that the following conditions are met:
 *
 * 1. Redistributions of source code must retain copyright
 *    statements and notices.  Redistributions must also contain a
 *    copy of this document.
 *
 * 2. Redistributions in binary form must reproduce the
 *    above copyright notice, this list of conditions and the
 *    following disclaimer in the documentation and/or other
 *    materials provided with the distribution.
 *
 * 3. The name "Exolab" must not be used to endorse or promote
 *    products derived from this Software without prior written
 *    permission of Exoffice Technologies.  For written permission,
 *    please contact info@exolab.org.
 *
 * 4. Products derived from this Software may not be called "Exolab"
 *    nor may "Exolab" appear in their names without prior written
 *    permission of Exoffice Technologies. Exolab is a registered
 *    trademark of Exoffice Technologies.
 *
 * 5. Due credit should be given to the Exolab Project
 *    (http://www.exolab.org/).
 *
 * THIS SOFTWARE IS PROVIDED BY EXOFFICE TECHNOLOGIES AND CONTRIBUTORS
 * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
 * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
 * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL
 * EXOFFICE TECHNOLOGIES OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
 * OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 * Copyright 2000-2005 (C) Exoffice Technologies Inc. All Rights Reserved.
 *
 * $Id: PersistenceAdapter.java,v 1.2 2005/03/18 04:05:52 tanderson Exp $
 */
package org.exolab.jms.persistence;

import java.sql.Connection;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Vector;

import org.exolab.jms.authentication.User;
import org.exolab.jms.client.JmsDestination;
import org.exolab.jms.message.MessageImpl;
import org.exolab.jms.messagemgr.MessageHandle;


/**
 * This adapter is a wrapper class around the persistency mechanism.
 * It isolates the client from the working specifics of the database, by
 * providing a simple straight forward interface. Future changes to
 * the database will only require changes to the adapter.
 *
 * @version     $Revision: 1.2 $ $Date: 2005/03/18 04:05:52 $
 * @author      <a href="mailto:mourikis@exolab.org">Jim Mourikis</a>
 * @see			org.exolab.jms.persistence.RDBMSAdapter
 */
public abstract class PersistenceAdapter {

    /**
     * Close the database if open.
     *
     */
    public abstract void close();

    /**
     * Check to see if the root is created. If its not then create it
     * and initialise it to 0.
     * Return the value of this root id.
     *
     * @return long The id of the last batch.
     * @throws PersistenceException
     */
    public abstract long getLastId(Connection connection)
        throws PersistenceException;

    /**
     * Update the given id.
     *
     * @param connection - the connection to use
     * @param id The id to set in the database.
     * @throws PersistenceException
     */
    public abstract void updateIds(Connection connection, long id)
        throws PersistenceException;

    /**
     * Add a new message to the database.
     *
     * @param connection  the connection to use
     * @param message the new message to add
     * @throws PersistenceException
     */
    public abstract void addMessage(Connection connection,
                                    MessageImpl message)
        throws PersistenceException;

    /**
     * Update this message in the database
     *
     * @param connection the connection to use
     * @param message the message to update
     * @throws PersistenceException
     */
    public abstract void updateMessage(Connection connection,
                                       MessageImpl message)
        throws PersistenceException;

    /**
     * Remove the message with the specified identity from the database
     *
     * @param connection - the connection to use
     * @param id the identity of the message to remove
     * @throws PersistenceException
     */
    public abstract void removeMessage(Connection connection,
                                       String id)
        throws PersistenceException;

    /**
     * Remove all expired messages and associated references from the
     * database. It uses the current time to determine messages that
     * have exipred.
     *
     * @param connection - the connection to use
     * @throws PersistenceException
     */
    public abstract void removeExpiredMessages(Connection connection)
        throws PersistenceException;

    /**
     * Remove all expired messages handles associated with this durable
     * consumer.
     *
     * @param connection - the connection to use
     * @param consumer - the durable consumer name
     * @throws PersistenceException
     */
    public abstract void removeExpiredMessageHandles(Connection connection,
                                                     String consumer)
        throws PersistenceException;

    /**
     * Retrieve a list of unexpired {@link MessageHandle} objects,
     * for the specified destination.
     *
     * @param connection - the connection to use
     * @param destination - the destination in question
     * @return Vector - collection of unexpired message handles
     * @throws PersistenceException
     */
    public abstract Vector getNonExpiredMessages(Connection connection,
                                                 JmsDestination destination)
        throws PersistenceException;

    /**
     * Get a message from the persistence store.
     *
     * @param connection - the connection to use
     * @param id the id of the message to search for
     * @return MessageImpl	 The message if found otherwise null
     * @throws PersistenceException
     */
    public abstract MessageImpl getMessage(Connection connection,
                                           String id)
        throws PersistenceException;

    /**
     * Get at least the next message given the specified persistent
     * handle. The handle encodes all the information, including destination
     * and timestamp, required to fetch that and successive messages. This
     * will fault in more than one message for performance
     *
     * @param connection - the connection to use
     * @param handle - the persistent handle to resolve
     * @return Vector - a vector of MessageImpl
     * @throws PersistenceException
     */
    public abstract Vector getMessages(Connection connection,
                                       MessageHandle handle)
        throws PersistenceException;

    /**
     * Return a list of unprocessed messages. These are messages that have
     * been stored in the database but not processed.
     *
     * @param connection - the connection to use
     * @return Vector - a collection of un processed messages
     * @throws PersistenceException
     */
    public abstract Vector getUnprocessedMessages(Connection connection)
        throws PersistenceException;

    /**
     * Add the specified persistent message handle.
     *
     * @param connection - the connection to use
     * @param handle - the persistent handle to add
     * @throws PersistenceException
     */
    public abstract void addMessageHandle(Connection connection,
                                          MessageHandle handle)
        throws PersistenceException;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
777xxx欧美| 97久久人人超碰| 亚洲bt欧美bt精品| 欧美主播一区二区三区美女| 午夜精品福利一区二区三区av | 欧美电视剧在线观看完整版| 欧美午夜一区二区三区| 蜜桃av一区二区| 性欧美疯狂xxxxbbbb| 精品少妇一区二区三区视频免付费 | 一区二区三区高清不卡| 国产精品三级视频| 欧美日韩一区二区三区不卡| 欧美性生活一区| 欧美日韩精品一区二区| 成人性色生活片免费看爆迷你毛片| 欧美激情中文不卡| 中文字幕日韩一区二区| 91麻豆精品国产91久久久资源速度| 在线观看国产日韩| 丰满放荡岳乱妇91ww| 日本视频一区二区三区| 18欧美亚洲精品| 亚洲综合男人的天堂| 蜜桃视频在线一区| 婷婷激情综合网| 国内一区二区在线| 色综合久久久久久久| 日韩色视频在线观看| 国产片一区二区三区| 亚洲一区二区黄色| 国精产品一区一区三区mba视频| 成人黄色软件下载| 美女视频网站黄色亚洲| 香蕉影视欧美成人| 国产一区二区三区久久久| 色狠狠色噜噜噜综合网| 欧美变态tickling挠脚心| 亚洲欧美日韩小说| 精品一区二区三区免费毛片爱 | 国产精品福利影院| 麻豆成人91精品二区三区| 亚洲与欧洲av电影| 国产乱码精品1区2区3区| 欧美午夜不卡视频| 91成人在线免费观看| 91在线观看免费视频| 成人国产亚洲欧美成人综合网| 欧美午夜电影在线播放| 国产欧美久久久精品影院| 亚洲精品视频观看| 成人久久久精品乱码一区二区三区 | 91精品1区2区| 欧美一级爆毛片| 亚洲已满18点击进入久久| 丰满白嫩尤物一区二区| 日韩欧美激情在线| 亚洲高清视频的网址| 成人激情视频网站| 精品99999| 日韩精品一二区| 奇米777欧美一区二区| 久久91精品久久久久久秒播| 蜜臀国产一区二区三区在线播放| 在线精品视频免费观看| 亚洲欧洲精品成人久久奇米网| 久久99久久精品| 91精品国产综合久久蜜臀| 亚洲第一二三四区| 在线免费观看日本一区| 欧美三级三级三级爽爽爽| 日韩精品一区二区三区老鸭窝 | 老司机免费视频一区二区三区| 久久成人精品无人区| 国产精品一区二区黑丝| 日韩午夜在线播放| 中文字幕视频一区二区三区久| 国产成人免费在线| 国产欧美一区二区三区在线老狼| 久久av中文字幕片| 久久综合狠狠综合| 国产一区二区91| 国产午夜精品一区二区三区视频 | 欧美成人精品二区三区99精品| 视频一区免费在线观看| 另类调教123区| 精品欧美一区二区久久| 国产在线不卡视频| 91国产丝袜在线播放| 一级中文字幕一区二区| 欧美日韩国产一级片| 久久精品欧美一区二区三区不卡 | 精品久久久久久久久久久院品网 | 免费成人在线观看视频| 欧美va亚洲va在线观看蝴蝶网| 久久国产免费看| 99精品国产视频| 日韩一区二区三区视频在线| 麻豆精品精品国产自在97香蕉| 99视频国产精品| 亚洲综合一区二区精品导航| 成人自拍视频在线| 中文字幕不卡的av| 另类综合日韩欧美亚洲| 国产拍欧美日韩视频二区| 欧美在线高清视频| 蜜桃视频在线观看一区| 国产精品美女久久久久久2018| 91影视在线播放| 欧美国产日韩一二三区| 欧美中文字幕久久| 久草精品在线观看| 亚洲一区二区综合| 精品精品国产高清a毛片牛牛| 日韩激情av在线| 国产伦理精品不卡| 欧美经典一区二区| 在线成人免费视频| 亚洲一区二区欧美| 91成人在线观看喷潮| 亚洲另类在线制服丝袜| 欧美一级久久久| 91国偷自产一区二区三区成为亚洲经典 | 久久99精品国产麻豆不卡| 国产亚洲精品福利| 欧美日韩五月天| 99久久99久久免费精品蜜臀| 精品中文av资源站在线观看| 一级特黄大欧美久久久| 91碰在线视频| 亚洲视频网在线直播| 99在线精品视频| 国产一区二区导航在线播放| 日本不卡中文字幕| 亚洲一区二区五区| 欧美一区二区三区四区久久| 日韩精品乱码av一区二区| 亚洲欧美日韩一区| 欧美日韩精品系列| 青青草国产成人av片免费| 一区二区三区在线视频观看58| 国产嫩草影院久久久久| 精品sm捆绑视频| 欧美videos大乳护士334| 美女视频免费一区| 亚洲国产精品激情在线观看| 99re免费视频精品全部| 风间由美性色一区二区三区| 精品一区二区免费视频| 久久国产尿小便嘘嘘尿| 久久成人免费网站| 亚洲色欲色欲www| 国产精品免费av| 国产亚洲成av人在线观看导航| 99国产精品久| 免费成人美女在线观看.| 免费成人美女在线观看| 国产欧美日产一区| 中文字幕二三区不卡| 国产精品国产三级国产普通话99 | 亚洲第四色夜色| 337p日本欧洲亚洲大胆色噜噜| 国产成人99久久亚洲综合精品| 中文字幕一区二区视频| 国产精品久久久久一区二区三区 | 久久久久久久一区| 国产精品色在线| 亚洲欧美国产毛片在线| 亚洲成人精品影院| 久久黄色级2电影| 国产成人亚洲综合a∨婷婷 | 亚洲成av人片在www色猫咪| 污片在线观看一区二区 | 国产精品电影一区二区三区| 国产精品久久久久久久久图文区 | 视频一区中文字幕| 精品一区二区三区免费观看 | 久久97超碰国产精品超碰| 国产成人综合亚洲91猫咪| 亚洲午夜久久久久久久久久久| 五月婷婷激情综合网| 精品写真视频在线观看| 一本色道**综合亚洲精品蜜桃冫| 精品视频在线免费| 久久天天做天天爱综合色| 亚洲精品成人精品456| 免费观看成人鲁鲁鲁鲁鲁视频| 激情综合色丁香一区二区| 日韩和欧美的一区| 国产电影一区在线| 欧美三级日韩在线| 久久久久久免费毛片精品| 欧美本精品男人aⅴ天堂| 欧美日韩视频一区二区| 久久久久久**毛片大全| 欧美videos中文字幕| 欧美一区二区三区四区久久| 欧美国产精品专区| 国产日韩视频一区二区三区| 夜夜嗨av一区二区三区|