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

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

?? httpthread.java

?? 一份java寫的期貨交易程序
?? JAVA
字號:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi 
// Source File Name:   HttpThread.java

package gnnt.MEBS.HQApplet;

import gnnt.MEBS.hq.ProductInfoVO;
import gnnt.util.service.HQVO.ProductInfoListVO;
import gnnt.util.service.HQVO.RequestUtil;
import java.awt.Component;
import java.io.*;
import java.net.*;
import java.util.Hashtable;
import java.util.Vector;
import java.util.zip.GZIPInputStream;

// Referenced classes of package gnnt.MEBS.HQApplet:
//            HQApplet, CodeTable, Packet_HttpRequest, KLineData, 
//            ProductData

public class HttpThread extends Thread
{

    HQApplet m_applet;
    static final int TYPE_CODELIST = 0;
    static final int TYPE_OTHER = 1;
    private int iType;
    private Vector vPacket;

    public HttpThread(int type, HQApplet applet)
    {
        m_applet = applet;
        iType = type;
        if(iType == 1)
            vPacket = new Vector();
    }

    synchronized void AskForData(Packet_HttpRequest packet)
    {
        if(packet != null)
        {
            vPacket.addElement(packet);
            int iSize = vPacket.size();
            int iBuf = 1;
            if(iSize > 1)
            {
                for(int i = 0; i < iSize - 1; i++)
                    vPacket.removeElementAt(i);

            }
        }
        notify();
    }

    public void run()
    {
        if(iType == 0)
            GetCodeList();
        else
            GetHttpData();
    }

    private void GetCodeList()
    {
        for(boolean bSucceed = false; m_applet != null && m_applet.bRunning && !bSucceed;)
        {
            try
            {
                ProductInfoListVO list = RequestUtil.getProductInfoList(m_applet.strURLPath + "data/productinfo.dat");
                HQApplet _tmp = m_applet;
                if(HQApplet.bDebug != 0)
                    System.out.println("碼表時間:" + list.date + " " + list.time);
                m_applet.m_iCodeDate = list.date;
                m_applet.m_iCodeTime = list.time;
                ProductInfoVO products[] = list.productInfos;
                m_applet.m_codeList.removeAllElements();
                m_applet.m_htProduct.clear();
                for(int i = 0; i < products.length; i++)
                {
                    m_applet.m_codeList.addElement(products[i].code);
                    CodeTable data = new CodeTable();
                    data.sName = products[i].name;
                    data.sPinyin = products[i].pyName;
                    data.status = products[i].status;
                    data.tradeSecNo = products[i].tradeSecNo;
                    data.fUnit = products[i].fUnit;
                    m_applet.m_htProduct.put(products[i].code, data);
                    if(data.status == 3 && m_applet.indexMainCode.length() == 0)
                        m_applet.indexMainCode = products[i].code;
                }

                bSucceed = true;
                m_applet.repaint();
            }
            catch(MalformedURLException malformedurlexception) { }
            catch(IOException ex)
            {
                HQApplet _tmp1 = m_applet;
                if(HQApplet.bDebug != 0)
                    ex.printStackTrace();
            }
            catch(Exception ex)
            {
                HQApplet _tmp2 = m_applet;
                if(HQApplet.bDebug != 0)
                    ex.printStackTrace();
            }
            if(!bSucceed)
                try
                {
                    Thread.sleep(1000L);
                }
                catch(InterruptedException interruptedexception) { }
        }

    }

    private void GetHttpData()
    {
        while(m_applet != null && m_applet.bRunning) 
        {
            try
            {
                Thread.sleep(300L);
            }
            catch(InterruptedException interruptedexception) { }
            int iSize = vPacket.size();
            if(iSize > 0)
            {
                Packet_HttpRequest request = (Packet_HttpRequest)vPacket.elementAt(iSize - 1);
                vPacket.removeElementAt(iSize - 1);
                switch(request.type)
                {
                case 0: // '\0'
                    GetDayLine(request);
                    break;

                case 1: // '\001'
                    Get5MinLine(request);
                    break;
                }
            } else
            {
                synchronized(this)
                {
                    try
                    {
                        wait();
                    }
                    catch(InterruptedException interruptedexception1) { }
                }
            }
        }
    }

    private static byte[] getRepoent(String url)
        throws MalformedURLException, IOException
    {
        URL page = null;
        page = new URL(url);
        URLConnection urlc = page.openConnection();
        urlc.connect();
        int filesize = urlc.getContentLength();
        BufferedInputStream inputs = new BufferedInputStream(urlc.getInputStream());
        ByteArrayOutputStream array = new ByteArrayOutputStream();
        for(byte by[] = new byte[1]; inputs.read(by) > 0; array.write(by));
        inputs.close();
        if(array.toByteArray().length != filesize)
            throw new MalformedURLException();
        else
            return array.toByteArray();
    }

    public static KLineData[] getHistoryData(String url)
        throws MalformedURLException, IOException
    {
        ByteArrayInputStream arrayInput = new ByteArrayInputStream(getRepoent(url));
        GZIPInputStream gzin = new GZIPInputStream(arrayInput);
        DataInputStream input = new DataInputStream(gzin);
        KLineData hisStatus[] = new KLineData[input.readInt()];
        for(int i = 0; i < hisStatus.length; i++)
        {
            hisStatus[i] = new KLineData();
            int date = input.readInt();
            if(date.length() > 6)
                hisStatus[i].date = 0x2e7f0c2d00L + (long)date;
            else
                hisStatus[i].date = date + 0x130b7d0;
            hisStatus[i].openPrice = input.readFloat();
            hisStatus[i].highPrice = input.readFloat();
            hisStatus[i].lowPrice = input.readFloat();
            hisStatus[i].closePrice = input.readFloat();
            hisStatus[i].balancePrice = input.readFloat();
            hisStatus[i].totalAmount = input.readLong();
            hisStatus[i].totalMoney = input.readFloat();
            hisStatus[i].reserveCount = input.readInt();
        }

        return hisStatus;
    }

    private void GetDayLine(Packet_HttpRequest request)
    {
        try
        {
            String strURL = m_applet.strURLPath + "data/day/" + request.sCode.trim() + ".day.zip";
            HQApplet _tmp = m_applet;
            if(HQApplet.bDebug != 0)
                System.out.println("Get Day : " + strURL);
            KLineData hisStatus[] = getHistoryData(strURL);
            ProductData product = m_applet.GetProductData(request.sCode);
            if(product == null)
            {
                if(m_applet.vProductData.size() > 50)
                    m_applet.vProductData.removeElementAt(50);
                product = new ProductData();
                product.sCode = request.sCode;
                product.dayKLine = hisStatus;
                m_applet.vProductData.insertElementAt(product, 0);
            } else
            {
                product.dayKLine = hisStatus;
            }
            if(hisStatus.length > 0)
            {
                HQApplet _tmp1 = m_applet;
                if(2 == m_applet.iCurrentPage && m_applet.strCurrentCode.equals(request.sCode))
                    m_applet.repaint();
            }
        }
        catch(MalformedURLException ex)
        {
            HQApplet _tmp2 = m_applet;
            if(HQApplet.bDebug != 0)
                System.err.print(ex.toString());
        }
        catch(IOException ex)
        {
            HQApplet _tmp3 = m_applet;
            if(HQApplet.bDebug != 0)
                ex.printStackTrace();
        }
        catch(Exception ex)
        {
            HQApplet _tmp4 = m_applet;
            if(HQApplet.bDebug != 0)
                ex.printStackTrace();
        }
    }

    private void Get5MinLine(Packet_HttpRequest request)
    {
        try
        {
            KLineData hisStatus[] = getHistoryData(m_applet.strURLPath + "data/5min/" + request.sCode + ".5min.zip");
            ProductData stock = m_applet.GetProductData(request.sCode);
            if(stock == null)
            {
                if(m_applet.vProductData.size() > 50)
                    m_applet.vProductData.removeElementAt(50);
                stock = new ProductData();
                stock.sCode = request.sCode;
                stock.min5KLine = hisStatus;
                m_applet.vProductData.insertElementAt(stock, 0);
            } else
            {
                stock.min5KLine = hisStatus;
            }
            for(int iIndex = 0; iIndex < stock.min5KLine.length; iIndex++)
                if(stock.min5KLine[iIndex].balancePrice <= 0.0F)
                    if(stock.min5KLine[iIndex].totalAmount > 0L)
                        stock.min5KLine[iIndex].balancePrice = (float)(stock.min5KLine[iIndex].totalMoney / (double)stock.min5KLine[iIndex].totalAmount);
                    else
                    if(iIndex > 0)
                        stock.min5KLine[iIndex].balancePrice = stock.min5KLine[iIndex - 1].balancePrice;
                    else
                        stock.min5KLine[iIndex].balancePrice = stock.min5KLine[iIndex].closePrice;

            if(hisStatus.length > 0 && 2 == m_applet.iCurrentPage && m_applet.strCurrentCode.equals(request.sCode))
                m_applet.repaint();
        }
        catch(MalformedURLException ex)
        {
            HQApplet _tmp = m_applet;
            if(HQApplet.bDebug != 0)
                ex.printStackTrace();
        }
        catch(IOException ex)
        {
            HQApplet _tmp1 = m_applet;
            if(HQApplet.bDebug != 0)
                ex.printStackTrace();
        }
        catch(Exception ex)
        {
            HQApplet _tmp2 = m_applet;
            if(HQApplet.bDebug != 0)
                ex.printStackTrace();
        }
    }

    public static void quickSort(ProductInfoVO order[], int left, int right)
    {
        if(left < right)
        {
            ProductInfoVO tmp = order[left];
            int i = left;
            for(int j = right; i < j;)
            {
                while(i < j && order[j].code.compareTo(tmp.code) > 0) 
                    j--;
                if(i < j)
                    order[i++] = order[j];
                for(; i < j && order[i].code.compareTo(tmp.code) <= 0; i++);
                if(i < j)
                    order[j--] = order[i];
            }

            order[i] = tmp;
            quickSort(order, left, i - 1);
            quickSort(order, i + 1, right);
        }
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
青青草国产成人av片免费| 99国产精品视频免费观看| 国产成人三级在线观看| 欧美吻胸吃奶大尺度电影| 久久久另类综合| 亚洲韩国一区二区三区| 国产aⅴ精品一区二区三区色成熟| 欧洲一区在线电影| 中文字幕在线免费不卡| 久久不见久久见中文字幕免费| 91久久精品一区二区三| 国产精品丝袜在线| 精品一区二区三区视频在线观看| 99国产欧美另类久久久精品 | 蓝色福利精品导航| 在线中文字幕一区| 国产精品伦理在线| 国产一区二区三区蝌蚪| 欧美成人女星排行榜| 亚洲成人av电影在线| 91蜜桃在线观看| 欧美激情中文字幕| 国产成人av一区二区三区在线 | 久久精品欧美一区二区三区不卡| 五月综合激情日本mⅴ| av亚洲精华国产精华精华| 欧美激情在线一区二区三区| 精彩视频一区二区三区| 日韩午夜在线影院| 青青草一区二区三区| 91精品欧美综合在线观看最新| 亚洲夂夂婷婷色拍ww47 | 欧美日韩国产天堂| 亚洲国产日韩a在线播放性色| 91麻豆swag| 一区二区三区四区在线| 一本到不卡精品视频在线观看| 国产精品久久久久7777按摩| 99精品热视频| 亚洲一区二区三区激情| 欧美日韩不卡视频| 青青草伊人久久| 精品电影一区二区| 国产成人av电影在线观看| 国产精品少妇自拍| 日本黄色一区二区| 性做久久久久久久免费看| 欧美精品tushy高清| 免费成人在线观看视频| 精品久久久三级丝袜| 国产a级毛片一区| 亚洲欧美一区二区三区孕妇| 欧美三级电影一区| 免费成人你懂的| 久久午夜免费电影| 91片黄在线观看| 午夜欧美2019年伦理| 欧美精品一区二区三区蜜臀| 丰满岳乱妇一区二区三区| 日韩美女视频19| 欧美日韩一区三区| 国产乱色国产精品免费视频| 国产精品免费视频观看| 欧美视频一区二区三区在线观看 | 精品一区二区国语对白| 国产网站一区二区三区| 日本高清不卡视频| 久久国产三级精品| 亚洲免费电影在线| 精品国产sm最大网站免费看| av电影天堂一区二区在线观看| 亚洲成人av福利| 国产欧美视频在线观看| 欧美日韩一二三区| 国产1区2区3区精品美女| 亚洲国产欧美日韩另类综合| 欧美成人a视频| 色婷婷综合久久久久中文| 麻豆精品国产传媒mv男同| 日韩一区欧美一区| 日韩欧美成人一区二区| 91麻豆国产福利在线观看| 精品一二三四区| 亚洲午夜一二三区视频| 国产日韩三级在线| 日韩一级片网站| 一本大道久久精品懂色aⅴ| 另类中文字幕网| 亚洲一级片在线观看| 国产欧美日韩在线视频| 日韩欧美国产麻豆| 欧美午夜精品久久久久久孕妇 | 91蜜桃视频在线| 国产尤物一区二区在线 | 亚洲精品日韩一| 国产亚洲欧美日韩俺去了| 欧美一卡二卡在线观看| 在线观看一区二区视频| 成人爽a毛片一区二区免费| 久久66热偷产精品| 青青草97国产精品免费观看| 亚洲国产色一区| 一区二区三区在线视频免费| 日本一区二区三级电影在线观看| 欧美一区二区三区影视| 在线免费一区三区| 色婷婷久久一区二区三区麻豆| 成人深夜在线观看| eeuss鲁片一区二区三区在线观看| 狠狠色狠狠色综合| 国产一区二区三区四| 国产真实乱对白精彩久久| 久久精品国产免费看久久精品| 日韩电影免费在线观看网站| 午夜日韩在线观看| 亚洲成人一区二区在线观看| 亚洲一区在线观看视频| 亚洲一区二区三区在线播放| 一区二区三区日韩欧美| 亚洲最大的成人av| 亚洲成av人在线观看| 亚洲成av人片在线观看无码| 日韩国产高清在线| 美女视频黄 久久| 精品中文字幕一区二区| 国产盗摄女厕一区二区三区| 国产精品亚洲а∨天堂免在线| 国产suv精品一区二区883| 成人理论电影网| 色综合久久99| 欧美日韩亚洲另类| 日韩欧美在线观看一区二区三区| 日韩精品一区二区在线| 国产亚洲精品精华液| 一色屋精品亚洲香蕉网站| 一区二区国产视频| 日本aⅴ亚洲精品中文乱码| 国产一区二区三区香蕉| 99视频国产精品| 在线日韩一区二区| 日韩精品一区国产麻豆| 中日韩av电影| 亚洲一区二区欧美| 九色porny丨国产精品| 成人av网址在线| 在线成人小视频| 国产天堂亚洲国产碰碰| 一区二区三区中文字幕精品精品 | 欧美电影精品一区二区| 国产精品三级av在线播放| 亚洲一区二区三区在线看| 久久99日本精品| 91亚洲精品久久久蜜桃网站| 51久久夜色精品国产麻豆| 久久久精品综合| 亚洲一二三四在线| 国产91清纯白嫩初高中在线观看| 欧美吻胸吃奶大尺度电影| 久久一留热品黄| 亚洲va国产va欧美va观看| 国产成人日日夜夜| 欧美精品三级在线观看| 国产精品视频在线看| 日韩av电影免费观看高清完整版| 国产99久久久久| 欧美一级专区免费大片| 亚洲免费观看高清完整版在线观看 | 丝袜美腿高跟呻吟高潮一区| 国产成人aaaa| 精品久久久久久久久久久久包黑料| 亚洲欧洲日韩综合一区二区| 久久国产剧场电影| 欧美三级日韩三级国产三级| 中文字幕一区二区三| 狠狠色狠狠色合久久伊人| 欧美日韩高清在线播放| 亚洲精品国产视频| 国产91富婆露脸刺激对白| 欧美电视剧在线看免费| 日韩精品亚洲一区| 欧美日韩国产综合视频在线观看| 国产精品久久久久久久久果冻传媒| 精品中文字幕一区二区小辣椒| 欧美放荡的少妇| 丝袜美腿亚洲综合| 欧美日韩中字一区| 伊人一区二区三区| 91视视频在线观看入口直接观看www | 欧美日韩二区三区| 一区二区三区视频在线观看| 成人在线一区二区三区| 精品国产电影一区二区| 久久国产麻豆精品| 日韩精品资源二区在线| 日韩av一区二区三区| 91精品国产综合久久久久久久久久 | 捆绑调教一区二区三区| 日韩一区二区三| 日本不卡免费在线视频| 日韩一卡二卡三卡四卡|