[jboss-cvs] JBoss Messaging SVN: r3712 - in projects/jaio/trunk/jaio/java: tests/org/jboss/jaio/libaioimpl/test and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Feb 12 16:17:08 EST 2008


Author: clebert.suconic at jboss.com
Date: 2008-02-12 16:17:08 -0500 (Tue, 12 Feb 2008)
New Revision: 3712

Added:
   projects/jaio/trunk/jaio/java/tests/org/jboss/jaio/libaioimpl/test/TestController.java
Removed:
   projects/jaio/trunk/jaio/java/tests/org/jboss/jaio/libaioimpl/test/TestInit.java
Modified:
   projects/jaio/trunk/jaio/java/src/org/jboss/jaio/libaioimpl/LibAIOController.java
Log:
Few tweaks

Modified: projects/jaio/trunk/jaio/java/src/org/jboss/jaio/libaioimpl/LibAIOController.java
===================================================================
--- projects/jaio/trunk/jaio/java/src/org/jboss/jaio/libaioimpl/LibAIOController.java	2008-02-12 21:16:01 UTC (rev 3711)
+++ projects/jaio/trunk/jaio/java/src/org/jboss/jaio/libaioimpl/LibAIOController.java	2008-02-12 21:17:08 UTC (rev 3712)
@@ -17,12 +17,6 @@
     // Warning: Beware of the C++ pointer! It will bite you! :-) 
     private long handler;
     
-    public static void main(String arg[])
-    {
-        LibAIOController io = new LibAIOController();
-        io.open("/tmp/lixo.log");
-    }
-    
     static
     {
         try
@@ -48,9 +42,14 @@
         handler = init (fileName, AIOPackage.class);
     }
     
+    public void open(String fileName, int pageSize)
+    {
+        handler = init (fileName, pageSize, AIOPackage.class);
+    }
+    
     public void close()
     {
-        //closeInternal(handler);
+        closeInternal(handler);
         handler = 0;
     }
     
@@ -88,9 +87,12 @@
     @SuppressWarnings("unchecked")
     private static native long init(String fileName, Class aioPackageClazz);
     
+    @SuppressWarnings("unchecked")
+    private static native long init(String fileName, int pageSize, Class aioPackageClazz);
+    
     private static native void append(long handle, AIOPackage aioPackage);
 
     private static native void flushMemory(long handle);
     
-    //private static native void closeInternal(long handler);
+    private static native void closeInternal(long handler);
 }

Copied: projects/jaio/trunk/jaio/java/tests/org/jboss/jaio/libaioimpl/test/TestController.java (from rev 3709, projects/jaio/trunk/jaio/java/tests/org/jboss/jaio/libaioimpl/test/TestInit.java)
===================================================================
--- projects/jaio/trunk/jaio/java/tests/org/jboss/jaio/libaioimpl/test/TestController.java	                        (rev 0)
+++ projects/jaio/trunk/jaio/java/tests/org/jboss/jaio/libaioimpl/test/TestController.java	2008-02-12 21:17:08 UTC (rev 3712)
@@ -0,0 +1,124 @@
+package org.jboss.jaio.libaioimpl.test;
+
+import java.io.File;
+import java.nio.ByteBuffer;
+
+import org.jboss.jaio.api.AIOPackage;
+import org.jboss.jaio.libaioimpl.LibAIOController;
+
+import junit.framework.TestCase;
+
+public class TestController extends TestCase
+{
+    
+    
+    
+    @Override
+    protected void setUp() throws Exception
+    {
+        super.setUp();
+        File file = new File("/tmp/libaio.log");
+        file.delete();
+    }
+
+    public void testOpen()throws Exception
+    {
+        LibAIOController controller = new LibAIOController();
+        controller.open("/tmp/libaio.log");
+        controller.close();
+    }
+    
+    public void testAddData() throws Exception
+    {
+        LibAIOController controller = new LibAIOController();
+        controller.open("/tmp/libaio.log", 1024*1024);
+        LocalAIO aio = new LocalAIO();
+        
+        controller.append(aio);
+        controller.append(aio);
+        controller.append(aio);
+        assertTrue(aio.encodeCalled);
+        assertTrue(aio.encodeSizeCalled);
+        assertFalse(aio.doneCalled);
+        
+        controller.flushMemory();
+        
+        assertTrue(aio.doneCalled);
+        controller.close();
+        
+    }
+    
+    public void testPage() throws Exception
+    {
+        LibAIOController controller = new LibAIOController();
+        controller.open("/tmp/libaio.log", 8);
+        LocalAIO aio = new LocalAIO(500);
+        
+        controller.append(aio);
+        controller.flushMemory();
+        assertTrue(aio.doneCalled);
+        assertEquals(1, aio.timesDoneCalled);
+        controller.close();
+        
+    }
+    
+    private static class LocalAIO implements AIOPackage
+    {
+
+        int times = 1;
+        public LocalAIO(int times)
+        {
+            this.times = times;
+        }
+        
+        public LocalAIO()
+        {
+            this.times = 1;
+        }
+        
+        boolean encodeCalled = false;
+        boolean encodeSizeCalled = false;
+        boolean doneCalled = false;
+        int timesDoneCalled = 0;
+        public void decode(int length, ByteBuffer buffer)
+        {
+            // TODO Auto-generated method stub
+            
+        }
+
+        public void done()
+        {
+//            System.out.println("Done called");
+            doneCalled = true;
+            timesDoneCalled++;
+            
+        }
+
+        public void encode(ByteBuffer buffer)
+        {
+            encodeCalled = true;
+            for (int i=0; i<times; i++)
+            {
+                buffer.put((byte)'A');
+                buffer.put((byte)'B');
+                buffer.put((byte)'C');
+                buffer.put((byte)'D');
+                buffer.put((byte)'E');
+                buffer.put((byte)'F');
+                buffer.put((byte)'G');
+                buffer.put((byte)'H');
+                buffer.put((byte)'I');
+                buffer.put((byte)'\n');
+            }
+        }
+
+        public int encodeSize()
+        {
+            System.out.println("Size called");
+            System.out.flush();
+            encodeSizeCalled = true;
+            return 10 * times;
+        }
+        
+    }
+}

Deleted: projects/jaio/trunk/jaio/java/tests/org/jboss/jaio/libaioimpl/test/TestInit.java
===================================================================
--- projects/jaio/trunk/jaio/java/tests/org/jboss/jaio/libaioimpl/test/TestInit.java	2008-02-12 21:16:01 UTC (rev 3711)
+++ projects/jaio/trunk/jaio/java/tests/org/jboss/jaio/libaioimpl/test/TestInit.java	2008-02-12 21:17:08 UTC (rev 3712)
@@ -1,81 +0,0 @@
-package org.jboss.jaio.libaioimpl.test;
-
-import java.nio.ByteBuffer;
-
-import org.jboss.jaio.api.AIOPackage;
-import org.jboss.jaio.libaioimpl.LibAIOController;
-
-import junit.framework.TestCase;
-
-public class TestInit extends TestCase
-{
-    
-    public void testOpen()throws Exception
-    {
-        LibAIOController controller = new LibAIOController();
-        controller.open("/tmp/libaio.log");
-    }
-    
-    public void testAddData() throws Exception
-    {
-        LibAIOController controller = new LibAIOController();
-        controller.open("/tmp/libaio.log");
-        LocalAIO aio = new LocalAIO();
-        
-        controller.append(aio);
-        controller.append(aio);
-        controller.append(aio);
-        assertTrue(aio.encodeCalled);
-        assertTrue(aio.encodeSizeCalled);
-        assertFalse(aio.doneCalled);
-        
-        controller.flushMemory();
-        
-        assertTrue(aio.doneCalled);
-        
-    }
-    
-    private static class LocalAIO implements AIOPackage
-    {
-
-        boolean encodeCalled = false;
-        boolean encodeSizeCalled = false;
-        boolean doneCalled = false;
-        public void decode(int length, ByteBuffer buffer)
-        {
-            // TODO Auto-generated method stub
-            
-        }
-
-        public void done()
-        {
-            System.out.println("Done called");
-            doneCalled = true;
-            
-        }
-
-        public void encode(ByteBuffer buffer)
-        {
-            encodeCalled = true;
-            buffer.put((byte)'C');
-            buffer.put((byte)'R');
-            buffer.put((byte)'S');
-            buffer.put((byte)'C');
-            buffer.put((byte)'R');
-            buffer.put((byte)'S');
-            buffer.put((byte)'C');
-            buffer.put((byte)'R');
-            buffer.put((byte)'S');
-            buffer.put((byte)'\n');
-        }
-
-        public int encodeSize()
-        {
-            System.out.println("Size called");
-            System.out.flush();
-            encodeSizeCalled = true;
-            return 10;
-        }
-        
-    }
-}




More information about the jboss-cvs-commits mailing list