Changeset 450

Show
Ignore:
Timestamp:
07/19/07 23:21:39 (1 year ago)
Author:
blackhedd
Message:

dev

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • version_0/java/src/com/rubyeventmachine/EmReactor.java

    r448 r450  
    158158                                                EventableChannel ec = (EventableChannel)k.attachment(); 
    159159                                                if (!ec.writeOutboundData()) { 
     160                                                        eventCallback (ec.getBinding(), EM_CONNECTION_UNBOUND, EmptyByteBuffer); 
    160161                                                        Connections.remove (ec.getBinding()); 
    161162                                                        k.channel().close(); 
     
    240241        } 
    241242         
     243        public void sendData (String sig, ByteBuffer bb) throws IOException { 
     244                (Connections.get(sig)).scheduleOutboundData( bb ); 
     245        } 
    242246        public void sendData (String sig, String data, int length) throws IOException { 
    243                 (Connections.get(sig)).scheduleOutboundData( ByteBuffer.wrap(data.getBytes())); 
     247                sendData (sig, ByteBuffer.wrap(data.getBytes())); 
     248                //(Connections.get(sig)).scheduleOutboundData( ByteBuffer.wrap(data.getBytes())); 
    244249        } 
    245250         
     
    280285 
    281286        public void closeConnection (String sig, boolean afterWriting) throws ClosedChannelException { 
     287                //System.out.println ("???"+Connections.get(sig)); 
    282288                Connections.get(sig).scheduleClose (afterWriting); 
    283289        } 
  • version_0/java/src/com/rubyeventmachine/EventableChannel.java

    r438 r450  
    8181                                break; 
    8282                } 
    83                  
     83 
    8484                if (OutboundQ.isEmpty()) 
    8585                        myChannel.register(mySelector, SelectionKey.OP_READ, this); 
  • version_0/java/src/com/rubyeventmachine/tests/TestTimers.java

    r447 r450  
    11package com.rubyeventmachine.tests; 
    22 
     3import com.rubyeventmachine.*; 
     4import java.io.*; 
    35 
     6import org.junit.Assert; 
    47import org.junit.After; 
    58import org.junit.AfterClass; 
     
    2730        } 
    2831 
     32 
     33         
    2934        @Test 
    30         public final void testTimer1()
    31                 System.out.println (">>>"); 
    32                 class x implements Runnable
    33                         public void run() { 
    34                                 System.out.println ("running"); 
     35        public final void test2() throws IOException
     36                Application a = new Application(); 
     37                a.addTimer(0, new Timer()
     38                        public void fire() { 
     39                                application.stop(); 
    3540                        } 
    36                 }; 
    37                 new x().run(); 
     41                }); 
     42                a.run(); 
     43                Assert.assertEquals (1, 1); // just to make sure the reactor halts. 
    3844        } 
    3945         
    40          
     46        @Test 
     47        public final void test3() throws IOException { 
     48                Application a = new Application(); 
     49                a.addTimer (0.1, new PeriodicTimer() { 
     50                        int n = 0; 
     51                        public void fire() { 
     52                                n++; 
     53                                if (n == 5) 
     54                                        application.stop(); 
     55                        } 
     56                }); 
     57                a.run(); 
     58                Assert.assertEquals(1, 1); 
     59        } 
    4160}