[jboss-cvs] JBoss Messaging SVN: r6350 - in trunk/examples/jms/large-message: server0 and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Apr 7 20:48:56 EDT 2009
Author: clebert.suconic at jboss.com
Date: 2009-04-07 20:48:55 -0400 (Tue, 07 Apr 2009)
New Revision: 6350
Modified:
trunk/examples/jms/large-message/
trunk/examples/jms/large-message/server0/
trunk/examples/jms/large-message/src/org/jboss/jms/example/LargeMessageExample.java
Log:
svn:ignore changes
Property changes on: trunk/examples/jms/large-message
___________________________________________________________________
Name: svn:ignore
- build
+ build
logs
Property changes on: trunk/examples/jms/large-message/server0
___________________________________________________________________
Name: svn:ignore
+ logs
data
Modified: trunk/examples/jms/large-message/src/org/jboss/jms/example/LargeMessageExample.java
===================================================================
--- trunk/examples/jms/large-message/src/org/jboss/jms/example/LargeMessageExample.java 2009-04-07 19:05:09 UTC (rev 6349)
+++ trunk/examples/jms/large-message/src/org/jboss/jms/example/LargeMessageExample.java 2009-04-08 00:48:55 UTC (rev 6350)
@@ -21,6 +21,12 @@
*/
package org.jboss.jms.example;
+import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+
import javax.jms.BytesMessage;
import javax.jms.Connection;
import javax.jms.ConnectionFactory;
@@ -30,6 +36,8 @@
import javax.jms.Session;
import javax.naming.InitialContext;
+import org.jboss.messaging.jms.client.JBossMessage;
+
/**
* A simple JMS Queue example that creates a producer and consumer on a queue and sends then receives a message.
*
@@ -46,6 +54,7 @@
{
Connection connection = null;
InitialContext initialContext = null;
+ File tmpFile = File.createTempFile("example", ".jbm");
try
{
//Step 1. Create an initial context to perform the JNDI lookup.
@@ -66,12 +75,25 @@
//Step 6. Create a JMS Message Producer
MessageProducer producer = session.createProducer(queue);
+ {
+ FileOutputStream fileOut = new FileOutputStream(tmpFile);
+ BufferedOutputStream buffOut = new BufferedOutputStream(fileOut);
+ byte[] outBuffer = new byte[1024 * 1024];
+ for (int i = 0; i < 100 ; i++)
+ {
+ buffOut.write(outBuffer);
+ }
+ buffOut.close();
+ outBuffer = null;
+ }
+
+ FileInputStream fileInput = new FileInputStream(tmpFile);
+ BufferedInputStream buffered = new BufferedInputStream(fileInput);
+
//Step 7. Create a BytesMessage with 1MB arbitrary bytes
BytesMessage message = session.createBytesMessage();
- byte[] bytes = new byte[100 * 1024 * 1024];
- message.writeBytes(bytes);
- System.out.println("Sending message of " + bytes.length + " bytes");
+ ((JBossMessage)message).getCoreMessage().setBodyInputStream(buffered);
//Step 8. Send the Message
producer.send(message);
@@ -88,8 +110,14 @@
//Step 11. Receive the message
BytesMessage messageReceived = (BytesMessage) messageConsumer.receive(60000);
+
+ byte bytes[] = new byte[1024 * 1024];
+ for (int i = 0; i < 100 ; i++)
+ {
+ messageReceived.readBytes(bytes);
+ }
- System.out.println("Received message: " + messageReceived.getBodyLength() + " bytes");
+ System.out.println("Received message: " + /*messageReceived.getBodyLength() + */" bytes");
initialContext.close();
@@ -97,6 +125,13 @@
}
finally
{
+ try
+ {
+ tmpFile.delete();
+ }
+ catch (Throwable ignored)
+ {
+ }
//Step 12. Be sure to close our JMS resources!
if (initialContext != null)
{
More information about the jboss-cvs-commits
mailing list