JBoss hornetq SVN: r8770 - in trunk/docs: user-manual/en and 1 other directory.
by do-not-reply@jboss.org
Author: timfox
Date: 2010-01-07 11:24:23 -0500 (Thu, 07 Jan 2010)
New Revision: 8770
Modified:
trunk/docs/quickstart-guide/en/introduction.xml
trunk/docs/user-manual/en/configuring-transports.xml
trunk/docs/user-manual/en/connection-ttl.xml
trunk/docs/user-manual/en/examples.xml
trunk/docs/user-manual/en/flow-control.xml
trunk/docs/user-manual/en/persistence.xml
trunk/docs/user-manual/en/transaction-config.xml
Log:
docs edits part 3
Modified: trunk/docs/quickstart-guide/en/introduction.xml
===================================================================
--- trunk/docs/quickstart-guide/en/introduction.xml 2010-01-07 14:48:27 UTC (rev 8769)
+++ trunk/docs/quickstart-guide/en/introduction.xml 2010-01-07 16:24:23 UTC (rev 8770)
@@ -21,7 +21,7 @@
<para>This short guide explains how to download, install and quickly get started with
HornetQ.</para>
<para>After downloading and installing we highly recommend you run the examples to get
- acquainted with HornetQ. We ship with over 65 examples demonstrating most of the
+ acquainted with HornetQ. We ship with over 70 examples demonstrating most of the
features.</para>
<para>This guide is not intended to be a replacement for the user manual. The user manual goes
into much more depth, so please consult that for further information.</para>
Modified: trunk/docs/user-manual/en/configuring-transports.xml
===================================================================
--- trunk/docs/user-manual/en/configuring-transports.xml 2010-01-07 14:48:27 UTC (rev 8769)
+++ trunk/docs/user-manual/en/configuring-transports.xml 2010-01-07 16:24:23 UTC (rev 8770)
@@ -176,7 +176,10 @@
<title>Configuring Netty TCP</title>
<para>Netty TCP is a simple unencrypted TCP sockets based transport. Netty TCP can be
configured to use old blocking Java IO or non blocking Java NIO. We recommend you
- use the default Java NIO for better scalability. </para>
+ use the Java NIO on the server side for better scalability with many concurrent
+ connections. However using Java old IO can sometimes give you better latency than
+ NIO when you're not so worried about supporting many thousands of concurrent
+ connections. </para>
<para>If you're running connections across an untrusted network please bear in mind this
transport is unencrypted. You may want to look at the SSL or HTTPS
configurations.</para>
@@ -190,25 +193,26 @@
can be used to configure Netty for simple TCP:</para>
<itemizedlist>
<listitem>
- <para><literal>usenio</literal>. If this is <literal
- >true</literal> then Java non blocking NIO will be used. If set to
- <literal>false</literal> than old blocking Java IO will be used.</para>
+ <para><literal>usenio</literal>. If this is <literal>true</literal> then Java
+ non blocking NIO will be used. If set to <literal>false</literal> than old
+ blocking Java IO will be used.</para>
<para>We highly recommend that you use non blocking Java NIO. Java NIO does not
maintain a thread per connection so can scale to many more concurrent
connections than with old blocking IO. We recommend the usage of Java 6 for
NIO and the best scalability. The default value for this property is
- <literal>true</literal>.</para>
+ <literal>true</literal> on the server side and <literal>false</literal>
+ on the client side.</para>
</listitem>
<listitem>
- <para><literal>host</literal>. This specified the host
- name or IP address to connect to (when configuring a connector) or to listen
- on (when configuring an acceptor). The default value for this property is
- <literal>localhost</literal>. When configuring acceptors, multiple hosts
- or IP addresses can be specified by separating them with commas. It is also
- possible to specify <code>0.0.0.0</code> to accept connection from all
- the host network interfaces. It's not
- valid to specify multiple addresses when specifying the host for a
- connector; a connector makes a connection to one specific address.</para>
+ <para><literal>host</literal>. This specifies the host name or IP address to
+ connect to (when configuring a connector) or to listen on (when configuring
+ an acceptor). The default value for this property is <literal
+ >localhost</literal>. When configuring acceptors, multiple hosts or IP
+ addresses can be specified by separating them with commas. It is also
+ possible to specify <code>0.0.0.0</code> to accept connection from all the
+ host's network interfaces. It's not valid to specify multiple addresses when
+ specifying the host for a connector; a connector makes a connection to one
+ specific address.</para>
<note>
<para>Don't forget to specify a host name or ip address! If you want your
server able to accept connections from other nodes you must specify a
@@ -218,22 +222,20 @@
</note>
</listitem>
<listitem>
- <para><literal>port</literal>. This specified the port to
- connect to (when configuring a connector) or to listen on (when configuring
- an acceptor). The default value for this property is <literal
- >5445</literal>.</para>
+ <para><literal>port</literal>. This specified the port to connect to (when
+ configuring a connector) or to listen on (when configuring an acceptor). The
+ default value for this property is <literal>5445</literal>.</para>
</listitem>
<listitem>
- <para><literal>tcpnodelay</literal>. If this is <literal
- >true</literal> then <ulink
- url="http://en.wikipedia.org/wiki/Nagle's_algorithm">Nagle's
+ <para><literal>tcpnodelay</literal>. If this is <literal>true</literal> then
+ <ulink url="http://en.wikipedia.org/wiki/Nagle's_algorithm">Nagle's
algorithm</ulink> will be enabled. The default value for this property
is <literal>true</literal>.</para>
</listitem>
<listitem>
- <para><literal>tcpsendbuffersize</literal>. This
- parameter determines the size of the TCP send buffer in bytes. The default
- value for this property is <literal>32768</literal> bytes (32KiB).</para>
+ <para><literal>tcpsendbuffersize</literal>. This parameter determines the size
+ of the TCP send buffer in bytes. The default value for this property is
+ <literal>32768</literal> bytes (32KiB).</para>
<para>TCP buffer sizes should be tuned according to the bandwidth and latency of
your network. Here's a good link that explains the theory behind <ulink
url="http://www-didc.lbl.gov/TCP-tuning/">this</ulink>.</para>
@@ -248,10 +250,9 @@
defaults.</para>
</listitem>
<listitem>
- <para><literal>tcpreceivebuffersize</literal>. This
- parameter determines the size of the TCP receive buffer in bytes. The
- default value for this property is <literal>32768</literal> bytes
- (32KiB).</para>
+ <para><literal>tcpreceivebuffersize</literal>. This parameter determines the
+ size of the TCP receive buffer in bytes. The default value for this property
+ is <literal>32768</literal> bytes (32KiB).</para>
</listitem>
</itemizedlist>
</section>
@@ -264,25 +265,24 @@
additional properties:</para>
<itemizedlist>
<listitem>
- <para><literal>sslenabled</literal>. Must be <literal
- >true</literal> to enable SSL.</para>
+ <para><literal>sslenabled</literal>. Must be <literal>true</literal> to enable
+ SSL.</para>
</listitem>
<listitem>
- <para><literal>keystorepath</literal>. This is the path
- to the SSL key store on the client which holds the client
- certificates.</para>
+ <para><literal>keystorepath</literal>. This is the path to the SSL key store on
+ the client which holds the client certificates.</para>
</listitem>
<listitem>
- <para><literal>keystorepassword</literal>. This is the
- password for the client certificate key store on the client.</para>
+ <para><literal>keystorepassword</literal>. This is the password for the client
+ certificate key store on the client.</para>
</listitem>
<listitem>
- <para><literal>truststorepath</literal>. This is the path
- to the trusted client certificate store on the server.</para>
+ <para><literal>truststorepath</literal>. This is the path to the trusted client
+ certificate store on the server.</para>
</listitem>
<listitem>
- <para><literal>truststorepassword</literal>. This is the
- password to the trusted client certificate store on the server.</para>
+ <para><literal>truststorepassword</literal>. This is the password to the trusted
+ client certificate store on the server.</para>
</listitem>
</itemizedlist>
</section>
@@ -295,31 +295,29 @@
properties:</para>
<itemizedlist>
<listitem>
- <para><literal>httpenabled</literal>. Must be <literal
- >true</literal> to enable HTTP.</para>
+ <para><literal>httpenabled</literal>. Must be <literal>true</literal> to enable
+ HTTP.</para>
</listitem>
<listitem>
- <para><literal>httpclientidletime</literal>. How long a
- client can be idle before sending an empty http request to keep the
- connection alive</para>
+ <para><literal>httpclientidletime</literal>. How long a client can be idle
+ before sending an empty http request to keep the connection alive</para>
</listitem>
<listitem>
- <para><literal>httpclientidlescanperiod</literal>. How
- often, in milliseconds, to scan for idle clients</para>
+ <para><literal>httpclientidlescanperiod</literal>. How often, in milliseconds,
+ to scan for idle clients</para>
</listitem>
<listitem>
- <para><literal>httpresponsetime</literal>. How long the
- server can wait before sending an empty http response to keep the connection
- alive</para>
+ <para><literal>httpresponsetime</literal>. How long the server can wait before
+ sending an empty http response to keep the connection alive</para>
</listitem>
<listitem>
- <para><literal>httpserverscanperiod</literal>. How often,
- in milliseconds, to scan for clients needing responses</para>
+ <para><literal>httpserverscanperiod</literal>. How often, in milliseconds, to
+ scan for clients needing responses</para>
</listitem>
<listitem>
- <para><literal>httprequiressessionid</literal>. If true
- the client will wait after the first call to receive a session id. Used the
- http connector is connecting to servlet acceptor (not recommended) </para>
+ <para><literal>httprequiressessionid</literal>. If true the client will wait
+ after the first call to receive a session id. Used the http connector is
+ connecting to servlet acceptor (not recommended) </para>
</listitem>
</itemizedlist>
</section>
@@ -411,9 +409,9 @@
</listitem>
</itemizedlist>
<para>The servlet pattern configured in the <literal>web.xml</literal> is the path of
- the URL that is used. The connector param <literal
- >servletpath</literal> on the connector config must match
- this using the application context of the web app if there is one.</para>
+ the URL that is used. The connector param <literal>servletpath</literal> on the
+ connector config must match this using the application context of the web app if
+ there is one.</para>
<para>Its also possible to use the servlet transport over SSL. simply add the following
configuration to the
connector:<programlisting> <connector name="netty-servlet">
Modified: trunk/docs/user-manual/en/connection-ttl.xml
===================================================================
--- trunk/docs/user-manual/en/connection-ttl.xml 2010-01-07 14:48:27 UTC (rev 8769)
+++ trunk/docs/user-manual/en/connection-ttl.xml 2010-01-07 16:24:23 UTC (rev 8770)
@@ -150,20 +150,20 @@
deploying JMS connection factory instances direct into JNDI on the server side, you can
specify it in the <literal>hornetq-jms.xml </literal> configuration file, using the
parameter <literal>client-failure-check-period</literal>.</para>
- <para>The default value for client failure check period is <literal>30000</literal>ms, i.e. 30
- seconds. A value of <literal>-1</literal> means the client will never fail the
+ <para>The default value for client failure check period is <literal>30000</literal>ms, i.e.
+ 30 seconds. A value of <literal>-1</literal> means the client will never fail the
connection on the client side if no data is received from the server. Typically this is
much lower than connection TTL to allow clients to reconnect in case of transitory
failure.</para>
</section>
<section id="connection-ttl.async-connection-execution">
<title>Configuring Asynchronous Connection Execution</title>
- <para>By default, packets received on the server side are handed off by the remoting thread
- for processing.</para>
+ <para>By default, packets received on the server side are executed on the remoting
+ thread.</para>
<para>It is possible instead to use a thread from a thread pool to handle the packents so
- that the remoting thread is not tied up for too long. However, please note that processing
- operations asynchronously on another thread adds a little more
- latency. To enable asynchronous connection execution, set the parameter <literal
+ that the remoting thread is not tied up for too long. However, please note that
+ processing operations asynchronously on another thread adds a little more latency. To
+ enable asynchronous connection execution, set the parameter <literal
>async-connection-execution-enabled</literal> in <literal
>hornetq-configuration.xml</literal> to <literal>true</literal> (default value is
<literal>false</literal>).</para>
Modified: trunk/docs/user-manual/en/examples.xml
===================================================================
--- trunk/docs/user-manual/en/examples.xml 2010-01-07 14:48:27 UTC (rev 8769)
+++ trunk/docs/user-manual/en/examples.xml 2010-01-07 16:24:23 UTC (rev 8770)
@@ -18,7 +18,7 @@
<!-- ============================================================================= -->
<chapter id="examples">
<title>Examples</title>
- <para>The HornetQ distribution comes with over 65 run out-of-the-box examples demonstrating many
+ <para>The HornetQ distribution comes with over 70 run out-of-the-box examples demonstrating many
of the features.</para>
<para>The examples are available in the distribution, in the <literal>examples</literal>
directory. Examples are split into JMS and core examples. JMS examples show how a particular
Modified: trunk/docs/user-manual/en/flow-control.xml
===================================================================
--- trunk/docs/user-manual/en/flow-control.xml 2010-01-07 14:48:27 UTC (rev 8769)
+++ trunk/docs/user-manual/en/flow-control.xml 2010-01-07 16:24:23 UTC (rev 8770)
@@ -19,7 +19,7 @@
<chapter id="flow-control">
<title>Flow Control</title>
<para>Flow control is used to limit the flow of data between a client and server, or a server and
- a server in order to prevent the client or server being overwhelmed with data.</para>
+ another server in order to prevent the client or server being overwhelmed with data.</para>
<section>
<title>Consumer Flow Control</title>
<para>This controls the flow of data between the server and the client as the client consumes
@@ -79,16 +79,18 @@
<para>Slow consumers takes significant time to process each message and it is
desirable to prevent buffering messages on the client side so that they can be
delivered to another consumer instead.</para>
- <para>Consider a situation where a queue has 2 consumers 1 of which is very slow.
+ <para>Consider a situation where a queue has 2 consumers; 1 of which is very slow.
Messages are delivered in a round robin fashion to both consumers, the fast
consumer processes all of its messages very quickly until its buffer is empty.
- At this point there are still messages awaiting to be processed by the slow
- consumer which could be being consumed by the other consumer.</para>
+ At this point there are still messages awaiting to be processed in the buffer
+ of the slow consumer thus preventing them being processed by the fast consumer.
+ The fast consumer is therefore sitting idle when it could be processing the
+ other messages. </para>
<para>To allow slow consumers, set the <literal>consumer-window-size</literal> to
0 (for no buffer at all). This will prevent the slow consumer from buffering
any messages on the client side. Messages will remain on the server side ready
to be consumed by other consumers.</para>
- <para>Setting this to -1 can give deterministic distribution between multiple
+ <para>Setting this to 0 can give deterministic distribution between multiple
consumers on a queue.</para>
</listitem>
</varlistentry>
@@ -130,13 +132,13 @@
</section>
<section>
<title>Rate limited flow control</title>
- <para>It is also possible to control the rate at which a consumer can consumer messages.
- This is a form of throttling and can be used to make sure that a consumer never consumes
- messages at a rate faster than the rate specified. </para>
- <para>The rate must be a positive integer to enable and is the maximum desired message
- consumption rate specified in units of messages per second. Setting this to <literal
- >-1</literal> disables rate limited flow control. The default value is <literal
- >-1</literal>.</para>
+ <para>It is also possible to control the <emphasis>rate</emphasis> at which a consumer can
+ consume messages. This is a form of throttling and can be used to make sure that a
+ consumer never consumes messages at a rate faster than the rate specified. </para>
+ <para>The rate must be a positive integer to enable this functionality and is the maximum
+ desired message consumption rate specified in units of messages per second. Setting this
+ to <literal>-1</literal> disables rate limited flow control. The default value is
+ <literal>-1</literal>.</para>
<para>Please see <xref linkend="examples.consumer-rate-limit"/> for a working example of
limiting consumer rate.</para>
<section id="flow-control.rate.core.api">
@@ -192,12 +194,12 @@
sends them more credits they can send more messages.</para>
<para>The amount of credits a producer requests in one go is known as the <emphasis
role="italic">window size</emphasis>.</para>
- <para>The window size therefore determines the amount of bytes that can be inflight at any
+ <para>The window size therefore determines the amount of bytes that can be in-flight at any
one time before more need to be requested - this prevents the remoting connection from
getting overloaded.</para>
<section>
<title>Using Core API</title>
- <para>If the HornetQ core API is being window size can be set via the <literal
+ <para>If the HornetQ core API is being used, window size can be set via the <literal
>ClientSessionFactory.setProducerWindowSize(int producerWindowSize)</literal>
method.</para>
</section>
@@ -258,6 +260,8 @@
<para>The above example would set the max size of the JMS queue "exampleQueue" to be
100000 bytes and would block any producers sending to that address to prevent that
max size being exceeded.</para>
+ <para>Note the policy must be set to <literal>DROP</literal> to enable blocking producer
+ flow control.</para>
<para>Please note the default value for <literal>address-full-policy</literal> is to
<literal>PAGE</literal>. Please see the chapter on paging for more information on
paging.</para>
@@ -268,10 +272,10 @@
<para>HornetQ also allows the rate a producer can emit message to be limited, in units of
messages per second. By specifying such a rate, HornetQ will ensure that producer never
produces messages at a rate higher than that specified.</para>
- <para>The rate must be a positive integer to enable and is the maximum desired message
- consumption rate specified in units of messages per second. Setting this to <literal
- >-1</literal> disables rate limited flow control. The default value is <literal
- >-1</literal>.</para>
+ <para>The rate must be a positive integer to enable this functionality and is the maximum
+ desired message consumption rate specified in units of messages per second. Setting this
+ to <literal>-1</literal> disables rate limited flow control. The default value is
+ <literal>-1</literal>.</para>
<para>Please see the <xref linkend="producer-rate-limiting-example"/> for a working example
of limiting producer rate.</para>
<section id="flow-control.producer.rate.core.api">
Modified: trunk/docs/user-manual/en/persistence.xml
===================================================================
--- trunk/docs/user-manual/en/persistence.xml 2010-01-07 14:48:27 UTC (rev 8769)
+++ trunk/docs/user-manual/en/persistence.xml 2010-01-07 16:24:23 UTC (rev 8770)
@@ -21,9 +21,8 @@
<para>In this chapter we will describe how persistence works with HornetQ and how to configure
it.</para>
<para>HornetQ ships with a high performance journal. Since HornetQ handles its own persistence,
- rather than relying on a database or other 3rd party persistence engine, we have been able
- to tune the journal to gain optimal performance for the persistence of messages and
- transactions.</para>
+ rather than relying on a database or other 3rd party persistence engine it is very highly
+ optimised for the specific messaging use cases.</para>
<para>A HornetQ journal is an <emphasis>append only</emphasis> journal. It consists of a set of
files on disk. Each file is pre-created to a fixed size and initially filled with padding.
As operations are performed on the server, e.g. add message, update message, delete message,
@@ -53,20 +52,18 @@
<listitem>
<para>Java <ulink url="http://en.wikipedia.org/wiki/New_I/O">NIO</ulink>.</para>
<para>The first implementation uses standard Java NIO to interface with the file system.
- This provides very good performance and runs on any platform where there's a Java 5+
- runtime.</para>
+ This provides extremely good performance and runs on any platform where there's a
+ Java 5+ runtime.</para>
</listitem>
<listitem id="aio-journal">
<para>Linux Asynchronous IO</para>
<para>The second implementation uses a thin native code wrapper to talk to the Linux
- asynchronous IO library (AIO). In a highly concurrent environment, AIO can provide
- better overall persistent throughput since it does not require explicit syncs to
- flush operating system buffers to disk. Most disks can only support a limited number
- of syncs per second, so a syncing approach does not scale well when the number of
- concurrent transactions needed to be committed grows too large. With AIO, HornetQ
- will be called back when the data has made it to disk, allowing us to avoid explicit
- syncs altogether and simply send back confirmation of completion when AIO informs us
- that the data has been persisted.</para>
+ asynchronous IO library (AIO). With AIO, HornetQ will be called back when the data
+ has made it to disk, allowing us to avoid explicit syncs altogether and simply send
+ back confirmation of completion when AIO informs us that the data has been
+ persisted.</para>
+ <para>Using AIO will typically provide even better performance than using Java
+ NIO.</para>
<para>The AIO journal is only available when running Linux kernel 2.6 or later and after
having installed libaio (if it's not already installed). For instructions on how to
install libaio please see <xref linkend="installing-aio"/>.</para>
@@ -87,7 +84,7 @@
<listitem>
<para>Message journal.</para>
<para>This journal instance stores all message related data, including the message
- themselves and also duplicate id caches.</para>
+ themselves and also duplicate-id caches.</para>
<para>By default HornetQ will try and use an AIO journal. If AIO is not available, e.g.
the platform is not Linux with the correct kernel version or AIO has not been
installed then it will automatically fall back to using Java NIO which is available
@@ -96,8 +93,8 @@
</itemizedlist>
<para>For large messages, HornetQ persists them outside the message journal. This is discussed
in <xref linkend="large-messages"/>.</para>
- <para>HornetQ also pages messages to disk in low memory situations. This is discussed in <xref
- linkend="paging"/>.</para>
+ <para>HornetQ can also be configured to page messages to disk in low memory situations. This is
+ discussed in <xref linkend="paging"/>.</para>
<para>If no persistence is required at all, HornetQ can also be configured not to persist any
data at all to storage as discussed in <xref linkend="persistence.enabled"/>.</para>
<section id="configuring.bindings.journal">
@@ -132,8 +129,8 @@
physical volume in order to minimise disk head movement. If the journal is on a
volume which is shared with other processes which might be writing other files
(e.g. bindings journal, database, or transaction coordinator) then the disk head
- may well be moving rapidly between these files as it writes them, thus reducing
- performance.</para>
+ may well be moving rapidly between these files as it writes them, thus
+ drastically reducing performance.</para>
<para>When the message journal is stored on a SAN we recommend each journal instance
that is stored on the SAN is given its own LUN (logical unit).</para>
</listitem>
@@ -184,10 +181,10 @@
</listitem>
<listitem id="configuring.message.journal.journal-max-io">
<para><literal>journal-max-io</literal></para>
- <para>Write requests are queued up before being submitted to the system execution.
- This parameter controls the maximum number of write requests that can be in the
- IO queue at any one time. If the queue becomes full then writes will block until
- space is freed up. </para>
+ <para>Write requests are queued up before being submitted to the system for
+ execution. This parameter controls the maximum number of write requests that can
+ be in the IO queue at any one time. If the queue becomes full then writes will
+ block until space is freed up. </para>
<para>When using NIO, this value should always be equal to <literal
>1</literal></para>
<para>When using AIO, the default should be <literal>500</literal>.</para>
@@ -208,9 +205,11 @@
so the system maintains different defaults for both NIO and AIO (default for NIO
is 3333333 nanoseconds - 300 times per second, default for AIO is 500000
nanoseconds - ie. 2000 times per second).</para>
- <para>By increasing the timeout, you may be able to increase system throughput at
- the expense of latency, the default parameters are chosen to give a reasonable
- balance between throughput and latency.</para>
+ <note>
+ <para>By increasing the timeout, you may be able to increase system throughput
+ at the expense of latency, the default parameters are chosen to give a
+ reasonable balance between throughput and latency.</para>
+ </note>
</listitem>
<listitem id="configuring.message.journal.journal-buffer-size">
<para><literal>journal-buffer-size</literal></para>
@@ -237,44 +236,45 @@
<section id="disk-write-cache">
<title>An important note on disabling disk write cache.</title>
<warning>
- <para>Most disks contain hardware write caches. A write cache can increase the apparent
- performance of the disk because writes just go into the cache and are then lazily
- written to the disk later. </para>
- <para>This happens irrespective of whether you have executed a fsync() from the operating
- system or correctly synced data from inside a Java program!</para>
- <para>By default many systems ship with disk write cache enabled. This means that even after
- syncing from the operating system there is no guarantee the data has actually made it to
- disk, so if a failure occurs, critical data can be lost.</para>
- <para>Some more expensive disks have non volatile or battery backed write caches which won't
- necessarily lose data on event of failure, but you need to test them!</para>
- <para>If your disk does not have an expensive non volatile or battery backed cache and it's
- not part of some kind of redundant array, and you value your data integrity you need to
- make sure disk write cache is disabled.</para>
- <para>Be aware that disabling disk write cache can give you a nasty shock performance wise.
- If you've been used to using disks with write cache enabled in their default setting,
- unaware that your data integrity could be compromised, then disabling it will give you
- an idea of how fast your disk can perform when acting really reliably.</para>
- <para>On Linux you can inspect and/or change your disk's write cache settings using the
- tools <literal>hdparm</literal> (for IDE disks) or <literal>sdparm</literal> or <literal
- >sginfo</literal> (for SDSI/SATA disks)</para>
- <para>On Windows you can check / change the setting by right clicking on the disk and
- clicking properties.</para>
+ <para>Most disks contain hardware write caches. A write cache can increase the apparent
+ performance of the disk because writes just go into the cache and are then lazily
+ written to the disk later. </para>
+ <para>This happens irrespective of whether you have executed a fsync() from the
+ operating system or correctly synced data from inside a Java program!</para>
+ <para>By default many systems ship with disk write cache enabled. This means that even
+ after syncing from the operating system there is no guarantee the data has actually
+ made it to disk, so if a failure occurs, critical data can be lost.</para>
+ <para>Some more expensive disks have non volatile or battery backed write caches which
+ won't necessarily lose data on event of failure, but you need to test them!</para>
+ <para>If your disk does not have an expensive non volatile or battery backed cache and
+ it's not part of some kind of redundant array (e.g. RAID), and you value your data
+ integrity you need to make sure disk write cache is disabled.</para>
+ <para>Be aware that disabling disk write cache can give you a nasty shock performance
+ wise. If you've been used to using disks with write cache enabled in their default
+ setting, unaware that your data integrity could be compromised, then disabling it
+ will give you an idea of how fast your disk can perform when acting really
+ reliably.</para>
+ <para>On Linux you can inspect and/or change your disk's write cache settings using the
+ tools <literal>hdparm</literal> (for IDE disks) or <literal>sdparm</literal> or
+ <literal>sginfo</literal> (for SDSI/SATA disks)</para>
+ <para>On Windows you can check / change the setting by right clicking on the disk and
+ clicking properties.</para>
</warning>
</section>
<section id="installing-aio">
<title>Installing AIO</title>
<para>The Java NIO journal gives great performance, but If you are running HornetQ using
Linux Kernel 2.6 or later, we highly recommend you use the <literal>AIO</literal>
- journal for the best persistence performance especially under high concurrency.</para>
+ journal for the very best persistence performance.</para>
<para>It's not possible to use the AIO journal under other operating systems or earlier
versions of the Linux kernel.</para>
<para>If you are running Linux kernel 2.6 or later and don't already have <literal
>libaio</literal> installed, you can easily install it using the following
steps:</para>
<para>Using yum, (e.g. on Fedora or Red Hat Enterprise Linux):
- <programlisting>sudo yum install libaio</programlisting></para>
+ <programlisting>yum install libaio</programlisting></para>
<para>Using aptitude, (e.g. on Ubuntu or Debian system):
- <programlisting>sudo apt-get install libaio</programlisting></para>
+ <programlisting>apt-get install libaio</programlisting></para>
</section>
<section id="persistence.enabled">
<title>Configuring HornetQ for Zero Persistence</title>
Modified: trunk/docs/user-manual/en/transaction-config.xml
===================================================================
--- trunk/docs/user-manual/en/transaction-config.xml 2010-01-07 14:48:27 UTC (rev 8769)
+++ trunk/docs/user-manual/en/transaction-config.xml 2010-01-07 16:24:23 UTC (rev 8770)
@@ -29,4 +29,6 @@
>transaction-timeout</literal> property in <literal>hornetq-configuration.xml</literal> (value must be in milliseconds).
The property <literal>transaction-timeout-scan-period</literal> configures how often, in
milliseconds, to scan for old transactions.</para>
+ <para>Please note that HornetQ will not unilaterally rollback any XA transactions in a prepared state - this must be heuristically rolled
+ back via the management API if you are sure they will never be resolved by the transaction manager.</para>
</chapter>
14 years, 11 months
JBoss hornetq SVN: r8769 - in trunk: docs/user-manual/en and 6 other directories.
by do-not-reply@jboss.org
Author: jmesnil
Date: 2010-01-07 09:48:27 -0500 (Thu, 07 Jan 2010)
New Revision: 8769
Added:
trunk/src/main/org/hornetq/spi/core/logging/package-info.java
trunk/src/main/org/hornetq/spi/core/security/package-info.java
Modified:
trunk/build-hornetq.xml
trunk/docs/user-manual/en/perf-tuning.xml
trunk/docs/user-manual/en/send-guarantees.xml
trunk/src/main/org/hornetq/api/core/Interceptor.java
trunk/src/main/org/hornetq/api/core/Pair.java
trunk/src/main/org/hornetq/api/core/TransportConfiguration.java
trunk/src/main/org/hornetq/api/core/client/ClientProducer.java
trunk/src/main/org/hornetq/api/core/client/ClientSession.java
trunk/src/main/org/hornetq/api/core/client/ClientSessionFactory.java
trunk/src/main/org/hornetq/api/core/client/HornetQClient.java
trunk/src/main/org/hornetq/api/core/client/SendAcknowledgementHandler.java
trunk/src/main/org/hornetq/api/core/client/SessionFailureListener.java
trunk/src/main/org/hornetq/api/core/client/loadbalance/FirstElementConnectionLoadBalancingPolicy.java
trunk/src/main/org/hornetq/api/core/client/loadbalance/RandomConnectionLoadBalancingPolicy.java
trunk/src/main/org/hornetq/api/core/client/loadbalance/RoundRobinConnectionLoadBalancingPolicy.java
trunk/src/main/org/hornetq/api/core/client/loadbalance/package-info.java
trunk/src/main/org/hornetq/api/core/client/package-info.java
trunk/src/main/org/hornetq/api/core/package-info.java
trunk/src/main/org/hornetq/api/jms/package-info.java
Log:
javadoc fixes
Modified: trunk/build-hornetq.xml
===================================================================
--- trunk/build-hornetq.xml 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/build-hornetq.xml 2010-01-07 14:48:27 UTC (rev 8769)
@@ -1019,7 +1019,7 @@
<classpath refid="javadoc.classpath"/>
<doctitle><![CDATA[<h2>HornetQ ${module.version}</h2>]]></doctitle>
<bottom><![CDATA[<i>Copyright © 2009 Red Hat Inc. All Rights Reserved.</i>]]></bottom>
- <group title="HornetQ Core" packages="org.hornetq.api, org.hornetq.api.core.*"/>
+ <group title="HornetQ Core" packages="org.hornetq.api, org.hornetq.api.core, org.hornetq.api.core.*"/>
<group title="JMS" packages="org.hornetq.api.jms, org.hornetq.api.jms.*"/>
<group title="HornetQ SPI" packages="org.hornetq.spi.*"/>
<link href="http://java.sun.com/j2se/1.5.0/docs/api"/>
Modified: trunk/docs/user-manual/en/perf-tuning.xml
===================================================================
--- trunk/docs/user-manual/en/perf-tuning.xml 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/docs/user-manual/en/perf-tuning.xml 2010-01-07 14:48:27 UTC (rev 8769)
@@ -116,7 +116,7 @@
<listitem>
<para>Use pre-acknowledge mode. With pre-acknowledge mode, messages are acknowledged
<literal>before</literal> they are sent to the client. This reduces the
- amount of acknowledgment traffic on the wire. For more information on this, see
+ amount of acknowledgement traffic on the wire. For more information on this, see
<xref linkend="pre-acknowledge"/>.</para>
</listitem>
<listitem>
Modified: trunk/docs/user-manual/en/send-guarantees.xml
===================================================================
--- trunk/docs/user-manual/en/send-guarantees.xml 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/docs/user-manual/en/send-guarantees.xml 2010-01-07 14:48:27 UTC (rev 8769)
@@ -136,7 +136,7 @@
instance on your <literal>ClientSession</literal>.</para>
<para>Then, you just send messages as normal using your <literal
>ClientSession</literal>, and as messages reach the server, the server will send
- back an acknowledgment of the send asynchronously, and some time later you are
+ back an acknowledgement of the send asynchronously, and some time later you are
informed at the client side by HornetQ calling your handler's <literal
>sendAcknowledged(ClientMessage message)</literal> method, passing in a
reference to the message that was sent.</para>
Modified: trunk/src/main/org/hornetq/api/core/Interceptor.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/Interceptor.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/Interceptor.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -13,13 +13,15 @@
package org.hornetq.api.core;
+import org.hornetq.api.core.client.ClientSessionFactory;
import org.hornetq.core.remoting.Packet;
import org.hornetq.core.remoting.RemotingConnection;
/**
- * This is class is a simple way to intercepting server calls on HornetQ.
+ * This is class is a simple way to intercepting calls on HornetQ client and servers.
* <p/>
- * To Add this interceptor, you have to modify hornetq-configuration.xml
+ * To add an interceptor to HornetQ server, you have to modify hornetq-configuration.xml.
+ * To add it to a client, use {@link ClientSessionFactory#addInterceptor(Interceptor)}
*
* @author clebert.suconic(a)jboss.com
* @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a>
@@ -27,12 +29,12 @@
public interface Interceptor
{
/**
- * gets called when a packet is received prior to be sent to the channel
+ * Intercepts a packet which is received before it is sent to the channel
*
* @param packet the packet being received
* @param connection the connection the packet was received on
- * @return true to process the next interceptor and handle the packet,
- * false to abort processing of the packet
+ * @return {@code true} to process the next interceptor and handle the packet,
+ * {@code false} to abort processing of the packet
* @throws HornetQException
*/
boolean intercept(Packet packet, RemotingConnection connection) throws HornetQException;
Modified: trunk/src/main/org/hornetq/api/core/Pair.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/Pair.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/Pair.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -17,7 +17,7 @@
/**
*
- * A Pair is basically a holder for 2 objects.
+ * A Pair is a holder for 2 objects.
*
* @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a>
*
Modified: trunk/src/main/org/hornetq/api/core/TransportConfiguration.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/TransportConfiguration.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/TransportConfiguration.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -19,10 +19,10 @@
import org.hornetq.utils.UUIDGenerator;
/**
- * A TransportConfiguration is used by a client to specify a connections to a server and its back up if one exists.<br><br>
+ * A TransportConfiguration is used by a client to specify a connections to a server and its backup if one exists.<br><br>
* <p/>
- * Typically the constructors take the classname and paramaters for needed to create the connection. These will be
- * different dependant on what connector is beingused i.e. Netty or InVM etc. An example:<br><br>
+ * Typically the constructors take the class name and parameters for needed to create the connection. These will be
+ * different dependent on which connector is being used, i.e. Netty or InVM etc. For example:<br><br>
* <p/>
* <code>
* HashMap<String, Object> map = new HashMap<String, Object>();<br>
@@ -82,10 +82,10 @@
/**
* Creates a TransportConfiguration with a specific name providing the class name of the {@link org.hornetq.spi.core.remoting.ConnectorFactory}
- * and any params needed.
+ * and any parameters needed.
*
* @param className The class name of the ConnectorFactory
- * @param params The params needed by the ConnectorFactory
+ * @param params The parameters needed by the ConnectorFactory
* @param name The name of this TransportConfiguration
*/
public TransportConfiguration(final String className, final Map<String, Object> params, final String name)
@@ -99,10 +99,10 @@
/**
* Creates a TransportConfiguration providing the class name of the {@link org.hornetq.spi.core.remoting.ConnectorFactory}
- * and any params needed.
+ * and any parameters needed.
*
* @param className The class name of the ConnectorFactory
- * @param params The params needed by the ConnectorFactory
+ * @param params The parameters needed by the ConnectorFactory
*/
public TransportConfiguration(final String className, final Map<String, Object> params)
{
@@ -132,7 +132,7 @@
/**
* Returns the class name of ConnectorFactory being used by this TransportConfiguration
*
- * @return The classname
+ * @return The factory's class name
*/
public String getFactoryClassName()
{
@@ -140,9 +140,9 @@
}
/**
- * Returns any params set for this TransportConfiguration
+ * Returns any parameters set for this TransportConfiguration
*
- * @return the params
+ * @return the parameters
*/
public Map<String, Object> getParams()
{
@@ -292,7 +292,7 @@
* <p/>
* Note this is only used internally by HornetQ
*
- * @param buffer the biffer to decode from
+ * @param buffer the buffer to decode from
*/
public void decode(final HornetQBuffer buffer)
{
Modified: trunk/src/main/org/hornetq/api/core/client/ClientProducer.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/client/ClientProducer.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/client/ClientProducer.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -18,7 +18,7 @@
import org.hornetq.api.core.SimpleString;
/**
- * A ClientProducer is ised to send messages to a specific address. Messages are then routed on the server to any queues
+ * A ClientProducer is used to send messages to a specific address. Messages are then routed on the server to any queues
* that are bound to the address. A ClientProducer can either be created with a specific address in mind or with none.
* With the latter the address must be provided using the appropriate send() method. <br><br>
*
Modified: trunk/src/main/org/hornetq/api/core/client/ClientSession.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/client/ClientSession.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/client/ClientSession.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -40,15 +40,11 @@
{
/**
* Returns <code>true</code> if the binding exists, <code>false</code> else.
- *
- * @return <code>true</code> if the binding exists, <code>false</code> else
*/
boolean isExists();
/**
* Returns the names of the queues bound to the binding.
- *
- * @return the names of the queues bound to the binding
*/
public List<SimpleString> getQueueNames();
}
@@ -62,43 +58,31 @@
{
/**
* Returns <code>true</code> if the queue exists, <code>false</code> else.
- *
- * @return <code>true</code> if the queue exists, <code>false</code> else
*/
boolean isExists();
/**
* Returns <code>true</code> if the queue is durable, <code>false</code> else.
- *
- * @return <code>true</code> if the queue is durable, <code>false</code> else
*/
boolean isDurable();
/**
* Returns the number of consumers attached to the queue.
- *
- * @return the number of consumers attached to the queue
*/
int getConsumerCount();
/**
* Returns the number of messages in the queue.
- *
- * @return the number of messages in the queue
*/
int getMessageCount();
/**
* Returns the queue's filter string (or <code>null</code> if the queue has no filter).
- *
- * @return the queue's filter string (or <code>null</code> if the queue has no filter)
*/
SimpleString getFilterString();
/**
* Returns the address that the queue is bound to.
- *
- * @return the address that the queue is bound to
*/
SimpleString getAddress();
}
Modified: trunk/src/main/org/hornetq/api/core/client/ClientSessionFactory.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/client/ClientSessionFactory.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/client/ClientSessionFactory.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -55,10 +55,9 @@
/**
* Creates a <em>non-transacted</em> session.
- *
- * Message sends and acknowledgments are automatically committed by the session. <em>This does not
+ * Message sends and acknowledgements are automatically committed by the session. <em>This does not
* mean that messages are automatically acknowledged</em>, only that when messages are acknowledged,
- * the session will automatically commit the transaction containing the acknowledgments.
+ * the session will automatically commit the transaction containing the acknowledgements.
* @return a non-transacted ClientSession
* @throws HornetQException if an exception occurs while creating the session
Modified: trunk/src/main/org/hornetq/api/core/client/HornetQClient.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/client/HornetQClient.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/client/HornetQClient.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -20,10 +20,13 @@
import java.util.List;
/**
- * A utility class for creating core HornetQ ClientSessionFactory's.
- *
+ * Utility class for creating HornetQ {@link ClientSessionFactory} objects.
+ *
+ * Once a {@link ClientSessionFactory} has been created, it can be further configured
+ * using its setter methods before creating the sessions. Once a session is created,
+ * the factory can no longer be modified (its setter methods will throw a {@link IllegalStateException}.
+ *
* @author <a href="mailto:andy.taylor@jboss.org">Andy Taylor</a>
- * Created Jan 5, 2010
*/
public class HornetQClient
{
@@ -98,7 +101,7 @@
}
/**
- * Creates a new CLientSessionFactory using the same settings as the one passed in.
+ * Creates a new ClientSessionFactory using the same configuration as the one passed in.
*
* @param other The ClientSessionFactory to copy
* @return The new ClientSessionFactory
@@ -109,7 +112,7 @@
}
/**
- * Create a ClientSessionFactory that uses discovery to connect to the server.
+ * Creates a ClientSessionFactory that uses discovery to connect to the servers.
*
* @param discoveryAddress The address to use for discovery
* @param discoveryPort The port to use for discovery.
@@ -132,10 +135,10 @@
}
/**
- * Create a ClientConnectionFactory using a TransportConfiguration of the server and a backup if needed.
+ * Creates a ClientConnectionFactory using a TransportConfiguration of the server and a backup if needed.
*
* @param connectorConfig The TransportConfiguration of the server to connect to.
- * @param backupConnectorConfig The TransportConfiguration of the backup server to connect to. can be null.
+ * @param backupConnectorConfig The TransportConfiguration of the backup server to connect to (or {@code null}�if there is no backup)
* @return The ClientSessionFactory.
*/
public static ClientSessionFactory createClientSessionFactory(final TransportConfiguration connectorConfig,
@@ -145,7 +148,7 @@
}
/**
- * Create a ClientSessionFactory using the TransportConfiguration of the server to connect to.
+ * Creates a ClientSessionFactory using the TransportConfiguration of the server to connect to.
*
* @param connectorConfig The TransportConfiguration of the server.
* @return The ClientSessionFactory.
Modified: trunk/src/main/org/hornetq/api/core/client/SendAcknowledgementHandler.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/client/SendAcknowledgementHandler.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/client/SendAcknowledgementHandler.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -18,8 +18,8 @@
/**
* A SendAcknowledgementHandler notifies a client when an message sent asynchronously has been received by the server.
* <br />
- * If the session is not blocking when sending durable or non-durbale messages, the session can
- * set a SendAcknowledgementHandler to ben notified later when the messages
+ * If the session is not blocking when sending durable or non-durable messages, the session can
+ * set a SendAcknowledgementHandler to be notified later when the messages
* has been received by the server. The method {@code sendAcknowledged} will be called with the message that
* was sent asynchronously.
*
Modified: trunk/src/main/org/hornetq/api/core/client/SessionFailureListener.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/client/SessionFailureListener.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/client/SessionFailureListener.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -17,7 +17,7 @@
import org.hornetq.core.remoting.FailureListener;
/**
- * A SessionFailureListener notifies the client when a failure occured on the session.
+ * A SessionFailureListener notifies the client when a failure occurred on the session.
*
* @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a>
*/
Modified: trunk/src/main/org/hornetq/api/core/client/loadbalance/FirstElementConnectionLoadBalancingPolicy.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/client/loadbalance/FirstElementConnectionLoadBalancingPolicy.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/client/loadbalance/FirstElementConnectionLoadBalancingPolicy.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -15,13 +15,11 @@
/**
- * A FirstElementConnectionLoadBalancingPolicy
+ * A {@link FirstElementConnectionLoadBalancingPolicy#select(int)} always returns 0.
*
* @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a>
*
* Created 28 Nov 2008 10:56:59
- *
- *
*/
public class FirstElementConnectionLoadBalancingPolicy implements ConnectionLoadBalancingPolicy
{
Modified: trunk/src/main/org/hornetq/api/core/client/loadbalance/RandomConnectionLoadBalancingPolicy.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/client/loadbalance/RandomConnectionLoadBalancingPolicy.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/client/loadbalance/RandomConnectionLoadBalancingPolicy.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -16,7 +16,7 @@
import org.hornetq.utils.Random;
/**
- * A RandomConnectionLoadBalancingPolicy
+ * {@link RandomConnectionLoadBalancingPolicy#select(int)} returns a random integer between {@code 0} (inclusive) and {@code max} (exclusive)
*
* @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a>
*
Modified: trunk/src/main/org/hornetq/api/core/client/loadbalance/RoundRobinConnectionLoadBalancingPolicy.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/client/loadbalance/RoundRobinConnectionLoadBalancingPolicy.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/client/loadbalance/RoundRobinConnectionLoadBalancingPolicy.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -16,7 +16,11 @@
import org.hornetq.utils.Random;
/**
- * A RoundRobinConnectionLoadBalancingPolicy
+ * RoundRobinConnectionLoadBalancingPolicy corresponds to a round-robin load-balancing policy.
+ *
+ * <br>
+ * The first call to {@link #select(int)} will return a random integer between {@code 0} (inclusive) and {@code max}�(exclusive).
+ * Subsequent calls will then return an integer in a round-robin fashion.
*
* @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a>
*
Modified: trunk/src/main/org/hornetq/api/core/client/loadbalance/package-info.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/client/loadbalance/package-info.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/client/loadbalance/package-info.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -12,7 +12,11 @@
*/
/**
- * HornetQ client side connection load balancing policies
+ * Client load-balancing API.
+ * <br>
+ * This package defines the policies supported by
+ * HornetQ to load-balance client connections across
+ * HornetQ servers.
*/
package org.hornetq.api.core.client.loadbalance;
Modified: trunk/src/main/org/hornetq/api/core/client/package-info.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/client/package-info.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/client/package-info.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -12,7 +12,7 @@
*/
/**
- * HornetQ core client messaging API to produce and consume messages.
+ * Core Client Messaging API.
* <br>
* This package defines the API used by HornetQ clients to produce and consume messages.
*/
Modified: trunk/src/main/org/hornetq/api/core/package-info.java
===================================================================
--- trunk/src/main/org/hornetq/api/core/package-info.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/core/package-info.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -12,9 +12,10 @@
*/
/**
- * HornetQ core messaging API
+ * Core Messaging API.
* <br>
- * This package defines the core API
+ * This package defines base classes and interfaces used
+ * throughout HornetQ API
*/
package org.hornetq.api.core;
Modified: trunk/src/main/org/hornetq/api/jms/package-info.java
===================================================================
--- trunk/src/main/org/hornetq/api/jms/package-info.java 2010-01-07 13:52:32 UTC (rev 8768)
+++ trunk/src/main/org/hornetq/api/jms/package-info.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -12,7 +12,10 @@
*/
/**
- * This package contains classes that relate to the HornetQ JMS implementation
+ * API to create HornetQ JMS resources.
+ * <br>
+ * This package contains classes to create
+ * HornetQ JMS managed resources (ConnectionFactory, Queue and Topic).
*
*/
package org.hornetq.api.jms;
Added: trunk/src/main/org/hornetq/spi/core/logging/package-info.java
===================================================================
--- trunk/src/main/org/hornetq/spi/core/logging/package-info.java (rev 0)
+++ trunk/src/main/org/hornetq/spi/core/logging/package-info.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -0,0 +1,21 @@
+/*
+ * Copyright 2009 Red Hat, Inc.
+ * Red Hat licenses this file to you under the Apache License, version
+ * 2.0 (the "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ * implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/**
+ * Logging SPI.
+ * <br>
+ * This package defines the Service Provide Interface to
+ * support different logging implementation.
+ */
+package org.hornetq.spi.core.logging;
+
Added: trunk/src/main/org/hornetq/spi/core/security/package-info.java
===================================================================
--- trunk/src/main/org/hornetq/spi/core/security/package-info.java (rev 0)
+++ trunk/src/main/org/hornetq/spi/core/security/package-info.java 2010-01-07 14:48:27 UTC (rev 8769)
@@ -0,0 +1,22 @@
+/*
+ * Copyright 2009 Red Hat, Inc.
+ * Red Hat licenses this file to you under the Apache License, version
+ * 2.0 (the "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ * implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/**
+ * Security SPI.
+ * <br>
+ * This package defines the Service Provide Interface
+ * that secuity providers can implement to plug their
+ * implementation into HornetQ.
+ */
+package org.hornetq.spi.core.security;
+
14 years, 11 months
JBoss hornetq SVN: r8768 - trunk/docs/user-manual/en.
by do-not-reply@jboss.org
Author: timfox
Date: 2010-01-07 08:52:32 -0500 (Thu, 07 Jan 2010)
New Revision: 8768
Modified:
trunk/docs/user-manual/en/client-classpath.xml
trunk/docs/user-manual/en/using-core.xml
trunk/docs/user-manual/en/using-jms.xml
Log:
user manual edits part 2
Modified: trunk/docs/user-manual/en/client-classpath.xml
===================================================================
--- trunk/docs/user-manual/en/client-classpath.xml 2010-01-07 13:25:20 UTC (rev 8767)
+++ trunk/docs/user-manual/en/client-classpath.xml 2010-01-07 13:52:32 UTC (rev 8768)
@@ -19,35 +19,34 @@
<chapter id="client-classpath">
<title>The Client Classpath</title>
<para>HornetQ requires several jars on the <emphasis>Client Classpath</emphasis> depending on
- whether the client uses HornetQ Core API, JMS, and JNDI.</para>
- <note>
+ whether the client uses HornetQ Core API, JMS, and JNDI.</para>
+ <warning>
<para>All the jars mentioned here can be found in the <literal>lib</literal> directory of
the HornetQ distribution. Be sure you only use the jars from the correct version of the
release, you <emphasis>must not</emphasis> mix and match versions of jars from different
HornetQ versions. Mixing and matching different jar versions may cause subtle errors and
failures to occur.</para>
- </note>
+ </warning>
<section>
<title>HornetQ Core Client</title>
<para>If you are using just a pure HornetQ Core client (i.e. no JMS) then you need <literal
- >hornetq-core-client.jar</literal>, <literal>hornetq-transports.jar</literal>
- and <literal>netty.jar</literal> on your client classpath.</para>
+ >hornetq-core-client.jar</literal>, <literal>hornetq-transports.jar</literal> and
+ <literal>netty.jar</literal> on your client classpath.</para>
</section>
<section>
<title>JMS Client</title>
- <para>If you are using JMS on the client side, then you will also need to include
- <literal>hornetq-jms-client.jar</literal> and <literal>jboss-jms-api.jar</literal>.</para>
+ <para>If you are using JMS on the client side, then you will also need to include <literal
+ >hornetq-jms-client.jar</literal> and <literal>jboss-jms-api.jar</literal>.</para>
<note>
- <para><literal>jboss-jms-api.jar</literal>
- just contains Java EE API interface classes needed for the <literal
- >javax.jms.*</literal> classes. If you already have a jar with these interface
- classes on your classpath, you will not need it.</para>
- </note>
+ <para><literal>jboss-jms-api.jar</literal> just contains Java EE API interface classes
+ needed for the <literal>javax.jms.*</literal> classes. If you already have a jar
+ with these interface classes on your classpath, you will not need it.</para>
+ </note>
</section>
<section>
<title>JMS Client with JNDI</title>
<para>If you are looking up JMS resources from the JNDI server co-located with the HornetQ
- standalone server, you wil also need the jar <literal>jnp-client.jar</literal> jar on your
- client classpath as well as any other jars mentioned previously.</para>
+ standalone server, you wil also need the jar <literal>jnp-client.jar</literal> jar on
+ your client classpath as well as any other jars mentioned previously.</para>
</section>
</chapter>
Modified: trunk/docs/user-manual/en/using-core.xml
===================================================================
--- trunk/docs/user-manual/en/using-core.xml 2010-01-07 13:25:20 UTC (rev 8767)
+++ trunk/docs/user-manual/en/using-core.xml 2010-01-07 13:52:32 UTC (rev 8768)
@@ -18,7 +18,8 @@
<!-- ============================================================================= -->
<chapter id="using-core">
<title>Using Core</title>
- <para>HornetQ core is a completely JMS-agnostic messaging system with its own core API.</para>
+ <para>HornetQ core is a completely JMS-agnostic messaging system with its own non-JMS API. We
+ call this the <emphasis>core API</emphasis>.</para>
<para>If you don't want to use JMS you can use the core API directly. The core API provides all
the functionality of JMS but without much of the complexity. It also provides features that
are not available using JMS.</para>
@@ -26,40 +27,67 @@
<title>Core Messaging Concepts</title>
<para>Some of the core messaging concepts are similar to JMS concepts, but core messaging
concepts differ in some ways. In general the core messaging API is simpler than the JMS
- API, since we remove distinctions between queues, topics and subscriptions. We'll
+ API, since we remove distinctions between queues, topics and subscriptions. We'll
discuss each of the major core messaging concepts in turn, but to see the API in detail,
please consult the Javadoc.</para>
<section>
<title>Message</title>
- <para>A message is the unit of data which is sent between clients and servers.</para>
- <para>A message has a body which is effectively a byte[], it also has a set of
- properties which are key-value pairs. Each property key is a string and property
- values can be of type integer, long, short, byte, byte[], String, double, float or
- boolean.</para>
- <para>A message has an <emphasis>address</emphasis> it is being sent to.
- When the message arrives on the server it is routed to any queues
- that are bound to the address. An address may have many queues bound to it or even
- none. There may also be entities other than queues, like <emphasis role="italic"
- >diverts</emphasis> bound to addresses.</para>
- <para>Messages can be either durable or non durable. Durable messages in a durable queue
- will survive a server crash or restart. Non durable messages will never survive a
- server crash or restart.</para>
- <para>Messages can be specified with a priority value between 0 and 9. 0 represents the
- lowest priority and 9 represents the highest. HornetQ will attempt to deliver higher
- priority messages before lower priority ones.</para>
- <para>Messages can be specified with an optional expiry time. HornetQ will not deliver
- messages after its expiry time has been exceeded.</para>
- <para>Messages also have an optional timestamp which represents the time the message was
- sent.</para>
+ <itemizedlist>
+ <listitem>
+ <para>A message is the unit of data which is sent between clients and
+ servers.</para>
+ </listitem>
+ <listitem>
+ <para>A message has a body which is a buffer containing convenient methods for
+ reading and writing data into it.</para>
+ </listitem>
+ <listitem>
+ <para>A message has a set of properties which are key-value pairs. Each property
+ key is a string and property values can be of type integer, long, short,
+ byte, byte[], String, double, float or boolean.</para>
+ </listitem>
+ <listitem>
+ <para>A message has an <emphasis>address</emphasis> it is being sent to. When
+ the message arrives on the server it is routed to any queues that are bound
+ to the address - if the queues are bound with any filter, the message will
+ only be routed to that queue if the filter matches. An address may have many
+ queues bound to it or even none. There may also be entities other than
+ queues, like <emphasis role="italic">diverts</emphasis> bound to
+ addresses.</para>
+ </listitem>
+ <listitem>
+ <para>Messages can be either durable or non durable. Durable messages in a
+ durable queue will survive a server crash or restart. Non durable messages
+ will never survive a server crash or restart.</para>
+ </listitem>
+ <listitem>
+ <para>Messages can be specified with a priority value between 0 and 9. 0
+ represents the lowest priority and 9 represents the highest. HornetQ will
+ attempt to deliver higher priority messages before lower priority
+ ones.</para>
+ </listitem>
+ <listitem>
+ <para>Messages can be specified with an optional expiry time. HornetQ will not
+ deliver messages after its expiry time has been exceeded.</para>
+ </listitem>
+ <listitem>
+ <para>Messages also have an optional timestamp which represents the time the
+ message was sent.</para>
+ </listitem>
+ <listitem>
+ <para>HornetQ also supports the sending/consuming of very large messages - much
+ larger than can fit in available RAM at any one time.</para>
+ </listitem>
+ </itemizedlist>
</section>
<section>
<title>Address</title>
<para>A server maintains a mapping between an address and a set of queues. Zero or more
queues can be bound to a single address. Each queue can be bound with an optional
- message filter. When a message is routed, it is in fact routed to the set of
- queues bound to the message's address. If any of the queues are bound
- with a filter expression, then the message will only be routed to the subset of
- bound queues which match that filter expression.</para>
+ message filter. When a message is routed, it is routed to the set of queues bound to
+ the message's address. If any of the queues are bound with a filter expression, then
+ the message will only be routed to the subset of bound queues which match that
+ filter expression.</para>
<para>Other entities, such as <emphasis role="italic">diverts</emphasis> can also be
bound to an address and messages will also be routed there.</para>
<note>
@@ -92,6 +120,8 @@
>ClientSession</literal> instances. <literal>ClientSessionFactory</literal>
instances know how to connect to the server to create sessions, and are configurable
with many settings.</para>
+ <para><literal>ClientSessionFactory</literal> instances are created using the <literal
+ >HornetQClient</literal> factory class.</para>
</section>
<section>
<title>ClientSession</title>
@@ -102,6 +132,16 @@
of a <ulink url="http://java.sun.com/javaee/technologies/jta/index.jsp">JTA</ulink>
transaction.</para>
<para>ClientSession instances group ClientConsumers and ClientProducers.</para>
+ <para>ClientSession instances can be registered with an optional <literal
+ >SendAcknowledgementHandler</literal>. This allows your client code to be
+ notified asynchronously when sent messages have successfully reached the server.
+ This unique HornetQ feature, allows you to have full guarantees that sent messages
+ have reached the server without having to block on each message sent until a
+ response is received. Blocking on each messages sent is costly since it requires a
+ network round trip for each message sent. By not blocking and receiving send
+ acknowledgements asynchronously you can create true end to end asynchronous systems
+ which is not possible using the standard JMS API. For more information on this
+ advanced feature please see the section <xref linkend="send-guarantees"/>.</para>
</section>
<section>
<title>ClientConsumer</title>
@@ -119,6 +159,14 @@
have no specified address, and the address is specified at send time for the
message.</para>
</section>
+ <warning>
+ <para>Please note that ClientSession, ClientProducer and ClientConsumer instances are
+ <emphasis>designed to be re-used</emphasis>.</para>
+ <para>It's an anti-pattern to create new ClientSession, ClientProducer and ClientConsumer instances
+ for each message you produce or consume. If you do this, your application will
+ perform very poorly. This is discussed further in the section on performance tuning
+ <xref linkend="perf-tuning"/>.</para>
+ </warning>
</section>
<section>
<title>A simple example of using Core</title>
@@ -137,7 +185,7 @@
ClientMessage message = session.createMessage(true);
-message.getBody().writeString("Hello");
+message.getBodyBuffer().writeString("Hello");
producer.send(message);
@@ -147,7 +195,7 @@
ClientMessage msgReceived = consumer.receive();
-System.out.println("message = " + msgReceived.getBody().readString());
+System.out.println("message = " + msgReceived.getBodyBuffer().readString());
session.close();</programlisting>
</section>
Modified: trunk/docs/user-manual/en/using-jms.xml
===================================================================
--- trunk/docs/user-manual/en/using-jms.xml 2010-01-07 13:25:20 UTC (rev 8767)
+++ trunk/docs/user-manual/en/using-jms.xml 2010-01-07 13:52:32 UTC (rev 8768)
@@ -21,7 +21,7 @@
<para>Although HornetQ provides a JMS agnostic messaging API, many users will be more
comfortable using JMS.</para>
<para>JMS is a very popular API standard for messaging, and most messaging systems provide a JMS
- API. If you are completely new to JMS we suggest you following the<ulink
+ API. If you are completely new to JMS we suggest you follow the<ulink
url="http://java.sun.com/products/jms/tutorial/1_3_1-fcs/doc/jms_tutorialTOC.html"> Sun
JMS tutorial</ulink> - a full JMS tutorial is out of scope for this guide.</para>
<para>HornetQ also ships with a wide range of examples, many of which demonstrate JMS API usage.
@@ -107,7 +107,8 @@
is the port used by the JNDI server and may vary depending on how you have configured
your JNDI server.</para>
<para>In the default standalone configuration, JNDI server ports are configured in the file
- <literal>hornetq-beans.xml</literal> by setting properties on the <literal>JNDIServer</literal> bean:</para>
+ <literal>hornetq-beans.xml</literal> by setting properties on the <literal
+ >JNDIServer</literal> bean:</para>
<programlisting>
<bean name="JNDIServer" class="org.jnp.server.Main">
<property name="namingInfo">
@@ -125,11 +126,11 @@
>localhost</literal>!</para>
</note>
<note>
- <para>The JNDIServer bean must be defined <emphasis>only when HornetQ is running in stand-alone mode</emphasis>.
- When HornetQ is integrated to JBoss Application Server, JBoss AS will provide a ready-to-use
- JNDI server without any additional configuration.</para>
+ <para>The JNDIServer bean must be defined <emphasis>only when HornetQ is running in
+ stand-alone mode</emphasis>. When HornetQ is integrated to JBoss Application
+ Server, JBoss AS will provide a ready-to-use JNDI server without any additional
+ configuration.</para>
</note>
-
</section>
<section>
<title>The code</title>
@@ -160,28 +161,38 @@
</programlisting>
<para>It's as simple as that. For a wide range of working JMS examples please see the
examples directory in the distribution.</para>
+ <warning>
+ <para>Please note that JMS connections, sessions, producers and consumers are
+ <emphasis>designed to be re-used</emphasis>.</para>
+ <para>It's an anti-pattern to create new connections, sessions, producers and consumers
+ for each message you produce or consume. If you do this, your application will
+ perform very poorly. This is discussed further in the section on performance tuning
+ <xref linkend="perf-tuning"/>.</para>
+ </warning>
</section>
<section>
<title>Directly instantiating JMS Resources without using JNDI</title>
<para>Although it's a very common JMS usage pattern to lookup JMS <emphasis>Administered
- Objects</emphasis> (that's JMS Queues, Topics and Connection Factories) from JNDI,
- in some cases a JNDI server is not available and you still want to use JMS, or you just
- think "Why do I need JNDI? Why can't I just instantiate these objects directly?"</para>
+ Objects</emphasis> (that's JMS Queue, Topic and ConnectionFactory instances) from
+ JNDI, in some cases a JNDI server is not available and you still want to use JMS, or you
+ just think "Why do I need JNDI? Why can't I just instantiate these objects
+ directly?"</para>
<para>With HornetQ you can do exactly that. HornetQ supports the direct instantiation of JMS
- Queue, Topic and Connection Factory instances, so you don't have to use JNDI at
+ Queue, Topic and ConnectionFactory instances, so you don't have to use JNDI at
all.</para>
<para>For a full working example of direct instantiation please see the JMS examples in
<xref linkend="examples"/>.</para>
<para>Here's our simple example, rewritten to not use JNDI at all:</para>
- <para>We create the JMS ConnectionFactory object via the HornetQJMSClient Utility class, note we need to provide
- connection parameters and specify which transport we are using, for more information on
- connectors please see <xref linkend="configuring-transports"/>.</para>
+ <para>We create the JMS ConnectionFactory object via the HornetQJMSClient Utility class,
+ note we need to provide connection parameters and specify which transport we are using,
+ for more information on connectors please see <xref linkend="configuring-transports"
+ />.</para>
<programlisting>
TransportConfiguration transportConfiguration =
new TransportConfiguration(NettyConnectorFactory.class.getName());
ConnectionFactory cf = HornetQJMSClient.createConnectionFactory(transportConfiguration);
</programlisting>
- <para>We create the JMS Queue Object via the HornetQJMSClient Utility class:</para>
+ <para>We also create the JMS Queue object via the HornetQJMSClient Utility class:</para>
<programlisting>Queue orderQueue = HornetQJMSClient.createQueue("OrderQueue");</programlisting>
<para>Next we create a JMS connection using the connection factory:</para>
<programlisting>Connection connection = cf.createConnection();</programlisting>
@@ -212,10 +223,10 @@
<section id="using-jms.dupsokbatchsize">
<title>Setting The Batch Size for DUPS_OK </title>
<para>When the JMS acknowledge mode is set to <literal>DUPS_OK</literal> it is possible to
- configure the consumer so that it sends the acknowledgements in batches rather that one
- at a time, saving valuable bandwidth. This can be configured via the connection factory
- via the <literal>dups-ok-batch-size</literal> element and is set in bytes. The default
- is 1024 * 1024 bytes = 1 MiB.</para>
+ configure the consumer so that it sends acknowledgements in batches rather that one at a
+ time, saving valuable bandwidth. This can be configured via the connection factory via
+ the <literal>dups-ok-batch-size</literal> element and is set in bytes. The default is
+ 1024 * 1024 bytes = 1 MiB.</para>
</section>
<section id="using-jms.txbatchsize">
<title>Setting The Transaction Batch Size</title>
14 years, 11 months
JBoss hornetq SVN: r8767 - trunk/docs/user-manual/en.
by do-not-reply@jboss.org
Author: ataylor
Date: 2010-01-07 08:25:20 -0500 (Thu, 07 Jan 2010)
New Revision: 8767
Modified:
trunk/docs/user-manual/en/using-server.xml
Log:
doc fix
Modified: trunk/docs/user-manual/en/using-server.xml
===================================================================
--- trunk/docs/user-manual/en/using-server.xml 2010-01-07 12:42:42 UTC (rev 8766)
+++ trunk/docs/user-manual/en/using-server.xml 2010-01-07 13:25:20 UTC (rev 8767)
@@ -369,7 +369,7 @@
</listitem>
<listitem>
<para>JMSServerManager</para>
- <para>Has the responsability to start the JMSServerManager and the same behaviour that JMSServerManager Bean</para>
+ <para>Has the responsibility to start the JMSServerManager and the same behaviour that JMSServerManager Bean</para>
</listitem>
</itemizedlist>
</section>
14 years, 11 months
JBoss hornetq SVN: r8766 - trunk/docs/user-manual/en.
by do-not-reply@jboss.org
Author: ataylor
Date: 2010-01-07 07:42:42 -0500 (Thu, 07 Jan 2010)
New Revision: 8766
Modified:
trunk/docs/user-manual/en/using-server.xml
Log:
doc fix
Modified: trunk/docs/user-manual/en/using-server.xml
===================================================================
--- trunk/docs/user-manual/en/using-server.xml 2010-01-07 12:25:45 UTC (rev 8765)
+++ trunk/docs/user-manual/en/using-server.xml 2010-01-07 12:42:42 UTC (rev 8766)
@@ -351,27 +351,25 @@
<itemizedlist>
<listitem>
<para>HornetQFileConfigurationService</para>
- <para>This services instances the configuration object that reads the Configuration
- File inside the SAR archive and configure the HornetQ instance.</para>
+ <para>This is an MBean Service that takes care of the life cycle of the <literal>FileConfiguration POJO</literal></para>
</listitem>
<listitem>
<para>JBossASSecurityManagerService</para>
- <para>The service that starts the Security Manager as the Microcontainer
- Bean.</para>
+ <para>This is an MBean Service that takes care of the lifecycle of the <literal>JBossASSecurityManager</literal> POJO</para>
</listitem>
<listitem>
<para>HornetQStarterService</para>
- <para>The HornetQ core server that depends on JBossASSecurityManagerService and
- HornetQFileConfigurationService MBeans</para>
+ <para>This is an MBean Service that controls the main <literal>HornetQServer</literal> POJO.
+ this has a dependency on JBossASSecurityManagerService and HornetQFileConfigurationService MBeans</para>
</listitem>
<listitem>
<para>HornetQJMSStarterService</para>
- <para>This is the core server. It's where 99% of the magic happens</para>
+ <para>This is an MBean Service that controls the <literal>JMSServerManagerImpl</literal> POJO.
+ If you aren't using jms this can be removed.</para>
</listitem>
<listitem>
<para>JMSServerManager</para>
- <para>Has the responsibility to start the JMSServerManager and the same behaviour
- that JMSServerManager Bean</para>
+ <para>Has the responsability to start the JMSServerManager and the same behaviour that JMSServerManager Bean</para>
</listitem>
</itemizedlist>
</section>
14 years, 11 months
JBoss hornetq SVN: r8765 - trunk/docs/user-manual/en.
by do-not-reply@jboss.org
Author: timfox
Date: 2010-01-07 07:25:45 -0500 (Thu, 07 Jan 2010)
New Revision: 8765
Modified:
trunk/docs/user-manual/en/architecture.xml
trunk/docs/user-manual/en/messaging-concepts.xml
trunk/docs/user-manual/en/notice.xml
trunk/docs/user-manual/en/preface.xml
trunk/docs/user-manual/en/project-info.xml
trunk/docs/user-manual/en/using-server.xml
Log:
user manual edits part 1
Modified: trunk/docs/user-manual/en/architecture.xml
===================================================================
--- trunk/docs/user-manual/en/architecture.xml 2010-01-07 11:56:10 UTC (rev 8764)
+++ trunk/docs/user-manual/en/architecture.xml 2010-01-07 12:25:45 UTC (rev 8765)
@@ -21,7 +21,8 @@
<para>In this section we will give an overview of the HornetQ high level architecture.</para>
<section>
<title>Core Architecture</title>
- <para>HornetQ core is designed simply as set of Plain Old Java Objects (POJOs).</para>
+ <para>HornetQ core is designed simply as set of Plain Old Java Objects (POJOs) - we hope you
+ like it's clean-cut design.</para>
<para>We've also designed it to have as few dependencies on external jars as possible. In
fact, HornetQ core has only one jar dependency, netty.jar,
other than the standard JDK classes! This is because we use some of the netty buffer classes
@@ -29,8 +30,8 @@
<para>This allows HornetQ to be easily embedded in your own project, or instantiated in any
dependency injection framework such as JBoss Microcontainer, Spring or Google
Guice.</para>
- <para>A HornetQ server has its own high performance persistent journal, which it uses for
- message and other persistence.</para>
+ <para>Each HornetQ server has its own ultra high performance persistent journal, which it
+ uses for message and other persistence.</para>
<para>Using a high performance journal allows outrageous persistence message performance,
something not achievable when using a relational database for persistence.</para>
<para>HornetQ clients, potentially on different physical machines interact with the HornetQ
@@ -91,7 +92,9 @@
role="italic">consuming</emphasis> messages via MDBs, it is also used when sending
message to the JMS messaging system e.g. from inside an EJB or servlet.</para>
<para>When integrating with a JMS messaging system from inside a JEE application server it
- is always recommended that this is done via a JCA adaptor.</para>
+ is always recommended that this is done via a JCA adaptor. In fact, communicating with a
+ JMS messaging system directly, without using JCA would be illegal according to the JEE
+ specification.</para>
<para>The application server's JCA service provides extra functionality such as connection
pooling and automatic transaction enlistment, which are desirable when using messaging,
say, from inside an EJB. It is possible to talk to a JMS messaging system directly from
@@ -118,14 +121,14 @@
messaging server not dependent on a JEE application server.</para>
<para>The standard stand-alone messaging server configuration comprises a core messaging
server, a JMS service and a JNDI service.</para>
- <para>The role of the JMS Service is to deploy any JMS Queues, Topics and ConnectionFactory
+ <para>The role of the JMS Service is to deploy any JMS Queue, Topic and ConnectionFactory
instances from any server side <literal>hornetq-jms.xml</literal> configuration files.
It also provides a simple management API for creating and destroying Queues, Topics and
ConnectionFactory instances which can be accessed via JMX or the connection. It is a
separate service to the HornetQ core server, since the core server is JMS agnostic. If
- you don't want to deploy any JMS Queues, Topics and ConnectionFactory instances via
- server side XML configuration and don't require a JMS management API on the server side
- then you can disable this service.</para>
+ you don't want to deploy any JMS Queue, Topic or ConnectionFactory instances via server
+ side XML configuration and don't require a JMS management API on the server side then
+ you can disable this service.</para>
<para>We also include a JNDI server since JNDI is a common requirement when using JMS to
lookup Queues, Topics and ConnectionFactory instances. If you do not require JNDI then
this service can also be disabled. HornetQ allows you to programmatically create JMS and
Modified: trunk/docs/user-manual/en/messaging-concepts.xml
===================================================================
--- trunk/docs/user-manual/en/messaging-concepts.xml 2010-01-07 11:56:10 UTC (rev 8764)
+++ trunk/docs/user-manual/en/messaging-concepts.xml 2010-01-07 12:25:45 UTC (rev 8765)
@@ -92,7 +92,7 @@
<para>As an order processor receives a message, it fulfills the order, sends order
information to the warehouse system and then updates the order database with the
order details. Once it's done that it acknowledges the message to tell the server
- that the order message is done and can be forgotten about. Often the send to the
+ that the order has been processed and can be forgotten about. Often the send to the
warehouse system, update in database and acknowledgement will be completed in a
single transaction to ensure <ulink url="http://en.wikipedia.org/wiki/ACID"
>ACID</ulink> properties.</para>
@@ -109,7 +109,7 @@
only consumed by a single consumer.</para>
<para>Subscriptions can optionally be <emphasis role="italic">durable</emphasis> which
means they retain a copy of each message sent to the topic until the subscriber
- consumes it - even if the server crashes or is restarted in between. Non-durable
+ consumes them - even if the server crashes or is restarted in between. Non-durable
subscriptions only last a maximum of the lifetime of the connection that created
them.</para>
<para>An example of publish-subscribe messaging would be a news feed. As news articles
@@ -125,18 +125,20 @@
messaging</emphasis>. With reliable messaging the server gives a guarantee that the
message will be delivered once and only once to each consumer of a queue or each durable
subscription of a topic, even in the event of system failure. This is crucial for many
- businesses, you don't want your orders fulfilled more than once or your orders to be
- lost.</para>
+ businesses; e.g. you don't want your orders fulfilled more than once or any of your
+ orders to be lost.</para>
<para>In other cases you may not care about a once and only once delivery guarantee and are
- happy to cope with duplicate deliveries. The messaging system allows you to configure
- which delivery guarantees you require.</para>
+ happy to cope with duplicate deliveries or lost messages - an example of this might be
+ transient stock price updates - which are quickly superseded by the next update on the
+ same stock. The messaging system allows you to configure which delivery guarantees you
+ require.</para>
</section>
<section>
<title>Transactions</title>
<para>Messaging systems typically support the sending and acknowledgement of multiple
messages in a single local transaction. HornetQ also supports the sending and
acknowledgement of message as part of a large global transaction - using the Java
- mapping of XA, JTA.</para>
+ mapping of XA; JTA.</para>
</section>
<section>
<title>Durability</title>
@@ -163,11 +165,11 @@
specification - i.e. it was created to encapsulate common functionality of the
already existing messaging systems that were available at the time of its
creation.</para>
- <para>JMS is a very popular API and is implemented by most messaging systems. JMS is
+ <para>JMS is a very popular API and is implemented by most, messaging systems. JMS is
only available to clients running Java.</para>
<para>JMS does not define a standard wire format - it only defines a programmatic API so
- JMS clients and servers from different vendors cannot interoperate since they will
- most likely use the vendor's own internal wire protocol.</para>
+ JMS clients and servers from different vendors cannot directly interoperate since
+ each will use the vendor's own internal wire protocol.</para>
<para>HornetQ provides a fully compliant JMS 1.1 API.</para>
</section>
<section>
@@ -185,10 +187,9 @@
<para><ulink url="http://en.wikipedia.org/wiki/Representational_State_Transfer"
>REST</ulink> approaches to messaging are showing a lot interest
recently.</para>
- <para>It seems fairly likely that API standards for cloud computing will eventually
- converge on a REST style set of interfaces and consequently a REST messaging
- approach is a very strong contender for becoming the defacto method for messaging
- interoperability.</para>
+ <para>It seems plausible that API standards for cloud computing may converge on a REST
+ style set of interfaces and consequently a REST messaging approach is a very strong
+ contender for becoming the defacto method for messaging interoperability.</para>
<para>With a REST approach messaging resources are manipulated as resources defined by a
URI and typically using a simple set of operations on those resources, e.g. PUT,
POST, GET etc. REST approaches to messaging often use HTTP as their underlying
@@ -214,10 +215,10 @@
</section>
<section>
<title>AMQP</title>
- <para><ulink url="http://en.wikipedia.org/wiki/AMQP">AMQP</ulink> is an emerging
- standard for interoperable messaging. It also defines a wire format, so any AMQP
- client can work with any messaging system that supports AMQP. AMQP clients are
- available in many different programming languages.</para>
+ <para><ulink url="http://en.wikipedia.org/wiki/AMQP">AMQP</ulink> is a specification for
+ interoperable messaging. It also defines a wire format, so any AMQP client can work
+ with any messaging system that supports AMQP. AMQP clients are available in many
+ different programming languages.</para>
<para>HornetQ will shortly be implementing AMQP.</para>
</section>
</section>
Modified: trunk/docs/user-manual/en/notice.xml
===================================================================
--- trunk/docs/user-manual/en/notice.xml 2010-01-07 11:56:10 UTC (rev 8764)
+++ trunk/docs/user-manual/en/notice.xml 2010-01-07 12:25:45 UTC (rev 8765)
@@ -19,7 +19,7 @@
<chapter id="notice">
<title>Legal Notice</title>
- <para>Copyright © 2009 Red Hat, Inc. and others.</para>
+ <para>Copyright © 2010 Red Hat, Inc. and others.</para>
<para>The text of and illustrations in this document are licensed by Red Hat under
a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA").</para>
<para>An explanation of CC-BY-SA is available at
Modified: trunk/docs/user-manual/en/preface.xml
===================================================================
--- trunk/docs/user-manual/en/preface.xml 2010-01-07 11:56:10 UTC (rev 8764)
+++ trunk/docs/user-manual/en/preface.xml 2010-01-07 12:25:45 UTC (rev 8765)
@@ -21,7 +21,7 @@
<para>What is HornetQ?</para>
<itemizedlist>
<listitem>
- <para>HornetQ is an open source project to build a multi-protocol, embeddable, high
+ <para>HornetQ is an open source project to build a multi-protocol, embeddable, very high
performance, clustered, asynchronous messaging system.</para>
</listitem>
<listitem>
@@ -30,8 +30,8 @@
/>.</para>
</listitem>
<listitem>
- <para>For answers to more questions about what HornetQ is and isn't please visit the
- <ulink url="http://www.jboss.org/community/wiki/HornetQGeneralFAQs">FAQs wiki
+ <para>For answers to more questions about what HornetQ is and what it isn't please visit
+ the <ulink url="http://www.jboss.org/community/wiki/HornetQGeneralFAQs">FAQs wiki
page</ulink>.</para>
</listitem>
</itemizedlist>
@@ -49,7 +49,7 @@
from Windows desktops to IBM mainframes.</para>
</listitem>
<listitem>
- <para>Superb performance. Our ground-breaking high performance journal provides
+ <para>Amazing performance. Our ground-breaking high performance journal provides
persistent messaging performance at rates normally seen for non-persistent
messaging, our non-persistent messaging performance rocks the boat too.</para>
</listitem>
@@ -58,9 +58,9 @@
and others you won't find anywhere else.</para>
</listitem>
<listitem>
- <para>Elegant POJO based design with minimal third party dependencies. Run HornetQ
+ <para>Elegant, clean-cut design with minimal third party dependencies. Run HornetQ
stand-alone, run it in integrated in your favourite JEE application server, or run
- it embedded inside your own product.</para>
+ it embedded inside your own product. It's up to you.</para>
</listitem>
<listitem>
<para>Seamless high availability. We provide a HA solution with automatic client
Modified: trunk/docs/user-manual/en/project-info.xml
===================================================================
--- trunk/docs/user-manual/en/project-info.xml 2010-01-07 11:56:10 UTC (rev 8764)
+++ trunk/docs/user-manual/en/project-info.xml 2010-01-07 12:25:45 UTC (rev 8765)
@@ -1,5 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
-
<!-- ============================================================================= -->
<!-- Copyright © 2009 Red Hat, Inc. and others. -->
<!-- -->
@@ -17,47 +16,75 @@
<!-- and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent -->
<!-- permitted by applicable law. -->
<!-- ============================================================================= -->
-
<chapter id="project-info">
- <title>Project Information</title>
- <para>The official HornetQ project page is <ulink
- url="http://hornetq.org/">http://hornetq.org/</ulink>.</para>
-
- <section id="download.software">
- <title>Software Download</title>
- <para>The software can be download from the Download page:<ulink
- url="http://hornetq.org/downloads.html">http://hornetq.org/downloads.html</ulink></para>
- </section>
-
- <section id="download.svn">
- <title>Project Information</title>
- <para>
- <itemizedlist>
- <listitem><para>Please take a look at our project <ulink url="http://www.jboss.org/community/wiki/HornetQ">wiki</ulink></para></listitem>
- <listitem> <para>If you have any user questions please use our <ulink
- url="http://www.jboss.org/index.html?module=bb&op=viewforum&f=312">user
- forum</ulink></para></listitem>
- <listitem><para>If you have development related questions, please use our <ulink
- url="http://www.jboss.org/index.html?module=bb&op=viewforum&f=313">developer
- forum</ulink></para></listitem>
- <listitem><para>Pop in and chat to us in our <ulink url="irc://irc.freenode.net:6667/hornetq">IRC channel</ulink></para></listitem>
- <listitem><para>Our project <ulink url="http://hornetq.blogspot.com/">blog</ulink></para></listitem>
- <listitem><para>Follow us on <ulink url="http://twitter.com/hornetq">twitter</ulink></para></listitem>
- <listitem><para>HornetQ Subversion trunk is <ulink url="http://anonsvn.jboss.org/repos/hornetq/trunk">http://anonsvn.jboss.org/repos/hornetq/trunk</ulink></para></listitem>
- <listitem><para>All release tags are availble from <ulink url="http://anonsvn.jboss.org/repos/hornetq/tags">http://anonsvn.jboss.org/repos/hornetq/tags</ulink></para></listitem>
- </itemizedlist>
- </para>
-
-
- <para>Red Hat kindly employs developers to work full time on HornetQ, the motley crew are:
- <itemizedlist>
- <listitem><para> <ulink url="http://jbossfox.blogspot.com">Tim Fox</ulink> (project lead)</para></listitem>
- <listitem><para>Howard Gao</para></listitem>
- <listitem><para><ulink url="http://jmesnil.net/weblog/">Jeff Mesnil</ulink></para></listitem>
- <listitem><para>Clebert Suconic</para></listitem>
- <listitem><para>Andy Taylor</para></listitem>
- </itemizedlist>
- </para>
- </section>
-
+ <title>Project Information</title>
+ <para>The official HornetQ project page is <ulink url="http://hornetq.org/"
+ >http://hornetq.org/</ulink>.</para>
+ <section id="download.software">
+ <title>Software Download</title>
+ <para>The software can be download from the Download page:<ulink
+ url="http://hornetq.org/downloads.html">http://hornetq.org/downloads.html</ulink></para>
+ </section>
+ <section id="download.svn">
+ <title>Project Information</title>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>Please take a look at our project <ulink
+ url="http://www.jboss.org/community/wiki/HornetQ">wiki</ulink></para>
+ </listitem>
+ <listitem>
+ <para>If you have any user questions please use our <ulink
+ url="http://www.jboss.org/index.html?module=bb&op=viewforum&f=312">user
+ forum</ulink></para>
+ </listitem>
+ <listitem>
+ <para>If you have development related questions, please use our <ulink
+ url="http://www.jboss.org/index.html?module=bb&op=viewforum&f=313"
+ >developer forum</ulink></para>
+ </listitem>
+ <listitem>
+ <para>Pop in and chat to us in our <ulink url="irc://irc.freenode.net:6667/hornetq"
+ >IRC channel</ulink></para>
+ </listitem>
+ <listitem>
+ <para>Our project <ulink url="http://hornetq.blogspot.com/">blog</ulink></para>
+ </listitem>
+ <listitem>
+ <para>Follow us on <ulink url="http://twitter.com/hornetq">twitter</ulink></para>
+ </listitem>
+ <listitem>
+ <para>HornetQ Subversion trunk is <ulink
+ url="http://anonsvn.jboss.org/repos/hornetq/trunk"
+ >http://anonsvn.jboss.org/repos/hornetq/trunk</ulink></para>
+ </listitem>
+ <listitem>
+ <para>All release tags are available from <ulink
+ url="http://anonsvn.jboss.org/repos/hornetq/tags"
+ >http://anonsvn.jboss.org/repos/hornetq/tags</ulink></para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ <para>Red Hat kindly employs developers to work full time on HornetQ, they are: <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://jbossfox.blogspot.com">Tim Fox</ulink> (project lead)</para>
+ </listitem>
+ <listitem>
+ <para>Howard Gao</para>
+ </listitem>
+ <listitem>
+ <para><ulink url="http://jmesnil.net/weblog/">Jeff Mesnil</ulink></para>
+ </listitem>
+ <listitem>
+ <para>Clebert Suconic</para>
+ </listitem>
+ <listitem>
+ <para>Andy Taylor</para>
+ </listitem>
+ </itemizedlist></para>
+ <para> And many thanks to all our contributors, both old and new who helped create HornetQ,
+ for a full list of the people who made it happen, take a look at our <ulink
+ url="http://jboss.org/hornetq/community/team.html">team page</ulink>. </para>
+ </section>
</chapter>
Modified: trunk/docs/user-manual/en/using-server.xml
===================================================================
--- trunk/docs/user-manual/en/using-server.xml 2010-01-07 11:56:10 UTC (rev 8764)
+++ trunk/docs/user-manual/en/using-server.xml 2010-01-07 12:25:45 UTC (rev 8765)
@@ -118,13 +118,13 @@
what beans the Microcontainer should create and what dependencies to enforce
between them. Remember that HornetQ is just a set of POJOs. In the stand-alone
server, it's the JBoss Microcontainer which instantiates these POJOs and
- enforces dependencies between them and other beans. Please see <xref
- linkend="usingserver.mainconfig"/> for more information on this file.</para>
+ enforces dependencies between them and other beans. </para>
</listitem>
<listitem>
<para><literal>hornetq-configuration.xml</literal>. This is the main HornetQ
configuration file. All the parameters in this file are described in <xref
- linkend="configuration-index"/>.</para>
+ linkend="configuration-index"/>. Please see <xref
+ linkend="usingserver.mainconfig"/> for more information on this file.</para>
</listitem>
<listitem>
<para><literal>hornetq-queues.xml</literal>. This file contains predefined queues,
@@ -138,8 +138,8 @@
will be loaded if found.</para>
</listitem>
<listitem>
- <para><literal>hornetq-users.xml</literal> HornetQ ships with a security manager
- implementation which obtains user credentials from the <literal
+ <para><literal>hornetq-users.xml</literal> HornetQ ships with a basic security
+ manager implementation which obtains user credentials from the <literal
>hornetq-users.xml</literal> file. This file contains user, password and
role information. For more information on security ,please see <xref
linkend="security"/>.</para>
@@ -176,7 +176,7 @@
<param key="host" value="${hornetq.remoting.netty.host:localhost}" type="String"/>
<param key="port" value="${hornetq.remoting.netty.port:5445}" type="Integer"/>
</connector></programlisting>
- <para>here you can see we have replaced 2 values with system properties <literal
+ <para>Here you can see we have replaced 2 values with system properties <literal
>hornetq.remoting.netty.host</literal> and <literal
>hornetq.remoting.netty.port</literal>. These values will be replaced by the value
found in the system property if there is one, if not they default back to localhost or
@@ -310,7 +310,8 @@
<section id="server.microkernel.configuration">
<title>JBoss AS4 MBean Service.</title>
<note>
- <para>The section is only to configure HornetQ on JBoss AS4. The service funtionality is similar to Microcontainer Beans</para>
+ <para>The section is only to configure HornetQ on JBoss AS4. The service funtionality is
+ similar to Microcontainer Beans</para>
</note>
<para>
<programlisting><?xml version="1.0" encoding="UTF-8"?>
@@ -344,21 +345,24 @@
</server>
</programlisting>
</para>
- <para>This jboss-service.xml configuration file is included inside the hornetq-service.sar on AS4 with embebbed HornetQ.
- As you can see, on this configuration file we are starting various services:</para>
+ <para>This jboss-service.xml configuration file is included inside the hornetq-service.sar
+ on AS4 with embebbed HornetQ. As you can see, on this configuration file we are starting
+ various services:</para>
<itemizedlist>
<listitem>
<para>HornetQFileConfigurationService</para>
- <para>This services instances the configuration object that reads the Configuration File
- inside the SAR archive and configure the HornetQ instance.</para>
+ <para>This services instances the configuration object that reads the Configuration
+ File inside the SAR archive and configure the HornetQ instance.</para>
</listitem>
<listitem>
<para>JBossASSecurityManagerService</para>
- <para>The service that starts the Security Manager as the Microcontainer Bean.</para>
+ <para>The service that starts the Security Manager as the Microcontainer
+ Bean.</para>
</listitem>
<listitem>
<para>HornetQStarterService</para>
- <para>The HornetQ core server that depends on JBossASSecurityManagerService and HornetQFileConfigurationService MBeans</para>
+ <para>The HornetQ core server that depends on JBossASSecurityManagerService and
+ HornetQFileConfigurationService MBeans</para>
</listitem>
<listitem>
<para>HornetQJMSStarterService</para>
@@ -366,7 +370,8 @@
</listitem>
<listitem>
<para>JMSServerManager</para>
- <para>Has the responsability to start the JMSServerManager and the same behaviour that JMSServerManager Bean</para>
+ <para>Has the responsibility to start the JMSServerManager and the same behaviour
+ that JMSServerManager Bean</para>
</listitem>
</itemizedlist>
</section>
14 years, 11 months
JBoss hornetq SVN: r8764 - in trunk: docs/user-manual/en and 1 other directory.
by do-not-reply@jboss.org
Author: ataylor
Date: 2010-01-07 06:56:10 -0500 (Thu, 07 Jan 2010)
New Revision: 8764
Modified:
trunk/docs/user-manual/en/using-server.xml
trunk/hornetq.iws
Log:
doc fix
Modified: trunk/docs/user-manual/en/using-server.xml
===================================================================
--- trunk/docs/user-manual/en/using-server.xml 2010-01-07 11:42:52 UTC (rev 8763)
+++ trunk/docs/user-manual/en/using-server.xml 2010-01-07 11:56:10 UTC (rev 8764)
@@ -171,7 +171,8 @@
files. by replacing a value with the name of a system property. Here is an example of
this with a connector configuration:</para>
<programlisting><connector name="netty">
- <factory-class>org.hornetq.integration.transports.netty.NettyConnectorFactory</factory-class>
+ <factory-class>org.hornetq.integration.transports.netty.NettyConnectorFactory
+ </factory-class>
<param key="host" value="${hornetq.remoting.netty.host:localhost}" type="String"/>
<param key="port" value="${hornetq.remoting.netty.port:5445}" type="Integer"/>
</connector></programlisting>
Modified: trunk/hornetq.iws
===================================================================
--- trunk/hornetq.iws 2010-01-07 11:42:52 UTC (rev 8763)
+++ trunk/hornetq.iws 2010-01-07 11:56:10 UTC (rev 8764)
@@ -1,16 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager" verified="true">
- <list default="true" readonly="true" id="a2aae645-dbcd-4d6e-9c99-efa05d93589a" name="Default" comment="" />
- <list id="e1b486d8-d1b7-4aff-87e2-e20629d1b1d5" name="intellij" comment="intellij project updates">
- <change type="MODIFICATION" beforePath="$PROJECT_DIR$/examples/javaee/hornetq-javaee-examples.iml" afterPath="$PROJECT_DIR$/examples/javaee/hornetq-javaee-examples.iml" />
- <change type="MODIFICATION" beforePath="$PROJECT_DIR$/hornetq.ipr" afterPath="$PROJECT_DIR$/hornetq.ipr" />
+ <list readonly="true" id="a2aae645-dbcd-4d6e-9c99-efa05d93589a" name="Default" comment="" />
+ <list default="true" id="5341122e-b51c-4e90-b798-7086790ef7e8" name="intellij" comment="">
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/hornetq.iws" afterPath="$PROJECT_DIR$/hornetq.iws" />
- <change type="MODIFICATION" beforePath="$PROJECT_DIR$/hornetq.iml" afterPath="$PROJECT_DIR$/hornetq.iml" />
- <change type="MODIFICATION" beforePath="$PROJECT_DIR$/examples/jms/hornetq-jms-examples.iml" afterPath="$PROJECT_DIR$/examples/jms/hornetq-jms-examples.iml" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/docs/user-manual/en/using-server.xml" afterPath="$PROJECT_DIR$/docs/user-manual/en/using-server.xml" />
</list>
+ <ignored path="messaging.iws" />
<ignored path=".idea/workspace.xml" />
- <ignored path="messaging.iws" />
<option name="TRACKING_ENABLED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -66,7 +63,7 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
- <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1149" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
+ <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1150" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
<option name="ENABLED" value="true" />
<option name="LOG_ENABLED" value="false" />
<option name="LOG_EXPRESSION_ENABLED" value="false" />
@@ -79,7 +76,7 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
- <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1175" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
+ <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1176" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
<option name="ENABLED" value="true" />
<option name="LOG_ENABLED" value="false" />
<option name="LOG_EXPRESSION_ENABLED" value="false" />
@@ -92,7 +89,7 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
- <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1202" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
+ <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1203" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
<option name="ENABLED" value="true" />
<option name="LOG_ENABLED" value="false" />
<option name="LOG_EXPRESSION_ENABLED" value="false" />
@@ -105,7 +102,7 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
- <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1213" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
+ <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1214" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
<option name="ENABLED" value="true" />
<option name="LOG_ENABLED" value="false" />
<option name="LOG_EXPRESSION_ENABLED" value="false" />
@@ -118,7 +115,7 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
- <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1224" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
+ <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1225" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
<option name="ENABLED" value="true" />
<option name="LOG_ENABLED" value="false" />
<option name="LOG_EXPRESSION_ENABLED" value="false" />
@@ -131,7 +128,7 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
- <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1136" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
+ <breakpoint url="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/server/impl/QueueImplTest.java" line="1137" class="org.hornetq.tests.unit.core.server.impl.QueueImplTest" package="org.hornetq.tests.unit.core.server.impl">
<option name="ENABLED" value="true" />
<option name="LOG_ENABLED" value="false" />
<option name="LOG_EXPRESSION_ENABLED" value="false" />
@@ -209,7 +206,7 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
- <breakpoint url="file://$PROJECT_DIR$/src/main/org/hornetq/core/cluster/impl/DiscoveryGroupImpl.java" line="379" class="org.hornetq.core.cluster.impl.DiscoveryGroupImpl" package="org.hornetq.core.cluster.impl">
+ <breakpoint url="file://$PROJECT_DIR$/src/main/org/hornetq/core/cluster/impl/DiscoveryGroupImpl.java" line="380" class="org.hornetq.core.cluster.impl.DiscoveryGroupImpl" package="org.hornetq.core.cluster.impl">
<option name="ENABLED" value="true" />
<option name="LOG_ENABLED" value="false" />
<option name="LOG_EXPRESSION_ENABLED" value="false" />
@@ -303,53 +300,53 @@
<component name="FileColors" enabled="true" enabledForTabs="true" />
<component name="FileEditorManager">
<leaf>
- <file leaf-file-name="ClientSessionFactoryImpl.java" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/api/core/client/ClientSessionFactoryImpl.java">
+ <file leaf-file-name="MDB_CMT_TxRequiredExample.java" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/examples/javaee/mdb-cmt-tx-required/src/org/hornetq/javaee/example/server/MDB_CMT_TxRequiredExample.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="54" column="37" selection-start="2265" selection-end="2289" vertical-scroll-proportion="0.0">
+ <state line="59" column="69" selection-start="2484" selection-end="2484" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
- <file leaf-file-name="HornetQClient.java" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/api/core/client/HornetQClient.java">
+ <file leaf-file-name="build-maven.xml" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/build-maven.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="73" column="77" selection-start="2722" selection-end="2722" vertical-scroll-proportion="0.0">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
- <file leaf-file-name="hornetq-version.properties" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/src/config/common/hornetq-version.properties">
+ <file leaf-file-name="messaging-concepts.xml" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/docs/user-manual/en/messaging-concepts.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="0" column="40" selection-start="40" selection-end="40" vertical-scroll-proportion="0.0">
+ <state line="32" column="57" selection-start="2432" selection-end="2432" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
- <file leaf-file-name="JavaUtilities.cpp" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/native/src/JavaUtilities.cpp">
+ <file leaf-file-name="architecture.xml" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/docs/user-manual/en/architecture.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="28" column="58" selection-start="1017" selection-end="1017" vertical-scroll-proportion="0.0">
+ <state line="25" column="65" selection-start="1989" selection-end="1989" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
- <file leaf-file-name="README" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/native/README">
+ <file leaf-file-name="using-server.xml" pinned="false" current="true" current-in-tab="true">
+ <entry file="file://$PROJECT_DIR$/docs/user-manual/en/using-server.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="43" column="44" selection-start="1202" selection-end="1221" vertical-scroll-proportion="0.0">
+ <state line="174" column="11" selection-start="11694" selection-end="11694" vertical-scroll-proportion="0.74358976">
<folding />
</state>
</provider>
</entry>
</file>
- <file leaf-file-name="bootstrap" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/native/bootstrap">
+ <file leaf-file-name="hornetq-jms.xml" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/examples/javaee/mdb-cmt-tx-required/server/hornetq-jms.xml">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
@@ -357,37 +354,37 @@
</provider>
</entry>
</file>
- <file leaf-file-name="org_hornetq_core_asyncio_impl_AsynchronousFileImpl.h" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/native/src/org_hornetq_core_asyncio_impl_AsynchronousFileImpl.h">
+ <file leaf-file-name="HornetQActivation.java" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/ra/inflow/HornetQActivation.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <state line="263" column="45" selection-start="6376" selection-end="6376" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
- <file leaf-file-name="pom.xml" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/pom.xml">
+ <file leaf-file-name="HornetQMessageHandler.java" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/ra/inflow/HornetQMessageHandler.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="21" column="21" selection-start="1019" selection-end="1019" vertical-scroll-proportion="0.0">
+ <state line="67" column="25" selection-start="2177" selection-end="2177" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
- <file leaf-file-name="build-maven.xml" pinned="false" current="true" current-in-tab="true">
- <entry file="file://$PROJECT_DIR$/build-maven.xml">
+ <file leaf-file-name="build.xml" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/examples/javaee/mdb-cmt-tx-required/build.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="15" column="52" selection-start="762" selection-end="762" vertical-scroll-proportion="0.3802817">
+ <state line="19" column="16" selection-start="846" selection-end="846" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="build.xml" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/tests/smoke/build.xml">
+ <entry file="file://$PROJECT_DIR$/examples/javaee/common/build.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="149" column="58" selection-start="6069" selection-end="6069" vertical-scroll-proportion="-9.818182">
+ <state line="175" column="16" selection-start="7194" selection-end="7311" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
@@ -403,22 +400,22 @@
<component name="IdeDocumentHistory">
<option name="changedFiles">
<list>
+ <option value="$PROJECT_DIR$/native/src/JavaUtilities.cpp" />
+ <option value="$PROJECT_DIR$/docs/user-manual/en/using-jms.xml" />
+ <option value="$PROJECT_DIR$/examples/jms/clustered-queue/src/org/hornetq/jms/example/ClusteredQueueExample.java" />
+ <option value="$PROJECT_DIR$/src/main/org/hornetq/core/postoffice/impl/BindingsImpl.java" />
+ <option value="$PROJECT_DIR$/examples/jms/clustered-queue/build.xml" />
+ <option value="$PROJECT_DIR$/src/main/org/hornetq/jms/HornetQDestination.java" />
<option value="$PROJECT_DIR$/src/main/org/hornetq/api/jms/HornetQJMSClient.java" />
- <option value="$PROJECT_DIR$/tests/joram-tests/config/provider.properties" />
- <option value="$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/jms/connection/ExceptionListenerTest.java" />
- <option value="$PROJECT_DIR$/src/main/org/hornetq/ra/HornetQResourceAdapter.java" />
- <option value="$PROJECT_DIR$/src/main/org/hornetq/jms/server/impl/JMSServerManagerImpl.java" />
- <option value="$PROJECT_DIR$/src/main/org/hornetq/core/config/impl/FileConfiguration.java" />
- <option value="$PROJECT_DIR$/src/main/org/hornetq/jms/server/config/impl/ConnectionFactoryConfigurationImpl.java" />
- <option value="$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/jms/server/JMSServerStartStopTest.java" />
- <option value="$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/jms/HornetQConnectionFactoryTest.java" />
- <option value="$PROJECT_DIR$/tests/joram-tests/src/org/hornetq/jms/SpawnedJMSServer.java" />
- <option value="$PROJECT_DIR$/tests/joram-tests/src/org/hornetq/jms/HornetQAdmin.java" />
- <option value="$PROJECT_DIR$/src/main/org/hornetq/jms/HornetQConnectionFactory.java" />
- <option value="$PROJECT_DIR$/pom.xml" />
- <option value="$PROJECT_DIR$/build-maven.xml" />
- <option value="$PROJECT_DIR$/src/config/common/hornetq-version.properties" />
- <option value="$PROJECT_DIR$/native/src/JavaUtilities.cpp" />
+ <option value="$PROJECT_DIR$/examples/jms/pre-acknowledge/server0/hornetq-configuration.xml" />
+ <option value="$PROJECT_DIR$/examples/jms/reattach-node/server0/hornetq-configuration.xml" />
+ <option value="$PROJECT_DIR$/examples/javaee/common/build.xml" />
+ <option value="$PROJECT_DIR$/examples/javaee/mdb-cmt-tx-required/build.xml" />
+ <option value="$PROJECT_DIR$/examples/javaee/mdb-cmt-tx-required/src/org/hornetq/javaee/example/MDB_CMT_TxRequiredClientExample.java" />
+ <option value="$PROJECT_DIR$/examples/javaee/mdb-cmt-tx-required/src/org/hornetq/javaee/example/server/MDB_CMT_TxRequiredExample.java" />
+ <option value="$PROJECT_DIR$/docs/user-manual/en/messaging-concepts.xml" />
+ <option value="$PROJECT_DIR$/docs/user-manual/en/architecture.xml" />
+ <option value="$PROJECT_DIR$/docs/user-manual/en/using-server.xml" />
</list>
</option>
</component>
@@ -1343,6 +1340,8 @@
<sortByType />
</navigator>
<panes>
+ <pane id="Favorites" />
+ <pane id="PackagesPane" />
<pane id="Scope" />
<pane id="ProjectPane">
<subPane>
@@ -1372,7 +1371,7 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="src" />
+ <option name="myItemId" value="docs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
@@ -1386,11 +1385,11 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="src" />
+ <option name="myItemId" value="docs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="config" />
+ <option name="myItemId" value="user-manual" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
@@ -1404,37 +1403,35 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="src" />
+ <option name="myItemId" value="docs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="config" />
+ <option name="myItemId" value="user-manual" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="common" />
+ <option name="myItemId" value="en" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
</subPane>
</pane>
- <pane id="PackagesPane" />
- <pane id="Favorites" />
</panes>
</component>
<component name="PropertiesComponent">
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_flatWidth1" value="287" />
+ <property name="project.structure.last.edited" value="Modules" />
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_flatWidth0" value="225" />
- <property name="project.structure.last.edited" value="Modules" />
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_flatWidth3" value="35" />
+ <property name="OverrideImplement.combined" value="true" />
+ <property name="project.structure.proportion" value="0.15" />
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_flatWidth2" value="246" />
- <property name="project.structure.proportion" value="0.15" />
- <property name="OverrideImplement.combined" value="true" />
+ <property name="options.splitter.main.proportions" value="0.3" />
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_flatOrder1" value="1" />
- <property name="options.splitter.main.proportions" value="0.3" />
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_flatOrder0" value="0" />
+ <property name="RunManagerConfig.showSettingsBeforeRunnig" value="false" />
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_flatOrder3" value="3" />
- <property name="RunManagerConfig.showSettingsBeforeRunnig" value="false" />
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_flatOrder2" value="2" />
<property name="recentsLimit" value="5" />
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_treeWidth2" value="200" />
@@ -1456,12 +1453,12 @@
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_treeOrder3" value="3" />
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_treeOrder4" value="4" />
<property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_treeOrder1" value="1" />
+ <property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_treeOrder2" value="2" />
<property name="project.structure.side.proportion" value="0.2" />
- <property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_treeOrder2" value="2" />
+ <property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_treeOrder0" value="0" />
<property name="MemberChooser.copyJavadoc" value="false" />
- <property name="FileHistory.org.jetbrains.idea.svn.history.SvnHistoryProvider_treeOrder0" value="0" />
+ <property name="options.searchVisible" value="true" />
<property name="dynamic.classpath" value="false" />
- <property name="options.searchVisible" value="true" />
</component>
<component name="RecentsManager">
<key name="CopyClassDialog.RECENTS_KEY">
@@ -1472,7 +1469,7 @@
</key>
</component>
<component name="RestoreUpdateTree">
- <UpdateInfo date="1/6/10 8:48 AM" ActionInfo="_Update">
+ <UpdateInfo date="1/7/10 10:57 AM" ActionInfo="_Update">
<UpdatedFiles>
<FILE-GROUP>
<option name="myUpdateName" value="Updated from server" />
@@ -1486,6 +1483,37 @@
<option name="mySupportsDeletion" value="false" />
<option name="myCanBeAbsent" value="false" />
<option name="myId" value="UPDATED" />
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/src/config/jboss-as/build-as4.xml</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/src/config/jboss-as/build-as5.xml</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/src/main/org/hornetq/core/config/impl/FileConfiguration.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/src/main/org/hornetq/api/core/management/ResourceNames.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/src/main/org/hornetq/api/core/management/ManagementHelper.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/src/main/org/hornetq/api/core/client/HornetQClient.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/src/main/org/hornetq/api/jms/management/JMSManagementHelper.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/src/main/org/hornetq/jms/server/config/impl/ConnectionFactoryConfigurationImpl.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/examples/javaee/xarecovery/server/jbossts-properties.xml</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/cluster/failover/FailoverTestBase.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/cluster/reattach/NettyMultiThreadRandomReattachTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/cluster/reattach/RandomReattachTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/remoting/SynchronousCloseTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/remoting/NetworkAddressTestBase.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/remoting/PingTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/jms/server/management/TopicControlUsingJMSTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/jms/server/management/JMSServerControlUsingJMSTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/management/BroadcastGroupControlUsingCoreTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/management/AcceptorControlTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/management/DiscoveryGroupControlUsingCoreTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/management/QueueControlUsingCoreTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/management/AddressControlUsingCoreTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/management/DivertControlUsingCoreTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/management/AcceptorControlUsingCoreTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/management/ClusterConnectionControlUsingCoreTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/management/HornetQServerControlUsingCoreTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/client/SessionFactoryTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/client/SessionCloseOnGCTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/stress/remote/PingStressTest.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/src/org/hornetq/tests/util/ServiceTestBase.java</PATH>
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/tests/joram-tests/src/org/hornetq/jms/HornetQAdmin.java</PATH>
</FILE-GROUP>
<FILE-GROUP>
<option name="myUpdateName" value="Created" />
@@ -1493,6 +1521,7 @@
<option name="mySupportsDeletion" value="false" />
<option name="myCanBeAbsent" value="false" />
<option name="myId" value="CREATED" />
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/src/main/org/hornetq/core/client/impl/ClientSessionFactoryImpl.java</PATH>
</FILE-GROUP>
<FILE-GROUP>
<option name="myUpdateName" value="Deleted" />
@@ -1500,6 +1529,7 @@
<option name="mySupportsDeletion" value="false" />
<option name="myCanBeAbsent" value="true" />
<option name="myId" value="REMOVED_FROM_REPOSITORY" />
+ <PATH vcs="svn" revision="8760">$PROJECT_DIR$/src/main/org/hornetq/api/core/client/ClientSessionFactoryImpl.java</PATH>
</FILE-GROUP>
<FILE-GROUP>
<option name="myUpdateName" value="Restored" />
@@ -1536,7 +1566,6 @@
<option name="mySupportsDeletion" value="false" />
<option name="myCanBeAbsent" value="false" />
<option name="myId" value="MERGED" />
- <PATH vcs="svn" revision="8722">$PROJECT_DIR$/tests/joram-tests/config/provider.properties</PATH>
</FILE-GROUP>
<FILE-GROUP>
<option name="myUpdateName" value="Not in repository" />
@@ -1905,12 +1934,12 @@
<list size="8">
<item index="0" class="java.lang.String" itemvalue="JUnit.MessageRedistributionTest" />
<item index="1" class="java.lang.String" itemvalue="JUnit.SessionTest.test" />
- <item index="2" class="java.lang.String" itemvalue="JUnit.LargeMessageTest" />
- <item index="3" class="java.lang.String" itemvalue="JUnit.NettyFailoverTest.test" />
- <item index="4" class="java.lang.String" itemvalue="JUnit.GroupingFailoverReplicationTest.test" />
- <item index="5" class="java.lang.String" itemvalue="Remote.server" />
- <item index="6" class="java.lang.String" itemvalue="JUnit.AsynchronousFileTest.testInvalidReads" />
- <item index="7" class="java.lang.String" itemvalue="JUnit.LargeMessageFailoverTest" />
+ <item index="2" class="java.lang.String" itemvalue="JUnit.AsynchronousFileTest.testInvalidReads" />
+ <item index="3" class="java.lang.String" itemvalue="JUnit.LargeMessageFailoverTest" />
+ <item index="4" class="java.lang.String" itemvalue="JUnit.LargeMessageTest" />
+ <item index="5" class="java.lang.String" itemvalue="JUnit.NettyFailoverTest.test" />
+ <item index="6" class="java.lang.String" itemvalue="JUnit.GroupingFailoverReplicationTest.test" />
+ <item index="7" class="java.lang.String" itemvalue="Remote.server" />
</list>
<configuration name="<template>" type="WebApp" default="true" selected="false">
<Host>localhost</Host>
@@ -1954,9 +1983,11 @@
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
+ <option name="associatedChangelistId" value="5341122e-b51c-4e90-b798-7086790ef7e8" />
<changelist id="a2aae645-dbcd-4d6e-9c99-efa05d93589a" name="Default" comment="" />
+ <changelist id="5341122e-b51c-4e90-b798-7086790ef7e8" name="intellij" comment="" />
<created>1260445407874</created>
- <updated>1260445407874</updated>
+ <updated>1262864524826</updated>
</task>
<task id="LOCAL-00001" summary="intellij">
<changelist id="e1b486d8-d1b7-4aff-87e2-e20629d1b1d5" name="intellij" comment="" />
@@ -1987,24 +2018,24 @@
</todo-panel>
</component>
<component name="ToolWindowManager">
- <frame x="-3" y="25" width="1926" height="1153" extended-state="6" />
- <editor active="false" />
+ <frame x="0" y="25" width="1024" height="718" extended-state="0" />
+ <editor active="true" />
<layout>
- <window_info id="Changes" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.34886026" sideWeight="0.0" order="7" side_tool="false" content_ui="tabs" />
+ <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.16451932" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
+ <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.20905924" sideWeight="0.0" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+ <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
- <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.26858276" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
- <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.27833003" sideWeight="0.0" order="3" side_tool="false" content_ui="tabs" />
- <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32903865" sideWeight="0.0" order="7" side_tool="false" content_ui="tabs" />
- <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.16451932" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
- <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.24959914" sideWeight="0.7006937" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
- <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.25815073" sideWeight="0.6442022" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
+ <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.14757481" sideWeight="0.77874565" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.27833003" sideWeight="0.0" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.29335976" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
+ <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.2770035" sideWeight="0.0" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.26858276" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Dataflow to this" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
@@ -2022,7 +2053,7 @@
<option name="PERFORM_ROLLBACK_IN_BACKGROUND" value="false" />
<option name="CHECK_LOCALLY_CHANGED_CONFLICTS_IN_BACKGROUND" value="true" />
<option name="FORCE_NON_EMPTY_COMMENT" value="false" />
- <option name="LAST_COMMIT_MESSAGE" value="intellij project updates" />
+ <option name="LAST_COMMIT_MESSAGE" value="doc fix" />
<option name="MAKE_NEW_CHANGELIST_ACTIVE" value="true" />
<option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
<option name="CHECK_FILES_UP_TO_DATE_BEFORE_COMMIT" value="false" />
@@ -2035,8 +2066,6 @@
<option name="UPDATE_GROUP_BY_CHANGELIST" value="false" />
<option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
<option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
- <MESSAGE value="fixed test" />
- <MESSAGE value="doc updates" />
<MESSAGE value="tidied exception handling" />
<MESSAGE value="test fix" />
<MESSAGE value="uncommented reset to clear bindings" />
@@ -2046,8 +2075,6 @@
<MESSAGE value="added build scripts and updated docs" />
<MESSAGE value="upped sleep to allow server to start" />
<MESSAGE value="config fix" />
- <MESSAGE value="doc fix" />
- <MESSAGE value="example fix" />
<MESSAGE value="reconnect attemots now -1 by default for the ra. updated docs also" />
<MESSAGE value="ClientProducer javadocs" />
<MESSAGE value="SimpleString and Pair javadocs" />
@@ -2060,6 +2087,10 @@
<MESSAGE value="updated native libs for refactoring" />
<MESSAGE value="updated versioning" />
<MESSAGE value="intellij project updates" />
+ <MESSAGE value="doc fixes" />
+ <MESSAGE value="removed spurious log message" />
+ <MESSAGE value="example fix" />
+ <MESSAGE value="doc fix" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager />
@@ -2662,114 +2693,98 @@
</buildFile>
</component>
<component name="editorHistoryManager">
- <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/core/asyncio/impl/AsynchronousFileImpl.java">
+ <entry file="file://$PROJECT_DIR$/examples/jms/clustered-queue/build.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="377" column="111" selection-start="11072" selection-end="11072" vertical-scroll-proportion="0.0">
- <folding />
- </state>
+ <state line="28" column="74" selection-start="1204" selection-end="1204" vertical-scroll-proportion="-18.40909" />
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/integration/cluster/failover/LargeMessageFailoverTest.java">
+ <entry file="file://$PROJECT_DIR$/build/hornetq-2.0.0.CR3/examples/jms/management/src/org/hornetq/jms/example/ManagementExample.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="30" column="24" selection-start="1071" selection-end="1071" vertical-scroll-proportion="-7.8">
- <folding />
- </state>
+ <state line="76" column="50" selection-start="2844" selection-end="2844" vertical-scroll-proportion="0.0" />
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/tests/src/org/hornetq/tests/unit/core/asyncio/AsynchronousFileTest.java">
+ <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/api/jms/HornetQJMSClient.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="306" column="100" selection-start="9093" selection-end="9093" vertical-scroll-proportion="0.0">
- <folding />
- </state>
+ <state line="117" column="80" selection-start="4181" selection-end="4181" vertical-scroll-proportion="0.0" />
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/api/jms/HornetQJMSClient.java">
+ <entry file="file://$PROJECT_DIR$/examples/jms/pre-acknowledge/server0/hornetq-configuration.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="41" column="29" selection-start="1445" selection-end="1445" vertical-scroll-proportion="0.0">
- <folding />
- </state>
+ <state line="20" column="54" selection-start="662" selection-end="662" vertical-scroll-proportion="0.0" />
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/jms/HornetQConnectionFactory.java">
+ <entry file="file://$PROJECT_DIR$/examples/jms/reattach-node/server0/hornetq-configuration.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="102" column="9" selection-start="4003" selection-end="4003" vertical-scroll-proportion="0.0">
- <folding />
- </state>
+ <state line="47" column="82" selection-start="1880" selection-end="1880" vertical-scroll-proportion="0.0" />
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/examples/jms/client-side-load-balancing/src/org/hornetq/jms/example/ClientSideLoadBalancingExample.java">
+ <entry file="file://$PROJECT_DIR$/examples/javaee/mdb-cmt-tx-required/src/org/hornetq/javaee/example/MDB_CMT_TxRequiredClientExample.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="51" column="100" selection-start="1787" selection-end="1787" vertical-scroll-proportion="0.0">
- <folding />
- </state>
+ <state line="49" column="83" selection-start="1895" selection-end="1895" vertical-scroll-proportion="0.0" />
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/api/core/client/HornetQClient.java">
+ <entry file="file://$PROJECT_DIR$/examples/javaee/mdb-cmt-tx-required/src/org/hornetq/javaee/example/server/MDB_CMT_TxRequiredExample.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="73" column="77" selection-start="2722" selection-end="2722" vertical-scroll-proportion="0.0">
- <folding />
- </state>
+ <state line="59" column="69" selection-start="2484" selection-end="2484" vertical-scroll-proportion="0.0" />
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/tests/smoke/build.xml">
+ <entry file="file://$PROJECT_DIR$/build-maven.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="149" column="58" selection-start="6069" selection-end="6069" vertical-scroll-proportion="-9.818182">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/api/core/client/ClientSessionFactoryImpl.java">
+ <entry file="file://$PROJECT_DIR$/docs/user-manual/en/messaging-concepts.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="54" column="37" selection-start="2265" selection-end="2289" vertical-scroll-proportion="0.0">
+ <state line="32" column="57" selection-start="2432" selection-end="2432" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/native/src/JavaUtilities.cpp">
+ <entry file="file://$PROJECT_DIR$/examples/javaee/mdb-cmt-tx-required/server/hornetq-jms.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="28" column="58" selection-start="1017" selection-end="1017" vertical-scroll-proportion="0.0">
- <folding />
- </state>
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/native/bootstrap">
+ <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/ra/inflow/HornetQActivation.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <state line="263" column="45" selection-start="6376" selection-end="6376" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/native/src/org_hornetq_core_asyncio_impl_AsynchronousFileImpl.h">
+ <entry file="file://$PROJECT_DIR$/src/main/org/hornetq/ra/inflow/HornetQMessageHandler.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <state line="67" column="25" selection-start="2177" selection-end="2177" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/native/README">
+ <entry file="file://$PROJECT_DIR$/examples/javaee/mdb-cmt-tx-required/build.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="43" column="44" selection-start="1202" selection-end="1221" vertical-scroll-proportion="0.0">
+ <state line="19" column="16" selection-start="846" selection-end="846" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/pom.xml">
+ <entry file="file://$PROJECT_DIR$/examples/javaee/common/build.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="21" column="21" selection-start="1019" selection-end="1019" vertical-scroll-proportion="0.0">
+ <state line="175" column="16" selection-start="7194" selection-end="7311" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/src/config/common/hornetq-version.properties">
+ <entry file="file://$PROJECT_DIR$/docs/user-manual/en/architecture.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="0" column="40" selection-start="40" selection-end="40" vertical-scroll-proportion="0.0">
+ <state line="25" column="65" selection-start="1989" selection-end="1989" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/build-maven.xml">
+ <entry file="file://$PROJECT_DIR$/docs/user-manual/en/using-server.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="15" column="52" selection-start="762" selection-end="762" vertical-scroll-proportion="0.3802817">
+ <state line="174" column="11" selection-start="11694" selection-end="11694" vertical-scroll-proportion="0.74358976">
<folding />
</state>
</provider>
14 years, 11 months
JBoss hornetq SVN: r8763 - trunk/docs/user-manual/en.
by do-not-reply@jboss.org
Author: ataylor
Date: 2010-01-07 06:42:52 -0500 (Thu, 07 Jan 2010)
New Revision: 8763
Modified:
trunk/docs/user-manual/en/architecture.xml
Log:
doc fix
Modified: trunk/docs/user-manual/en/architecture.xml
===================================================================
--- trunk/docs/user-manual/en/architecture.xml 2010-01-07 11:30:12 UTC (rev 8762)
+++ trunk/docs/user-manual/en/architecture.xml 2010-01-07 11:42:52 UTC (rev 8763)
@@ -23,8 +23,9 @@
<title>Core Architecture</title>
<para>HornetQ core is designed simply as set of Plain Old Java Objects (POJOs).</para>
<para>We've also designed it to have as few dependencies on external jars as possible. In
- fact, HornetQ core has <emphasis role="italic">zero</emphasis> dependencies on any jars
- other than the standard JDK classes!</para>
+ fact, HornetQ core has only one jar dependency, netty.jar,
+ other than the standard JDK classes! This is because we use some of the netty buffer classes
+ internally.</para>
<para>This allows HornetQ to be easily embedded in your own project, or instantiated in any
dependency injection framework such as JBoss Microcontainer, Spring or Google
Guice.</para>
14 years, 11 months
JBoss hornetq SVN: r8762 - trunk/docs/user-manual/en.
by do-not-reply@jboss.org
Author: ataylor
Date: 2010-01-07 06:30:12 -0500 (Thu, 07 Jan 2010)
New Revision: 8762
Modified:
trunk/docs/user-manual/en/messaging-concepts.xml
Log:
doc fix
Modified: trunk/docs/user-manual/en/messaging-concepts.xml
===================================================================
--- trunk/docs/user-manual/en/messaging-concepts.xml 2010-01-07 11:21:04 UTC (rev 8761)
+++ trunk/docs/user-manual/en/messaging-concepts.xml 2010-01-07 11:30:12 UTC (rev 8762)
@@ -22,15 +22,15 @@
url="http://en.wikipedia.org/wiki/Message_oriented_middleware">Message Oriented
Middleware</ulink> , we'll just call them messaging systems in the remainder of this
book.</para>
- <para>We'll first present a brief overview of what kind of things messaging systems do and and
- where they're useful, and the kind of concepts you'll hear about in the messaging
+ <para>We'll first present a brief overview of what kind of things messaging systems do,
+ where they're useful and the kind of concepts you'll hear about in the messaging
world.</para>
<para>If you're already familiar with what a messaging system is and what it's capable of, then
you can skip this chapter.</para>
<section>
<title>Messaging Concepts</title>
<para>Messaging systems allow you to loosely couple heteregenous systems together, whilst
- typically providing reliability, transactions, and many other features.</para>
+ typically providing reliability, transactions and many other features.</para>
<para>Unlike systems based on a <ulink
url="http://en.wikipedia.org/wiki/Remote_procedure_call">Remote Procedure
Call</ulink> (RPC) pattern, messaging systems primarily use an asynchronous message
14 years, 11 months
JBoss hornetq SVN: r8761 - trunk/docs/quickstart-guide/en.
by do-not-reply@jboss.org
Author: timfox
Date: 2010-01-07 06:21:04 -0500 (Thu, 07 Jan 2010)
New Revision: 8761
Modified:
trunk/docs/quickstart-guide/en/about.xml
trunk/docs/quickstart-guide/en/examples.xml
trunk/docs/quickstart-guide/en/installation.xml
trunk/docs/quickstart-guide/en/notice.xml
trunk/docs/quickstart-guide/en/running.xml
Log:
edits to quick start guide
Modified: trunk/docs/quickstart-guide/en/about.xml
===================================================================
--- trunk/docs/quickstart-guide/en/about.xml 2010-01-07 09:59:41 UTC (rev 8760)
+++ trunk/docs/quickstart-guide/en/about.xml 2010-01-07 11:21:04 UTC (rev 8761)
@@ -23,11 +23,11 @@
<para>What is HornetQ?</para>
<itemizedlist>
<listitem>
- <para>HornetQ is an open source project to build a multi-protocol, embeddable, high
+ <para>HornetQ is an open source project to build a multi-protocol, embeddable, very high
performance, clustered, asynchronous messaging system.</para>
</listitem>
<listitem>
- <para>For answers to more questions about what HornetQ is and isn't please visit
+ <para>For answers to more questions about what HornetQ is and what it isn't please visit
the <ulink url="http://www.jboss.org/community/wiki/HornetQGeneralFAQs">FAQs wiki
page</ulink>.</para>
</listitem>
@@ -46,7 +46,7 @@
from Windows desktops to IBM mainframes.</para>
</listitem>
<listitem>
- <para>Superb performance. Our class beating high performance journal provides persistent
+ <para>Amazing performance. Our class beating high performance journal provides persistent
messaging performance at rates normally seen for non persistent messaging, our non
persistent messaging performance rocks the boat too.</para>
</listitem>
@@ -55,9 +55,9 @@
and others you won't find anywhere else.</para>
</listitem>
<listitem>
- <para>Elegant POJO based design with minimal third party dependencies. Run HornetQ
+ <para>Elegant, clean-cut design with minimal third party dependencies. Run HornetQ
stand-alone, run it in integrated in your favourite JEE application server, or run
- it embedded inside your own product.</para>
+ it embedded inside your own product. It's up to you.</para>
</listitem>
<listitem>
<para>Seamless high availability. We provide a HA solution with automatic client
Modified: trunk/docs/quickstart-guide/en/examples.xml
===================================================================
--- trunk/docs/quickstart-guide/en/examples.xml 2010-01-07 09:59:41 UTC (rev 8760)
+++ trunk/docs/quickstart-guide/en/examples.xml 2010-01-07 11:21:04 UTC (rev 8761)
@@ -21,14 +21,14 @@
<para>In the directory <literal>examples</literal> there are 2 sets of examples, these are </para>
<itemizedlist>
<listitem>
- <para>JMS Examples - these demonstrate functionality by sending and consuming JMS
+ <para>JMS Examples - these demonstrate functionality while sending and consumng JMS
messages.</para>
</listitem>
<listitem>
<para>Java EE Examples - these demonstrate application server integration, e.g. MDBs, EJBs,
Servlets, etc.</para>
</listitem>
- </itemizedlist>
+ </itemizedlist>
<section id="examples.jms">
<title>The JMS examples</title>
<para>The JMS Examples all follow the same format. Each examples is contained in its own
@@ -55,7 +55,8 @@
user manual.</para>
<para>Firstly open a Shell or a Command prompt and navigate to the <literal
>examples/jms/queue</literal> directory.</para>
- <para>Type the command <literal>./build.sh</literal> (or <literal>build.bat</literal> if you are running on Windows), and you should see the following output:</para>
+ <para>Type the command <literal>./build.sh</literal> (or <literal>build.bat</literal> if you
+ are running on Windows), and you should see the following output:</para>
<programlisting>Buildfile: build.xml
run:
@@ -117,11 +118,11 @@
</section>
<section id="examples.messaging">
<title>The Java EE Examples</title>
- <para>The Java EE Examples are examples that require an Application Server to run. They
- include MDB, Servlet, EJB examples etc. For this you will need The JBoss Application Server
+ <para>The Java EE Examples are examples that require a JEE application server to run. They
+ include MDB, Servlet, EJB examples etc. For this you will need the JBoss Application Server
installed. How to do this is explained in the previous chapters.</para>
<para>We'll use the MDB example for the purposes of this guide. For the other examples refer
- to the user guide. Before going any further ensure that the Jboss Application Server is
+ to the user guide. Before going any further ensure that the JBoss Application Server is
running.</para>
<para>Like the other Java EE examples the MDB example is a JEE Application which first needs
deploying in the JBoss Application Server. The first thing we need to do is set the
Modified: trunk/docs/quickstart-guide/en/installation.xml
===================================================================
--- trunk/docs/quickstart-guide/en/installation.xml 2010-01-07 09:59:41 UTC (rev 8760)
+++ trunk/docs/quickstart-guide/en/installation.xml 2010-01-07 11:21:04 UTC (rev 8761)
@@ -29,7 +29,7 @@
>bin/run.sh</literal> accordingly.</para>
<para>For persistence, HornetQ uses its own fast journal, which you can configure to use
libaio (which is the default when running on Linux) or Java NIO. In order to use the libaio
- module on Linux, it's required to install libaio.</para>
+ module on Linux, you'll need to install libaio, if it's not already installed.</para>
<para>If you're not running on Linux then you don't need to worry about this.</para>
<para>You can install libaio using the following steps as the root user:</para>
<para>Using yum, (e.g. on Fedora or Red Hat Enterprise Linux):</para>
@@ -43,26 +43,31 @@
it should be possible to <link linkend="running.standalone">run straight out of the
box</link>, the following describes the directory structure: </para>
<programlisting>
- |-- bin
- |-- config
- | |-- jboss-as
- | `-- stand-alone
- |-- docs
- | |-- api
- | |-- quickstart-guide
- | `-- user-manual
- |-- examples
- | |-- core
- | |-- javaee
- | `-- jms
- |-- lib
- |-- licenses
- `-- schemas
+ |___ bin
+ |
+ |___ config
+ | |___ jboss-as
+ | ` |___ stand-alone
+ |
+ |___ docs
+ | |___ api
+ | |___ quickstart-guide
+ | |___ user-manual
+ |
+ |___ examples
+ | |___ core
+ | |___ javaee
+ | |___ jms
+ |
+ |___ lib
+ |
+ |___ licenses
+ |
+ |___ schemas
</programlisting>
<itemizedlist>
<listitem>
- <para><literal>bin</literal> -- binaries and scripts needed to run JBoss
- Messaging</para>
+ <para><literal>bin</literal> -- binaries and scripts needed to run HornetQ.</para>
</listitem>
<listitem>
<para><literal>config</literal> -- configuration files needed to configure HornetQ. This
@@ -91,8 +96,9 @@
<section id="installation.jboss.as5">
<title>HornetQ In JBoss Application Server 5.x</title>
<para>HornetQ can also be deployed in <ulink url="http://www.jboss.org/jbossas/">JBoss AS
- 5</ulink>. It is not shipped by default with the application server and you need to
- create new AS 5 profiles to run AS 5 with HornetQ.</para>
+ 5</ulink>. It is not currently shipped by default with the application server (it is
+ scheduled to be shipped as default JMS provider in JBoss Application Server 6.0), so you
+ will need to create new AS 5 profiles to run AS 5 with HornetQ.</para>
<para>To create AS 5 profiles:</para>
<orderedlist>
<listitem>
@@ -120,16 +126,13 @@
is <emphasis>clustered</emphasis></para>
</listitem>
</itemizedlist>
- <para>You can then start JBoss AS 5 using one of these profiles:</para>
+ <para>You can then start JBoss AS 5 using one of these profiles, e.g. :</para>
<programlisting>$JBOSS_HOME/bin/run.sh -c default-with-hornetq</programlisting>
</section>
<section id="installation.jboss.as4">
<title>HornetQ In JBoss Application Server 4.x</title>
- <note>
- <para>HornetQ can be deployed on AS 4 but isn't recommended</para>
- </note>
- <para>As in AS 4, it is not shipped by default with the application server and you need to
- create new AS 4 profiles to run AS 4 with HornetQ.</para>
+ <para>As in AS 4, it is not shipped by default with the application server, so you will need
+ to create new AS 4 profiles to run AS 4 with HornetQ.</para>
<para>To create AS 4 profiles:</para>
<orderedlist>
<listitem>
Modified: trunk/docs/quickstart-guide/en/notice.xml
===================================================================
--- trunk/docs/quickstart-guide/en/notice.xml 2010-01-07 09:59:41 UTC (rev 8760)
+++ trunk/docs/quickstart-guide/en/notice.xml 2010-01-07 11:21:04 UTC (rev 8761)
@@ -19,7 +19,7 @@
<chapter id="notice">
<title>Legal Notice</title>
- <para>Copyright © 2009 Red Hat, Inc. and others.</para>
+ <para>Copyright © 2010 Red Hat, Inc. and others.</para>
<para>The text of and illustrations in this document are licensed by Red Hat under
a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA").</para>
<para>An explanation of CC-BY-SA is available at
Modified: trunk/docs/quickstart-guide/en/running.xml
===================================================================
--- trunk/docs/quickstart-guide/en/running.xml 2010-01-07 09:59:41 UTC (rev 8760)
+++ trunk/docs/quickstart-guide/en/running.xml 2010-01-07 11:21:04 UTC (rev 8761)
@@ -1,5 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
-
<!-- ============================================================================= -->
<!-- Copyright © 2009 Red Hat, Inc. and others. -->
<!-- -->
@@ -17,7 +16,6 @@
<!-- and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent -->
<!-- permitted by applicable law. -->
<!-- ============================================================================= -->
-
<chapter id="running">
<title>Starting The Server</title>
<section id="running.standalone">
@@ -31,40 +29,39 @@
15:05:54,108 INFO @main [HornetQBootstrapServer] Starting HornetQ server
...
15:06:02,566 INFO @main [HornetQServerImpl] HornetQ Server version
- 2.0.0.BETA5 (buzz-buzz, 107) started
+ 2.0.0.CR3 (yellowjacket, 111) started
</programlisting>
- <para>HornetQ is now running. If any errors are displayed or if the server was not
- started properly, please refer to the troubleshooting guide for help</para>
+ <para>HornetQ is now running.</para>
<para>Both the run and the stop scripts use the config under <literal
>config/stand-alone/non-clustered</literal> by default. The configuration can be changed
by running <literal>./run.sh ../config/stand-alone/clustered</literal> or another config of
your choosing. This is the same for the stop script and the windows bat files.</para>
</section>
<section id="running.jboss.as5">
- <title>HornetQ In JBoss AS 5</title>
+ <title>HornetQ In JBoss AS 5.x</title>
<para>To run HornetQ in JBoss AS 5, you need to create the <link
- linkend="installation.jboss.as5">AS 5 profiles for HornetQ</link> first. Then run
- JBoss AS 5 with one these profiles. For example, to run JBoss AS 5 with a
+ linkend="installation.jboss.as5">AS 5 profiles for HornetQ</link> first. Then run JBoss
+ AS 5 with one these profiles. For example, to run JBoss AS 5 with a
<emphasis>non-clustered</emphasis> HornetQ server, got to <literal
>$JBOSS_HOME/bin</literal> directory and type:</para>
<programlisting>
bin$ ./run.sh -c default-with-hornetq
15:18:35,460 INFO [ServerImpl] Starting JBoss (Microcontainer)...
- 15:18:35,462 INFO [ServerImpl] Release ID: JBoss [The Oracle] 5.1.0.CR1 (build:
- SVNTag=JBoss_5_1_0_CR1 date=200904091504)
+ 15:18:35,462 INFO [ServerImpl] Release ID: JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=
+ JBoss_5_1_0_GA date=200905221053)
...
15:19:30,305 INFO [HornetQServerImpl] HornetQ Server version
- 2.0.0.BETA5 (buzz-buzz, 107) started
+ 2.0.0.CR3 (yellowjacket, 111) started
...
- 15:19:43,601 INFO [ServerImpl] JBoss (Microcontainer) [5.1.0.CR1 (build:
- SVNTag=JBoss_5_1_0_CR1 date=200904091504)] Started in 1m:8s:121ms
+ 15:19:43,601 INFO [ServerImpl] JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=
+ JBoss_5_1_0_GA date=200905221053)]Started in 1m:14s:556ms
</programlisting>
</section>
<section id="running.jboss.as4">
- <title>HornetQ In JBoss AS 5</title>
- <para>To run HornetQ in JBoss AS 4 you must follow the same steps described for AS5 without forgetting to create the <link
- linkend="installation.jboss.as4">AS 4 profiles for HornetQ</link> first.
- </para>
+ <title>HornetQ In JBoss AS 4.x</title>
+ <para>To run HornetQ in JBoss AS 4 you must follow the same steps described for AS5 without
+ forgetting to create the <link linkend="installation.jboss.as4">AS 4 profiles for
+ HornetQ</link> first. </para>
</section>
</chapter>
14 years, 11 months