Mercurial > hg > blitz_stable
diff test/org/dancres/blitz/BulkWriteTakeTest.java @ 0:3dc0c5604566
Initial checkin of blitz 2.0 fcs - no installer yet.
author | Dan Creswell <dan.creswell@gmail.com> |
---|---|
date | Sat, 21 Mar 2009 11:00:06 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/org/dancres/blitz/BulkWriteTakeTest.java Sat Mar 21 11:00:06 2009 +0000 @@ -0,0 +1,87 @@ +package org.dancres.blitz; + +import java.util.ArrayList; +import java.util.List; +import java.util.Collection; +import java.util.Iterator; + +import net.jini.core.entry.Entry; +import net.jini.core.lease.Lease; + +import org.dancres.blitz.mangler.*; + +public class BulkWriteTakeTest { + public static void main(String args[]) { + + try { + System.out.println("Start space"); + + SpaceImpl mySpace = new SpaceImpl(null); + + System.out.println("Prepare entry"); + + EntryMangler myMangler = new EntryMangler(); + + ArrayList myMangled = new ArrayList(); + ArrayList myLeases = new ArrayList(); + + for (int i = 0; i < 100; i++) { + TestEntry myEntry = new TestEntry(Integer.toString(i)); + MangledEntry myPackedEntry = myMangler.mangle(myEntry); + myMangled.add(myPackedEntry); + myLeases.add(new Long(300000 + i)); + } + + List myLeaseResults = mySpace.write(myMangled, null, myLeases); + + for (int i = 0; i < myLeaseResults.size(); i++) { + System.out.println("Lease: " + i + " is " + ((WriteTicket) myLeaseResults.get(i)).getExpirationTime()); + } + + MangledEntry myTemplate = myMangler.mangle(new TestEntry()); + + Collection myTakes; + int myTotal = 0; + + while ((myTakes = mySpace.take(new MangledEntry[] {myTemplate}, + null, 30000, 25)).size() != 0) { + + System.out.println("Chunk"); + Iterator myTaken = myTakes.iterator(); + while (myTaken.hasNext()) { + System.out.println(myTaken.next()); + ++myTotal; + } + } + + System.out.println("Total takes: " + myTotal); + + mySpace.stop(); + + } catch (Exception anE) { + System.err.println("Got exception :("); + anE.printStackTrace(System.err); + } + + } + + public static class TestEntry implements Entry { + public String rhubarb; + public Integer count; + + public TestEntry(String aThing) { + } + + public TestEntry() { + } + + public void init() { + rhubarb = "blah"; + count = new Integer(5); + } + + public String toString() { + return super.toString() + ", " + rhubarb + ", " + count; + } + } +}