⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 endpointapitest.java

📁 jxta_src_2.41b jxta 2.41b 最新版源码 from www.jxta.org
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        m.sendMessage(new Message(), null, null, this);        int n = 0;        while ((m.getState() & Messenger.RESOLVED) == 0) {            try {                Thread.sleep(100);            } catch(InterruptedException ie) {            }            if (n++ > 10) {                break;            }        }        while ((m.getState() & Messenger.RESOLVED) == 0) {            fail("could not resolve immediate messenger to local peer");        }        if (! waitForMessageSent()) {            if (! waitForMessage()) {                try {                    m.sendMessageB(new Message(), null, null);                } catch(IOException ioe) {                    fail("messenger resolved automatically, but cannot send messages. sendMessage Listener was NOT invoked.");                }                if (!waitForMessage()) {                    fail("messenger resolved automatically, but messages get lost after that. sendMessage Listener was NOT invoked.");                }                fail("messenger resolved automatically, but initial message was lost. sendMessage Listener was NOT invoked.");            }            fail("Message was sent but senMessageListener was NOT invoked.");        }        if (! waitForMessage()) {            try {                m.sendMessageB(new Message(), null, null);            } catch(IOException ioe) {                fail("messenger resolved automatically, but cannot send messages. sendMassage Listener was invoked.");            }            if (!waitForMessage()) {                fail("messenger resolved automatically, but messages get lost after that. sendMassage Listener was invoked.");            }            fail("messenger resolved automatically, but initial message was lost. sendMassage Listener was invoked.");        }    }    public void testCantGetRawMessenger() {        try {            Thread.sleep(5000);        } catch (Exception e) {        }        EndpointService endp = endp = pg.getEndpointService();                EndpointAddress badAddr = new EndpointAddress( "tcp://1.1.1.1:1/EndpointApiTest/0" );        Messenger m = endp.getMessengerImmediate(badAddr, null);        if (m == null) {            fail("could not get tcp messenger to local peer...tcp is on ?");        }        try {            m.sendMessageB(new Message(), null, null);        } catch(IOException ioe) {            fail("Cannot send messages to unresolved messenger");        }        // Leak test        for (int i=0; i< 1000000; i++) {            m = endp.getMessengerImmediate(badAddr, null);        }        m = null;        // Bottleneck test        for (int i=0; i< 1000000; i++) {            EndpointAddress changingSvc = new EndpointAddress( "tcp://1.1.1.1:1/EndpointApiTest/"+i);            m = endp.getMessengerImmediate(changingSvc, null);        }        m = null;    }    public void testCantGetRouterMessenger() {        try {            Thread.sleep(5000);        } catch (Exception e) {        }        EndpointService endp = endp = pg.getEndpointService();                EndpointAddress badAddr = new EndpointAddress( "jxta://uuid-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA03/EndpointApiTest/0");        Messenger m = endp.getMessengerImmediate(badAddr, null);        if (m == null) {            fail("could not get tcp messenger to local peer...tcp is on ?");        }        try {            m.sendMessageB(new Message(), null, null);        } catch(IOException ioe) {            fail("Cannot send messages to unresolved messenger");        }        // Leak test        for (int i=0; i< 1000000; i++) {            m = endp.getMessengerImmediate(badAddr, null);        }        m = null;        // Bottleneck test        for (int i=0; i< 1000000; i++) {            EndpointAddress changingSvc = new EndpointAddress( "tcp://1.1.1.1:1/EndpointApiTest/"+i);            m = endp.getMessengerImmediate(changingSvc, null);        }        m = null;    }    // This will exhaust the heap if channel caching does not work for unresolved messengers.    public void testMessageQueueHog() {        try {            Thread.sleep(5000);        } catch (Exception e) {        }        EndpointService endp = endp = pg.getEndpointService();                EndpointAddress badAddr = new EndpointAddress( "tcp://1.1.1.1:1/EndpointApiTest/0");        Messenger m = endp.getMessengerImmediate(badAddr, null);        if (m == null) {            fail("could not get tcp messenger to local peer...tcp is on ?");        }        try {            m.sendMessageB(new Message(), null, null);        } catch(IOException ioe) {            fail("Cannot send messages through unresolved messenger");        }        // Leak test...should explode the heap, as of now.        for (int i=0; i< 1000000; i++) {            m = endp.getMessengerImmediate(badAddr, null);            m.sendMessageN(new Message(), null, null);        }        m = null;    }    // This will exhaust the heap if channel caching does not work for resolved messengers.    public void testMessageQueueHog2() {        try {            Thread.sleep(5000);        } catch (Exception e) {        }        EndpointService endp = endp = pg.getEndpointService();                EndpointAddress localAddr = new EndpointAddress( "jxta", pg.getPeerID().getUniqueValue().toString(),"EndpointApiTest", "0");        Messenger m = endp.getMessengerImmediate(localAddr, null);        if (m == null) {            fail("could not get tcp messenger to local peer...tcp is on ?");        }        try {            m.sendMessageB(new Message(), null, null);        } catch(IOException ioe) {            fail("Cannot send messages through unresolved messenger");        }        // Leak test...should explode the heap, as of now.        for (int i=0; i< 1000000; i++) {            m = endp.getMessengerImmediate(localAddr, null);            m.sendMessageN(new Message(), null, null);        }        m = null;    }    public void testAddRmListener() {        try {            Thread.sleep(5000);        } catch (Exception e) {        }        EndpointService endp = endp = pg.getEndpointService();        // A few basic tests.        // Remove listener from previous test.        endp.removeIncomingMessageListener("EndpointApiTest", "0");        if ( endp.addIncomingMessageListener(this, "EndpointApiTest", "0")             == false ) {            fail("Could not add listener");        }        if ( endp.addIncomingMessageListener(this, "EndpointApiTest", "0")             == true ) {            fail("Could add redundant listener");        }        Object o = endp.removeIncomingMessageListener("EndpointApiTest", "0");        if (o != this ) {            fail("Wrong listener removed: " + o + " instead of " + this);        }        if ( endp.addIncomingMessageListener(this, "EndpointApiTest", "0")             == false ) {            fail("Could not add/remove/add listener");        }        if ( endp.removeIncomingMessageListener("EndpointApiTest", "0")             != this ) {            fail("Wrong listener add/remove/add/removed");        }        if ( endp.removeIncomingMessageListener("EndpointApiTest", "0")             != null ) {            fail("Listener removed twice");        }        // Leak tests.        EndpointAddress localAddr = new EndpointAddress( "jxta", pg.getPeerID().getUniqueValue().toString(),"EndpointApiTest", "0");        Messenger m = endp.getMessenger(localAddr);        if (m == null) {            fail("could not get tcp messenger to local peer...tcp is on ?");        }        // add/remove 500,000 times the same listener        for (int i = 1; i<500000; i++) {            if ( endp.addIncomingMessageListener(this, "EndpointApiTest", "0")                 == false ) {                fail("Could not add fixed listener after " + i + " cycles");            }            try {                m.sendMessage(new Message());            } catch (IOException ioe) {                fail("Cannot send messages to local fixed listener after " +                     i + " cycles");            }            if (! waitForMessage()) {                fail("Cannot receive messages through fixed listener after " +                     i + " cycles");            }            if ( endp.removeIncomingMessageListener("EndpointApiTest", "0")                 != this ) {                fail("Wrong fixed listener removed after " + i + " cycles");            }        }        // add/remove 500,000 different listeners        for (int i = 1; i<500000; i++) {            if ( endp.addIncomingMessageListener(this, "EndpointApiTest", ""+i)                 == false ) {                fail("Could not add variable listener after " + i + " cycles");            }            if ( endp.removeIncomingMessageListener("EndpointApiTest", ""+i)                 != this ) {                fail("Wrong variable listener removed after " + i + " cycles");            }        }    }    public static Test suite() {        TestSuite suite = new TestSuite(EndpointApiTest.class);        return suite;    }        public static void main(java.lang.String[] args) {        junit.textui.TestRunner.run(suite());        pg.unref();        pg = null;        System.out.flush();        System.err.flush();    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -