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

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

?? shpfileslockingtest.java

?? shape file read and write
?? JAVA
字號:
package org.geotools.data.shapefile;

import static org.geotools.data.shapefile.ShpFileType.*;

import java.io.File;
import java.net.URL;

import junit.framework.TestCase;

import org.geotools.data.shapefile.ShpFiles.State;

public class ShpFilesLockingTest extends TestCase implements FileWriter {

    @Override
    protected void setUp() throws Exception {
        super.setUp();
        getClass().getClassLoader().setDefaultAssertionStatus(true);
        
    }
    
    @Override
    protected void tearDown() throws Exception {
        super.tearDown();

        Runtime.getRuntime().runFinalization();
    }

    public void testAcquireReadFile() throws Throwable {
        ShpFiles shpFiles = new ShpFiles("http://somefile.com/shp.shp");

        try{
            shpFiles.acquireReadFile(DBF, this);
            fail("Not a file should send exception");
        }catch(IllegalStateException e ){
            // good
        }
        

        String path = "somefile.shp";
        shpFiles = new ShpFiles("file://"+path);

        File file = shpFiles.acquireReadFile(SHP, this);
        assertEquals(path, file.getPath());
        assertEquals(1, shpFiles.numberOfLocks());
        
        shpFiles.unlockRead(file, this);
        shpFiles.finalize();
    }
    public void testAcquireWriteFile() throws Throwable {
        ShpFiles shpFiles = new ShpFiles("http://somefile.com/shp.shp");

        try {
            shpFiles.acquireWriteFile(DBF, this);
            fail("Not a file should send exception");
        } catch (IllegalStateException e) {
            // good
        }
        

        String path = "somefile.shp";
        shpFiles = new ShpFiles("file://"+path);

        File file = shpFiles.acquireWriteFile(SHP, this);
        assertEquals(path, file.getPath());
        assertEquals(1, shpFiles.numberOfLocks());
        
        shpFiles.unlockWrite(file, this);
        assertEquals(0, shpFiles.numberOfLocks());
        shpFiles.finalize();
    }

    public void testAcquireRead1() throws Throwable {
        ShpFiles shpFiles = new ShpFiles("http://somefile.com/shp.shp");

        URL url = shpFiles.acquireRead(DBF, this);
        assertEquals("http://somefile.com/shp.dbf", url.toExternalForm());
        assertEquals(1, shpFiles.numberOfLocks());
        FileWriter testWriter = new FileWriter() {

            public String id() {
                return "Other";
            }

        };

        // same thread should work
        Result<URL, State> result1 = shpFiles.tryAcquireRead(SHX, testWriter);
        assertEquals("http://somefile.com/shp.shx", result1.value
                .toExternalForm());
        assertEquals(2, shpFiles.numberOfLocks());

        // same thread should work
        Result<URL, State> result2 = shpFiles.tryAcquireRead(DBF, this);
        assertEquals("http://somefile.com/shp.dbf", result2.value
                .toExternalForm());
        assertEquals(3, shpFiles.numberOfLocks());

        shpFiles.unlockRead(result2.value, this);
        shpFiles.unlockRead(result1.value, testWriter);
        shpFiles.unlockRead(url, this);
        shpFiles.finalize();
    }

    public void testUnlockReadAssertion() throws Throwable {
        ShpFiles shpFiles = new ShpFiles("http://somefile.com/shp.shp");

        URL url = shpFiles.acquireRead(DBF, this);
        assertEquals("http://somefile.com/shp.dbf", url.toExternalForm());
        assertEquals(1, shpFiles.numberOfLocks());
        FileWriter testWriter = new FileWriter() {

            public String id() {
                return "Other";
            }

        };

        // same thread should work
        Result<URL, State> result1 = shpFiles.tryAcquireRead(SHX, testWriter);
        assertEquals("http://somefile.com/shp.shx", result1.value
                .toExternalForm());
        assertEquals(2, shpFiles.numberOfLocks());

        try {
            shpFiles.unlockRead(result1.value, this);
            throw new RuntimeException(
                    "Unlock should fail because it is in the wrong reader");
        } catch (IllegalArgumentException e) {
            // good
        } catch (RuntimeException e) {
            fail(e.getMessage());
        }

        shpFiles.unlockRead(result1.value, testWriter);
        shpFiles.unlockRead(url, this);
        shpFiles.finalize();
    }

    public void testUnlockWriteAssertion() throws Throwable {
        ShpFiles shpFiles = new ShpFiles("http://somefile.com/shp.shp");

        URL url = shpFiles.acquireWrite(DBF, this);
        assertEquals("http://somefile.com/shp.dbf", url.toExternalForm());
        assertEquals(1, shpFiles.numberOfLocks());
        FileWriter testWriter = new FileWriter() {

            public String id() {
                return "Other";
            }

        };

        // same thread should work
        Result<URL, State> result1 = shpFiles.tryAcquireWrite(SHX, testWriter);
        assertEquals("http://somefile.com/shp.shx", result1.value
                .toExternalForm());
        assertEquals(2, shpFiles.numberOfLocks());

        try {
            shpFiles.unlockRead(result1.value, this);
            throw new RuntimeException(
                    "Unlock should fail because it is in the wrong reader");
        } catch (IllegalArgumentException e) {
            // good
        } catch (RuntimeException e) {
            fail(e.getMessage());
        }

        shpFiles.unlockWrite(url, this);
        shpFiles.unlockWrite(result1.value, testWriter);
        shpFiles.finalize();
    }

    public String id() {
        return getClass().getName();
    }

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本色道久久综合精品竹菊 | 国产婷婷色一区二区三区四区| 成人一区在线观看| 蜜桃一区二区三区在线| 一区二区三区不卡视频在线观看| 久久人人爽人人爽| 国产亚洲综合av| 国产午夜精品久久| 国产精品免费aⅴ片在线观看| 久久精品欧美一区二区三区麻豆| 国产欧美精品国产国产专区| 国产人伦精品一区二区| 久久精子c满五个校花| 久久久亚洲欧洲日产国码αv| 欧美电影免费观看高清完整版在线 | 久久久九九九九| 久久麻豆一区二区| 欧美激情一区二区三区四区| 中文字幕精品综合| 亚洲日本va在线观看| 亚洲一区在线看| 美女一区二区在线观看| 国产精品自在在线| 91欧美一区二区| 欧美视频在线不卡| 日韩你懂的在线观看| 日本一区二区三区四区| 一区二区三区国产| 老司机精品视频导航| 成人小视频在线观看| 欧美性生活影院| 久久午夜国产精品| 亚洲精选一二三| 免费成人小视频| aaa欧美色吧激情视频| 欧美日韩小视频| 欧美tk—视频vk| 制服.丝袜.亚洲.中文.综合| 精品欧美乱码久久久久久1区2区 | 欧美一区二区三区男人的天堂| 欧美日韩的一区二区| 精品日韩一区二区三区 | 国产精品情趣视频| 亚洲激情网站免费观看| 亚洲第一狼人社区| 国内外成人在线视频| 成人免费高清在线| 欧洲精品在线观看| 欧美成人精品二区三区99精品| 久久久久久97三级| 亚洲午夜在线视频| 国产伦精品一区二区三区免费迷 | 国产女同互慰高潮91漫画| 亚洲天堂成人在线观看| 天天av天天翘天天综合网| 国产在线播精品第三| 99久久精品免费看国产| 日韩欧美电影在线| 中文字幕日本乱码精品影院| 无码av免费一区二区三区试看| 精品在线亚洲视频| 色吧成人激情小说| 亚洲精品一区二区三区蜜桃下载| 中文字幕一区日韩精品欧美| 国产专区欧美精品| 欧美精品高清视频| 一区二区三区久久久| 国产精品911| 久久毛片高清国产| 美女精品一区二区| 91精品国产入口| 亚洲人成伊人成综合网小说| 国产一区二区免费在线| 欧美精品久久久久久久多人混战 | 国产精品久久久久久妇女6080 | 欧美视频一区在线观看| 亚洲成人在线观看视频| www.色精品| 国产女同互慰高潮91漫画| 国产乱码精品一区二区三| 欧美一区二区三区成人| 午夜国产不卡在线观看视频| 91麻豆国产福利精品| 欧美刺激午夜性久久久久久久| 天天操天天色综合| 91精品久久久久久久久99蜜臂| 亚洲大尺度视频在线观看| 色婷婷精品久久二区二区蜜臂av | 色www精品视频在线观看| 亚洲综合色在线| 色综合色狠狠天天综合色| 亚洲婷婷国产精品电影人久久| a4yy欧美一区二区三区| 玉足女爽爽91| 在线观看国产精品网站| 视频在线观看国产精品| 制服丝袜一区二区三区| 韩国视频一区二区| 久久你懂得1024| 色综合中文字幕国产| 精品久久一二三区| 五月激情综合色| 精品电影一区二区| 国产成人三级在线观看| 国产精品亲子伦对白| 国产成人日日夜夜| 亚洲国产视频一区| 91精品国产欧美一区二区成人| 三级成人在线视频| 日韩视频一区二区| 国产高清亚洲一区| 国产精品久久久久久久久免费丝袜| bt欧美亚洲午夜电影天堂| 中文字幕在线播放不卡一区| 欧洲av在线精品| 久久精品免费观看| 国产三级欧美三级日产三级99| 国产精品一二三四| 亚洲欧美在线aaa| 欧美体内she精视频| 日韩中文字幕区一区有砖一区| 日韩一区二区三| 国产成人自拍高清视频在线免费播放| 欧美国产精品一区二区| 欧洲av一区二区嗯嗯嗯啊| 日韩精品91亚洲二区在线观看| 日韩精品专区在线| 99久久国产综合精品色伊| 欧美亚洲一区二区三区四区| 蜜臀91精品一区二区三区 | 亚洲电影一区二区三区| 色94色欧美sute亚洲13| 国产一区二区免费看| 一区二区三区在线不卡| 精品国产网站在线观看| 91麻豆视频网站| 国产一区二区日韩精品| 亚洲成人福利片| 欧美激情中文字幕| 91精品国产免费| 国产成人午夜高潮毛片| 亚洲国产成人91porn| 欧美激情一区二区三区| 这里是久久伊人| 99精品视频中文字幕| 久久精品国产77777蜜臀| 亚洲综合免费观看高清完整版| 欧美激情在线观看视频免费| 久久夜色精品一区| 91精品国产品国语在线不卡| 欧美日韩一级黄| 色一区在线观看| 成人污污视频在线观看| 国内精品写真在线观看| 中文字幕一区二区不卡| 欧美一三区三区四区免费在线看 | 国产 日韩 欧美大片| 国产九色精品成人porny| 日本亚洲最大的色成网站www| 国产精品萝li| 久久久不卡网国产精品一区| 欧美一卡2卡三卡4卡5免费| 日本韩国欧美一区二区三区| 国产91色综合久久免费分享| 蜜臀av性久久久久av蜜臀妖精| 亚洲午夜久久久久久久久电影网| 国产日韩av一区二区| 亚洲精品在线三区| 日韩欧美不卡一区| 精品日韩欧美一区二区| 91精品欧美一区二区三区综合在 | 欧美日韩高清不卡| 欧美在线综合视频| 91福利资源站| 欧美性色黄大片手机版| 色呦呦一区二区三区| 欧美无乱码久久久免费午夜一区| 国产69精品一区二区亚洲孕妇| 99精品国产视频| 91影院在线观看| 在线看国产一区二区| 91国产福利在线| 欧美高清视频在线高清观看mv色露露十八| 欧美伊人久久久久久午夜久久久久| 色综合久久中文综合久久牛| 97国产一区二区| 欧美视频你懂的| 欧美一区二区三区不卡| 久久亚洲综合av| 国产精品久线在线观看| 亚洲免费观看高清完整| 亚洲va国产va欧美va观看| 亚洲一区二区三区四区在线观看 | 久久婷婷一区二区三区| 欧美国产禁国产网站cc| 一区二区三区精品视频| 亚洲精品高清在线观看| 亚洲www啪成人一区二区麻豆| 免费成人你懂的| 成人综合在线视频|