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

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

?? channeladaptor.java

?? java pos,你可以直接編譯運行,
?? JAVA
字號:
/* * Copyright (c) 2004 jPOS.org  * * See terms of license at http://jpos.org/license.html * */package org.jpos.q2.iso;import java.io.IOException;import java.util.Date;import java.util.Iterator;import org.jpos.iso.ISOMsg;import org.jpos.iso.ISOUtil;import org.jpos.space.Space;import org.jpos.space.SpaceFactory;import org.jpos.core.Configuration;import org.jpos.core.ConfigurationException;import org.jpos.iso.FactoryChannel;import org.jpos.iso.Channel;import org.jpos.iso.ISOChannel;import org.jpos.iso.ISOClientSocketFactory;import org.jpos.iso.ISOPackager;import org.jpos.iso.ISOFilter;import org.jpos.iso.FilteredChannel;import org.jpos.q2.QBeanSupport;import org.jpos.q2.QFactory;import org.jpos.util.LogSource;import org.jpos.util.NameRegistrar;import org.jdom.Element;/** * @author Alejandro Revilla * @version $Revision: 1.23 $ $Date: 2004/12/07 11:21:23 $ * @jmx:mbean description="ISOChannel wrapper"  *                extends="org.jpos.q2.QBeanSupportMBean" */public class ChannelAdaptor     extends QBeanSupport    implements ChannelAdaptorMBean, Channel{    Space sp;    Configuration cfg;    ISOChannel channel;    String in, out, ready, reconnect;    long delay;    public ChannelAdaptor () {        super ();    }    public void initChannel () throws ConfigurationException {        Element persist = getPersist ();        sp = grabSpace (persist.getChild ("space"));         Element e = persist.getChild ("channel");        if (e == null)            throw new ConfigurationException ("channel element missing");        in      = persist.getChildTextTrim ("in");        out     = persist.getChildTextTrim ("out");        String s = persist.getChildTextTrim ("reconnect-delay");        delay    = s != null ? Long.parseLong (s) : 10000; // reasonable default        channel = newChannel (e, getFactory());                String socketFactoryString = getSocketFactory();        if (socketFactoryString != null && channel instanceof FactoryChannel) {            ISOClientSocketFactory sFac = (ISOClientSocketFactory) getFactory().newInstance(socketFactoryString);            if (sFac != null && sFac instanceof LogSource) {                ((LogSource) sFac).setLogger(log.getLogger(),getName() + ".socket-factory");            }            getFactory().setConfiguration (sFac, e);            ((FactoryChannel)channel).setSocketFactory(sFac);        }        ready   = getName() + ".ready";        reconnect = getName() + ".reconnect";    }    public void startService () {        try {            initChannel ();            new Thread (new Sender ()).start ();            new Thread (new Receiver ()).start ();        } catch (Exception e) {            getLog().warn ("error starting service", e);        }    }    public void stopService () {        try {            sp.out (in, new Object());            if (channel.isConnected())                disconnect();        } catch (Exception e) {            getLog().warn ("error disconnecting from remote host", e);        }    }    public void destroyService () {        NameRegistrar.unregister ("channel." + getName ());    }    /**     * @jmx:managed-attribute description="set reconnect delay"     */    public synchronized void setReconnectDelay (long delay) {        getPersist().getChild ("reconnect-delay")             .setText (Long.toString (delay));        this.delay = delay;        setModified (true);    }    /**     * @jmx:managed-attribute description="get reconnect delay"     */    public long getReconnectDelay () {        return delay;    }    /**     * @jmx:managed-attribute description="input queue"     */    public synchronized void setInQueue (String in) {        String old = this.in;        this.in = in;        if (old != null)            sp.out (old, new Object());        getPersist().getChild("in").setText (in);        setModified (true);    }    /**     * @jmx:managed-attribute description="input queue"     */    public String getInQueue () {        return in;    }    /**     * @jmx:managed-attribute description="output queue"     */    public synchronized void setOutQueue (String out) {        this.out = out;        getPersist().getChild("out").setText (out);        setModified (true);    }    /**     * Queue a message to be transmitted by this adaptor     * @param m message to send     */    public void send (ISOMsg m) {        sp.out (in, m);    }    /**     * Queue a message to be transmitted by this adaptor     * @param m message to send     * @param timeout      */    public void send (ISOMsg m, long timeout) {        sp.out (in, m, timeout);    }    /**     * Receive message     */    public ISOMsg receive () {        return (ISOMsg) sp.in (out);    }    /**     * Receive message     * @param timeout time to wait for an incoming message     */    public ISOMsg receive (long timeout) {        return (ISOMsg) sp.in (out, timeout);    }    /**     * @return true if channel is connected     */    public boolean isConnected () {        return sp.rdp (ready) != null;    }    /**     * @jmx:managed-attribute description="output queue"     */    public String getOutQueue () {        return out;    }    public ISOChannel newChannel (Element e, QFactory f)         throws ConfigurationException    {        String channelName  = e.getAttributeValue ("class");        String packagerName = e.getAttributeValue ("packager");        ISOChannel channel   = (ISOChannel) f.newInstance (channelName);        ISOPackager packager = null;        if (packagerName != null) {            packager = (ISOPackager) f.newInstance (packagerName);            channel.setPackager (packager);            f.setConfiguration (packager, e);        }        QFactory.invoke (channel, "setHeader", e.getAttributeValue ("header"));        f.setLogger        (channel, e);        f.setConfiguration (channel, e);        if (channel instanceof FilteredChannel) {            addFilters ((FilteredChannel) channel, e, f);        }        if (getName () != null)            channel.setName (getName ());        return channel;    }    private void addFilters (FilteredChannel channel, Element e, QFactory fact)         throws ConfigurationException    {        Iterator iter = e.getChildren ("filter").iterator();        while (iter.hasNext()) {            Element f = (Element) iter.next();            String clazz = f.getAttributeValue ("class");            ISOFilter filter = (ISOFilter) fact.newInstance (clazz);            fact.setLogger        (filter, f);            fact.setConfiguration (filter, f);            String direction = f.getAttributeValue ("direction");            if (direction == null)                channel.addFilter (filter);            else if ("incoming".equalsIgnoreCase (direction))                channel.addIncomingFilter (filter);            else if ("outgoing".equalsIgnoreCase (direction))                channel.addOutgoingFilter (filter);            else if ("both".equalsIgnoreCase (direction)) {                channel.addIncomingFilter (filter);                channel.addOutgoingFilter (filter);            }        }    }    public class Sender implements Runnable {        public Sender () {            super ();        }        public void run () {            Thread.currentThread().setName ("channel-sender-" + in);            while (running ()){                try {                    checkConnection ();                    Object o = sp.in (in, delay);                    if (o instanceof ISOMsg)                        channel.send ((ISOMsg) o);                } catch (Exception e) {                     getLog().warn ("channel-sender-"+in, e.getMessage ());                    disconnect ();                    ISOUtil.sleep (1000);                }            }        }    }    public class Receiver implements Runnable {        public Receiver () {            super ();        }        public void run () {            Thread.currentThread().setName ("channel-receiver-"+out);            while (running()) {                try {                    sp.rd (ready);                    ISOMsg m = channel.receive ();                    sp.out (out, m);                } catch (Exception e) {                     if (running()) {                        getLog().warn ("channel-receiver-"+out, e);                        disconnect ();                        sp.out (in, new Object()); // wake-up Sender                        ISOUtil.sleep(1000);                        sp.out (reconnect, new Object(), delay);                    }                }            }        }    }    protected void checkConnection () {        while (running() &&                 sp.rdp (reconnect) != null)        {            ISOUtil.sleep(1000);        }        while (running() && !channel.isConnected ()) {            while (sp.inp (ready) != null)                ;            try {                channel.connect ();            } catch (IOException e) {                getLog().warn ("check-connection", e.getMessage ());            }            if (!channel.isConnected ())                ISOUtil.sleep (delay);        }        if (running() && (sp.rdp (ready) == null))            sp.out (ready, new Date());    }    protected synchronized void disconnect () {        try {            while (sp.inp (ready) != null)                ;            channel.disconnect ();        } catch (IOException e) {            getLog().warn ("disconnect", e);        }    }    /**     * @jmx:managed-attribute description="remote host address"     */    public synchronized void setHost (String host) {        setProperty (getProperties ("channel"), "host", host);        setModified (true);    }    /**     * @jmx:managed-attribute description="remote host address"     */    public String getHost () {        return getProperty (getProperties ("channel"), "host");    }    /**     * @jmx:managed-attribute description="remote port"     */    public synchronized void setPort (int port) {        setProperty (            getProperties ("channel"), "port", Integer.toString (port)        );        setModified (true);    }    /**     * @jmx:managed-attribute description="remote port"     */    public int getPort () {        int port = 0;        try {            port = Integer.parseInt (                getProperty (getProperties ("channel"), "port")            );        } catch (NumberFormatException e) { }        return port;    }    /**     * @jmx:managed-attribute description="socket factory"      */    public synchronized void setSocketFactory (String sFac) {        setProperty(getProperties("channel"), "socketFactory", sFac);        setModified(true);    }        /**     * @jmx:managed-attribute description="socket factory"      */    public String getSocketFactory() {        return getProperty(getProperties ("channel"), "socketFactory");    }        private Space grabSpace (Element e) {        return SpaceFactory.getSpace (e != null ? e.getText() : "");    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
粉嫩久久99精品久久久久久夜| 欧美一区二视频| 欧美精品久久99| 国产清纯白嫩初高生在线观看91 | 日韩精品一区二区三区蜜臀 | 91麻豆精品国产| 国产精品乱人伦一区二区| 天堂影院一区二区| 成人动漫视频在线| 欧美不卡激情三级在线观看| 亚洲精品一二三| 成人网页在线观看| 日韩欧美亚洲国产精品字幕久久久| 中文乱码免费一区二区| 精品在线你懂的| 在线不卡一区二区| 亚洲影院在线观看| 93久久精品日日躁夜夜躁欧美| 精品久久久三级丝袜| 日本在线播放一区二区三区| 91激情在线视频| 亚洲色图色小说| 99久久精品国产毛片| 欧美国产一区视频在线观看| 韩国中文字幕2020精品| 在线电影一区二区三区| 亚洲一区二区中文在线| 色网综合在线观看| 亚洲三级电影全部在线观看高清| 成人av第一页| 国产精品美女www爽爽爽| 国内精品视频一区二区三区八戒 | 91猫先生在线| 国产精品色哟哟网站| 国产一区不卡精品| 久久综合国产精品| 国产91精品精华液一区二区三区 | 成人网在线免费视频| 久久蜜桃av一区精品变态类天堂| 麻豆久久久久久久| 欧美一区中文字幕| 免费看日韩精品| 337p粉嫩大胆色噜噜噜噜亚洲 | 国产精品一区一区三区| 26uuu国产一区二区三区| 国产乱人伦偷精品视频免下载| 欧美一区二区在线看| 久久激五月天综合精品| 亚洲精品一区二区精华| 懂色av中文字幕一区二区三区| 国产欧美日韩视频一区二区| www.色精品| 一区二区三区在线视频播放| 欧美性生交片4| 日欧美一区二区| 欧美xingq一区二区| 国产精品99久久久久久宅男| 一区精品在线播放| 欧美日韩国产小视频在线观看| 青青草国产成人99久久| 国产欧美日韩精品在线| 91福利国产成人精品照片| 日韩电影在线观看网站| 国产欧美日韩视频在线观看| 欧洲精品中文字幕| 国产一区二区三区黄视频 | 久久嫩草精品久久久精品一| 不卡的av电影| 日韩在线一区二区三区| 国产视频在线观看一区二区三区| 色先锋资源久久综合| 精品一区二区三区免费毛片爱| 国产精品家庭影院| 日韩一区二区视频| 色综合色综合色综合色综合色综合 | 综合分类小说区另类春色亚洲小说欧美| 色综合天天性综合| 久久av老司机精品网站导航| 日韩一区在线播放| 26uuu精品一区二区| 欧美在线色视频| 成人免费视频一区二区| 久久精品国产亚洲5555| 亚洲色图在线视频| 亚洲精品一线二线三线无人区| 欧美性感一类影片在线播放| 国产xxx精品视频大全| 天天操天天色综合| 亚洲欧美中日韩| 天天色图综合网| 日本一区二区成人在线| 日韩欧美国产wwwww| 在线一区二区三区做爰视频网站| 国产精品91一区二区| 免费观看日韩电影| 午夜精品久久久久久久久| 中文字幕一区二区三区精华液| 精品日产卡一卡二卡麻豆| 欧美日韩精品一区二区天天拍小说 | 久久久午夜电影| 91精品欧美一区二区三区综合在| 91老师国产黑色丝袜在线| 岛国av在线一区| 国产老女人精品毛片久久| 青青草国产成人av片免费| 亚洲一二三区在线观看| 国产精品乱人伦| 亚洲国产电影在线观看| 久久精品这里都是精品| 精品国精品国产| 欧美成人a∨高清免费观看| 7777精品伊人久久久大香线蕉最新版| 99久久免费视频.com| 成人av动漫网站| 91热门视频在线观看| 99免费精品在线| 色综合久久久久网| 在线国产亚洲欧美| 欧美日韩免费视频| 6080yy午夜一二三区久久| 欧美日韩国产中文| 欧美一区二区人人喊爽| 欧美女孩性生活视频| 欧美一级欧美一级在线播放| 欧美另类一区二区三区| 在线播放91灌醉迷j高跟美女| 91精品国产综合久久精品图片 | 日韩精品久久久久久| 亚洲自拍另类综合| 日本在线不卡一区| 国产一区二区三区免费在线观看 | 蜜臀91精品一区二区三区| 青青草原综合久久大伊人精品优势 | 处破女av一区二区| 91啪在线观看| 欧美精品 国产精品| 精品日韩成人av| 中文字幕精品—区二区四季| 亚洲三级理论片| 免费成人av在线播放| 国产成人一级电影| 91成人免费在线| 日韩欧美在线综合网| 午夜一区二区三区视频| 久热成人在线视频| 成人av电影在线播放| 欧美日韩国产中文| 国产婷婷色一区二区三区四区 | 色先锋资源久久综合| 制服丝袜av成人在线看| 久久精品日产第一区二区三区高清版| 国产精品免费av| 青青草国产精品97视觉盛宴| 国产成a人亚洲| 欧美日韩视频在线第一区| 精品裸体舞一区二区三区| 亚洲日本va午夜在线影院| 久久国产福利国产秒拍| 91丨九色丨蝌蚪丨老版| 日韩欧美国产一二三区| 亚洲欧美一区二区不卡| 精品中文字幕一区二区| 日本精品一级二级| 久久精品视频网| 琪琪久久久久日韩精品| 91香蕉视频黄| 国产日韩影视精品| 免费在线观看视频一区| 在线视频欧美区| 国产精品乱人伦| 国产在线播精品第三| 欧美精品乱码久久久久久| 亚洲欧美国产毛片在线| 国产精品影视天天线| 日韩一区二区在线播放| 亚洲国产人成综合网站| 97久久久精品综合88久久| 久久蜜桃av一区二区天堂| 日韩和的一区二区| 在线免费一区三区| 亚洲视频资源在线| 成人涩涩免费视频| 精品国产髙清在线看国产毛片| 亚洲主播在线观看| 色综合天天综合在线视频| 中文字幕高清不卡| 国产麻豆精品久久一二三| 精品国内片67194| 日本不卡视频在线观看| 欧美日韩一区三区四区| 一区二区三区欧美| 色综合网站在线| 亚洲人xxxx| 一本色道久久综合亚洲91| 国产精品久久久久久久久免费桃花| 国产综合久久久久久鬼色| 精品久久久久久久久久久久久久久久久 | 色噜噜久久综合| 亚洲色图.com| 一本到高清视频免费精品|