xmlBlaster 2.2.0 API

org.xmlBlaster.test.stress
Class BigMessage

java.lang.Object
  extended by junit.framework.Assert
      extended by junit.framework.TestCase
          extended by org.xmlBlaster.test.stress.BigMessage
All Implemented Interfaces:
junit.framework.Test, I_Callback

public class BigMessage
extends junit.framework.TestCase
implements I_Callback

This client tests a message of 2 Megabytes published and subscribed

We start our own xmlBlaster server in a thread.

Invoke examples:
    java junit.textui.TestRunner org.xmlBlaster.test.stress.BigMessage
    java junit.swingui.TestRunner -noloading org.xmlBlaster.test.stress.BigMessage
 


Field Summary
private  java.lang.String assertInUpdate
           
private  I_XmlBlasterAccess con
           
private  int contentSize
           
private  Global glob
           
private static java.util.logging.Logger log
           
private static java.lang.String ME
           
private  boolean messageArrived
           
private  java.lang.String name
           
private  java.lang.String oid
           
private  java.lang.String passwd
           
private  int serverPort
           
private  EmbeddedXmlBlaster serverThread
           
private  boolean startEmbedded
           
private  StopWatch stopWatchRoundTrip
           
 
Constructor Summary
BigMessage(java.lang.String testName)
          Constructs the BigMessage object.
 
Method Summary
static void main(java.lang.String[] args)
          Invoke:
protected  void setUp()
          Sets up the fixture.
protected  void tearDown()
          Tears down the fixture.
 void testBigMessage()
          Create a RDBMS table, fill some data and destroy it again.
 java.lang.String update(java.lang.String cbSessionId, UpdateKey updateKey, byte[] content, UpdateQos updateQos)
          This is the callback method invoked from xmlBlaster delivering us a new asynchronous message.
private  void waitOnUpdate(long timeout)
          Little helper, waits until the variable 'messageArrive' is set to true, or fails when the given timeout occurs.
 
Methods inherited from class junit.framework.TestCase
countTestCases, createResult, getName, run, run, runBare, runTest, setName, toString
 
Methods inherited from class junit.framework.Assert
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ME

private static java.lang.String ME

glob

private final Global glob

log

private static java.util.logging.Logger log

con

private I_XmlBlasterAccess con

name

private java.lang.String name

passwd

private java.lang.String passwd

serverThread

private EmbeddedXmlBlaster serverThread

startEmbedded

private boolean startEmbedded

serverPort

private int serverPort

oid

private java.lang.String oid

contentSize

private int contentSize

messageArrived

private boolean messageArrived

assertInUpdate

private java.lang.String assertInUpdate

stopWatchRoundTrip

private StopWatch stopWatchRoundTrip
Constructor Detail

BigMessage

public BigMessage(java.lang.String testName)
Constructs the BigMessage object.

Parameters:
testName - The name used in the test suite
Method Detail

setUp

protected void setUp()
Sets up the fixture.

We start an own xmlBlaster server in a separate thread, it is configured to load the tinySQL BigMessage driver to test SQL access (with dBase files)

Then we connect as a client

Overrides:
setUp in class junit.framework.TestCase

tearDown

protected void tearDown()
Tears down the fixture.

cleaning up .... erase() the previous message OID and logout

Overrides:
tearDown in class junit.framework.TestCase

testBigMessage

public void testBigMessage()
Create a RDBMS table, fill some data and destroy it again. We use the tinySQL dBase BigMessage driver for testing.


update

public java.lang.String update(java.lang.String cbSessionId,
                               UpdateKey updateKey,
                               byte[] content,
                               UpdateQos updateQos)
This is the callback method invoked from xmlBlaster delivering us a new asynchronous message.

Specified by:
update in interface I_Callback
Parameters:
cbSessionId - The session ID specified by the client which registered the callback. You can specify a cbSessionId during connection (with ConnectQos) and this is bounced back here so you can authenticate the message.
updateKey - The arrived key containing the topic name
content - The arrived message content. This is your payload.
See Also:
I_Callback.update(String, UpdateKey, byte[], UpdateQos)

waitOnUpdate

private void waitOnUpdate(long timeout)
Little helper, waits until the variable 'messageArrive' is set to true, or fails when the given timeout occurs.

Parameters:
timeout - in milliseconds

main

public static void main(java.lang.String[] args)
Invoke:
  java org.xmlBlaster.test.stress.BigMessage -contentSize 2000000 -startEmbedded false
 


xmlBlaster 2.2.0 API

Copyright © 1999-2014 The xmlBlaster.org contributers.