http://git-wip-us.apache.org/repos/asf/activemq-6/blob/4245a6b4/docs/user-manual/en/large-messages.xml
----------------------------------------------------------------------
diff --git a/docs/user-manual/en/large-messages.xml 
b/docs/user-manual/en/large-messages.xml
deleted file mode 100644
index 43bc2a8..0000000
--- a/docs/user-manual/en/large-messages.xml
+++ /dev/null
@@ -1,285 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
============================================================================= 
-->
-<!-- Licensed to the Apache Software Foundation (ASF) under one or more        
    -->
-<!-- contributor license agreements. See the NOTICE file distributed with      
    -->
-<!-- this work for additional information regarding copyright ownership.       
    -->
-<!-- The ASF 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.                                            
    -->
-<!-- 
============================================================================= 
-->
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" 
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"; [
-<!ENTITY % BOOK_ENTITIES SYSTEM "ActiveMQ_User_Manual.ent">
-%BOOK_ENTITIES;
-]>
-<chapter id="large-messages">
-    <title>Large Messages</title>
-    <para>ActiveMQ supports sending and receiving of huge messages, even when 
the client and server
-        are running with limited memory. The only realistic limit to the size 
of a message that can
-        be sent or consumed is the amount of disk space you have available. We 
have tested sending
-        and consuming messages up to 8 GiB in size with a client and server 
running in just 50MiB of
-        RAM!</para>
-    <para>To send a large message, the user can set an 
<literal>InputStream</literal> on a message
-        body, and when that message is sent, ActiveMQ will read the 
<literal>InputStream</literal>. A
-            <literal>FileInputStream</literal> could be used for example to 
send a huge message from
-        a huge file on disk.</para>
-    <para>As the <literal>InputStream</literal> is read the data is sent to 
the server as a stream
-        of fragments. The server persists these fragments to disk as it 
receives them and when the
-        time comes to deliver them to a consumer they are read back of the 
disk, also in fragments
-        and sent down the wire. When the consumer receives a large message it 
initially receives
-        just the message with an empty body, it can then set an 
<literal>OutputStream</literal> on
-        the message to stream the huge message body to a file on disk or 
elsewhere. At no time is
-        the entire message body stored fully in memory, either on the client 
or the server.</para>
-    <section id="large.message.configuring">
-        <title>Configuring the server</title>
-        <para>Large messages are stored on a disk directory on the server 
side, as configured on the
-            main configuration file.</para>
-        <para>The configuration property 
<literal>large-messages-directory</literal> specifies where
-            large messages are stored.</para>
-        <programlisting>
-&lt;configuration xmlns="urn:activemq"
-   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
-   xsi:schemaLocation="urn:activemq /schema/activemq-configuration.xsd">
-...
-&lt;large-messages-directory>/data/large-messages&lt;/large-messages-directory>
-...
-&lt;/configuration</programlisting>
-        <para>By default the large message directory is 
<literal>data/largemessages</literal></para>
-        <para>For the best performance we recommend large messages directory 
is stored on a
-            different physical volume to the message journal or paging 
directory.</para>
-    </section>
-    <section>
-        <title>Configuring Parameters</title>
-        <para>Any message larger than a certain size is considered a large 
message. Large messages
-            will be split up and sent in fragments. This is determined by the 
parameter <literal
-                >min-large-message-size</literal></para>
-        <note>
-           <para>ActiveMQ messages are encoded using 2 bytes per character so 
if the message data is filled
-              with ASCII characters (which are 1 byte) the size of the 
resulting ActiveMQ message would roughly
-              double. This is important when calculating the size of a "large" 
message as it may appear to be
-              less than the <literal>min-large-message-size</literal> before 
it is sent, but it then turns into
-              a "large" message once it is encoded.</para>
-        </note>
-        <para>The default value is 100KiB.</para>
-        <section id="large-messages.core.config">
-            <title>Using Core API</title>
-            <para>If the ActiveMQ Core API is used, the minimal large message 
size is specified by
-                    
<literal>ServerLocator.setMinLargeMessageSize</literal>.</para>
-            <programlisting>
-ServerLocator locator = ActiveMQClient.createServerLocatorWithoutHA(new 
TransportConfiguration(NettyConnectorFactory.class.getName()))
-
-locator.setMinLargeMessageSize(25 * 1024);
-
-ClientSessionFactory factory = 
ActiveMQClient.createClientSessionFactory();</programlisting>
-            <para><xref linkend="configuring-transports.client.side"/> will 
provide more information
-                on how to instantiate the session factory.</para>
-        </section>
-        <section>
-            <title>Using JMS</title>
-            <para>If JNDI is used to instantiate and look up the connection 
factory, the minimum large message size
-                is configured in the JNDI context environment, e.g. 
<literal>jndi.properties</literal>. Here's a simple
-                example using the "ConnectionFactory" connection factory which 
is available in the context by default:</para>
-            <programlisting>
-java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory
-java.naming.provider.url=tcp://localhost:5445
-connection.ConnectionFactory.minLargeMessageSize=250000
-            </programlisting>
-            <para>If the connection factory is being instantiated directly, 
the minimum large
-                message size is specified by <literal
-                    
>ActiveMQConnectionFactory.setMinLargeMessageSize</literal>.</para>
-        </section>
-        <section>
-            <title>Compressed Large Messages</title>
-            <para>
-                               You can choose to send large messages in 
compressed form using <literal>
-                               compress-large-messages</literal> attributes.
-            </para>
-            <section>
-                               
<title><literal>compress-large-messages</literal></title>
-                <para>If you specify the boolean property 
<literal>compress-large-messages</literal> on
-                the <literal>server locator</literal> or 
<literal>ConnectionFactory</literal> as true, The
-                system will use the ZIP algorithm to compress the message body 
as the message is
-                transferred to the server's side. Notice that there's no 
special treatment at the
-                server's side, all the compressing and uncompressing is done 
at the client.</para>
-                <para>If the compressed size of a large message is below 
<literal>
-                min-large-message-size</literal>, it is sent to server as 
regular messages. This means
-                           that the message won't be written into the server's 
large-message
-                           data directory, thus reducing the disk I/O.</para>
-            </section>
-            <section>
-               <para>If JNDI is used to instantiate and look up the connection 
factory, large message compression can be
-                  configured in the JNDI context environment, e.g. 
<literal>jndi.properties</literal>. Here's a simple
-                  example using the "ConnectionFactory" connection factory 
which is available in the context by default:</para>
-               <programlisting>
-java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory
-java.naming.provider.url=tcp://localhost:5445
-connection.ConnectionFactory.compressLargeMessages=true</programlisting>
-            </section>
-        </section>
-    </section>
-    <section>
-        <title>Streaming large messages</title>
-        <para>ActiveMQ supports setting the body of messages using input and 
output streams (<literal
-                >java.lang.io</literal>)</para>
-        <para>These streams are then used directly for sending (input streams) 
and receiving (output
-            streams) messages.</para>
-        <para>When receiving messages there are 2 ways to deal with the output 
stream; you may
-            choose to block while the output stream is recovered using the 
method <literal
-                >ClientMessage.saveOutputStream</literal> or alternatively 
using the method <literal
-                >ClientMessage.setOutputstream</literal> which will 
asynchronously write the message
-            to the stream. If you choose the latter the consumer must be kept 
alive until the
-            message has been fully received.</para>
-        <para>You can use any kind of stream you like. The most common use 
case is to send files
-            stored in your disk, but you could also send things like JDBC 
Blobs, <literal
-                >SocketInputStream</literal>, things you recovered from 
<literal
-                >HTTPRequests</literal> etc. Anything as long as it implements 
<literal
-                >java.io.InputStream</literal> for sending messages or <literal
-                >java.io.OutputStream</literal> for receiving them.</para>
-        <section>
-            <title>Streaming over Core API</title>
-            <para>The following table shows a list of methods available at 
<literal
-                    >ClientMessage</literal> which are also available through 
JMS by the use of
-                object properties.</para>
-            <table frame="topbot" id="large-messages.ClientMessageAPI">
-                <title>org.apache.activemq.api.core.client.ClientMessage 
API</title>
-                <tgroup cols="3">
-                    <colspec colname="Name" colnum="1"/>
-                    <colspec colname="Descr" colnum="2"/>
-                    <colspec colname="JMS" colnum="3"/>
-                    <thead>
-                        <row>
-                            <entry>Name</entry>
-                            <entry>Description</entry>
-                            <entry>JMS Equivalent Property</entry>
-                        </row>
-                    </thead>
-                    <tbody>
-                        <row>
-                            <entry>setBodyInputStream(InputStream)</entry>
-                            <entry>Set the InputStream used to read a message 
body when sending
-                                it.</entry>
-                            <entry>JMS_HQ_InputStream</entry>
-                        </row>
-                        <row>
-                            <entry>setOutputStream(OutputStream)</entry>
-                            <entry>Set the OutputStream that will receive the 
body of a message.
-                                This method does not block.</entry>
-                            <entry>JMS_HQ_OutputStream</entry>
-                        </row>
-                        <row>
-                            <entry>saveOutputStream(OutputStream)</entry>
-                            <entry>Save the body of the message to the <literal
-                                    >OutputStream</literal>. It will block 
until the entire content
-                                is transferred to the 
<literal>OutputStream</literal>.</entry>
-                            <entry>JMS_HQ_SaveStream</entry>
-                        </row>
-                    </tbody>
-                </tgroup>
-            </table>
-            <para>To set the output stream when receiving a core message: 
</para>
-            <programlisting>
-...
-ClientMessage msg = consumer.receive(...);
-
-
-// This will block here until the stream was transferred
-msg.saveOutputStream(someOutputStream); 
-
-ClientMessage msg2 = consumer.receive(...);
-
-// This will not wait the transfer to finish
-msg.setOutputStream(someOtherOutputStream); 
-...</programlisting>
-            <para> Set the input stream when sending a core message: </para>
-            <programlisting>
-...
-ClientMessage msg = session.createMessage();
-msg.setInputStream(dataInputStream);
-...</programlisting>
-            <para>Notice also that for messages with more than 2GiB the 
getBodySize() will return
-                invalid values since this is an integer (which is also exposed 
to the JMS API). On
-                those cases you can use the message property 
_HQ_LARGE_SIZE.</para>
-        </section>
-        <section id="large-messages.streaming.over.jms">
-            <title>Streaming over JMS</title>
-            <para>When using JMS, ActiveMQ maps the streaming methods on the 
core API (see <xref
-                    linkend="large-messages.ClientMessageAPI"/>) by setting 
object properties . You
-                can use the method 
<literal>Message.setObjectProperty</literal> to set the input and
-                output streams.</para>
-            <para>The <literal>InputStream</literal> can be defined through 
the JMS Object Property
-                JMS_HQ_InputStream on messages being sent:</para>
-            <programlisting>
-BytesMessage message = session.createBytesMessage();
-
-FileInputStream fileInputStream = new FileInputStream(fileInput);
-
-BufferedInputStream bufferedInput = new BufferedInputStream(fileInputStream);
-
-message.setObjectProperty("JMS_HQ_InputStream", bufferedInput);
-
-someProducer.send(message);</programlisting>
-            <para>The <literal>OutputStream</literal> can be set through the 
JMS Object Property
-                JMS_HQ_SaveStream on messages being received in a blocking 
way.</para>
-            <programlisting>
-BytesMessage messageReceived = (BytesMessage)messageConsumer.receive(120000);
-                
-File outputFile = new File("huge_message_received.dat");
-                
-FileOutputStream fileOutputStream = new FileOutputStream(outputFile);
-                
-BufferedOutputStream bufferedOutput = new 
BufferedOutputStream(fileOutputStream);
-                
-// This will block until the entire content is saved on disk
-messageReceived.setObjectProperty("JMS_HQ_SaveStream", 
bufferedOutput);</programlisting>
-            <para>Setting the <literal>OutputStream</literal> could also be 
done in a non blocking
-                way using the property JMS_HQ_OutputStream.</para>
-            <programlisting>
-// This won't wait the stream to finish. You need to keep the consumer active.
-messageReceived.setObjectProperty("JMS_HQ_OutputStream", 
bufferedOutput);</programlisting>
-            <note>
-                <para>When using JMS, Streaming large messages are only 
supported on <literal
-                        >StreamMessage</literal> and 
<literal>BytesMessage</literal>.</para>
-            </note>
-        </section>
-    </section>
-    <section>
-        <title>Streaming Alternative</title>
-        <para>If you choose not to use the <literal>InputStream</literal> or 
<literal
-                >OutputStream</literal> capability of ActiveMQ You could still 
access the data
-            directly in an alternative fashion.</para>
-        <para>On the Core API just get the bytes of the body as you normally 
would.</para>
-        <programlisting>
-ClientMessage msg = consumer.receive();
-         
-byte[] bytes = new byte[1024];
-for (int i = 0 ;  i &lt; msg.getBodySize(); i += bytes.length)
-{
-   msg.getBody().readBytes(bytes);
-   // Whatever you want to do with the bytes
-}</programlisting>
-        <para>If using JMS API, <literal>BytesMessage</literal> and 
<literal>StreamMessage</literal>
-            also supports it transparently.</para>
-        <programlisting>
-BytesMessage rm = (BytesMessage)cons.receive(10000);
-
-byte data[] = new byte[1024];
-
-for (int i = 0; i &lt; rm.getBodyLength(); i += 1024)
-{
-   int numberOfBytes = rm.readBytes(data);
-   // Do whatever you want with the data
-}        </programlisting>
-    </section>
-    <section id="large-messages.example">
-        <title>Large message example</title>
-        <para>Please see <xref linkend="examples.large-message"/> for an 
example which shows how
-            large message is configured and used with JMS.</para>
-    </section>
-</chapter>

http://git-wip-us.apache.org/repos/asf/activemq-6/blob/4245a6b4/docs/user-manual/en/last-value-queues.md
----------------------------------------------------------------------
diff --git a/docs/user-manual/en/last-value-queues.md 
b/docs/user-manual/en/last-value-queues.md
new file mode 100644
index 0000000..eca5eb5
--- /dev/null
+++ b/docs/user-manual/en/last-value-queues.md
@@ -0,0 +1,55 @@
+Last-Value Queues
+=================
+
+Last-Value queues are special queues which discard any messages when a
+newer message with the same value for a well-defined Last-Value property
+is put in the queue. In other words, a Last-Value queue only retains the
+last value.
+
+A typical example for Last-Value queue is for stock prices, where you
+are only interested by the latest value for a particular stock.
+
+Configuring Last-Value Queues
+=============================
+
+Last-value queues are defined in the address-setting configuration:
+
+    <address-setting match="jms.queue.lastValueQueue">
+       <last-value-queue>true</last-value-queue>
+    </address-setting>
+
+By default, `last-value-queue` is false. Address wildcards can be used
+to configure Last-Value queues for a set of addresses (see ?).
+
+Using Last-Value Property
+=========================
+
+The property name used to identify the last value is `"_HQ_LVQ_NAME"`
+(or the constant `Message.HDR_LAST_VALUE_NAME` from the Core API).
+
+For example, if two messages with the same value for the Last-Value
+property are sent to a Last-Value queue, only the latest message will be
+kept in the queue:
+
+    // send 1st message with Last-Value property set to STOCK_NAME
+    TextMessage message = session.createTextMessage("1st message with 
Last-Value property set");
+    message.setStringProperty("_HQ_LVQ_NAME", "STOCK_NAME");
+    producer.send(message);
+
+    // send 2nd message with Last-Value property set to STOCK_NAME             
+    message = session.createTextMessage("2nd message with Last-Value property 
set");
+    message.setStringProperty("_HQ_LVQ_NAME", "STOCK_NAME");
+    producer.send(message);
+           
+    ...
+           
+    // only the 2nd message will be received: it is the latest with 
+    // the Last-Value property set
+    TextMessage messageReceived = (TextMessage)messageConsumer.receive(5000);
+    System.out.format("Received message: %s\n", messageReceived.getText());
+
+Example
+=======
+
+See ? for an example which shows how last value queues are configured
+and used with JMS.

http://git-wip-us.apache.org/repos/asf/activemq-6/blob/4245a6b4/docs/user-manual/en/last-value-queues.xml
----------------------------------------------------------------------
diff --git a/docs/user-manual/en/last-value-queues.xml 
b/docs/user-manual/en/last-value-queues.xml
deleted file mode 100644
index f6f44b6..0000000
--- a/docs/user-manual/en/last-value-queues.xml
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
============================================================================= 
-->
-<!-- Licensed to the Apache Software Foundation (ASF) under one or more        
    -->
-<!-- contributor license agreements. See the NOTICE file distributed with      
    -->
-<!-- this work for additional information regarding copyright ownership.       
    -->
-<!-- The ASF 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.                                            
    -->
-<!-- 
============================================================================= 
-->
-
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" 
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"; [
-<!ENTITY % BOOK_ENTITIES SYSTEM "ActiveMQ_User_Manual.ent">
-%BOOK_ENTITIES;
-]>
-<chapter id="last-value-queues">
-   <title>Last-Value Queues</title>
-   <para>Last-Value queues are special queues which discard any messages when 
a newer message with
-      the same value for a well-defined Last-Value property is put in the 
queue. In other words, a
-      Last-Value queue only retains the last value.</para>
-   <para>A typical example for Last-Value queue is for stock prices, where you 
are only interested
-      by the latest value for a particular stock.</para>
-   <section>
-      <title>Configuring Last-Value Queues</title>
-      <para>Last-value queues are defined in the address-setting 
configuration:</para>
-      <programlisting>
-&lt;address-setting match="jms.queue.lastValueQueue">
-   &lt;last-value-queue>true&lt;/last-value-queue>
-&lt;/address-setting></programlisting>
-      <para>By default, <literal>last-value-queue</literal> is false. Address 
wildcards can be used
-         to configure Last-Value queues for a set of addresses (see <xref 
linkend="wildcard-syntax"
-         />).</para>
-   </section>
-   <section>
-      <title>Using Last-Value Property</title>
-      <para>The property name used to identify the last value is 
<literal>"_HQ_LVQ_NAME"</literal>
-         (or the constant <literal>Message.HDR_LAST_VALUE_NAME</literal> from 
the Core API).</para>
-      <para>For example, if two messages with the same value for the 
Last-Value property are sent to
-         a Last-Value queue, only the latest message will be kept in the 
queue:</para>
-      <programlisting>
-// send 1st message with Last-Value property set to STOCK_NAME
-TextMessage message = session.createTextMessage("1st message with Last-Value 
property set");
-message.setStringProperty("_HQ_LVQ_NAME", "STOCK_NAME");
-producer.send(message);
-
-// send 2nd message with Last-Value property set to STOCK_NAME             
-message = session.createTextMessage("2nd message with Last-Value property 
set");
-message.setStringProperty("_HQ_LVQ_NAME", "STOCK_NAME");
-producer.send(message);
-       
-...
-       
-// only the 2nd message will be received: it is the latest with 
-// the Last-Value property set
-TextMessage messageReceived = (TextMessage)messageConsumer.receive(5000);
-System.out.format("Received message: %s\n", 
messageReceived.getText());</programlisting>
-   </section>
-   <section>
-      <title>Example</title>
-      <para>See <xref linkend="examples.last-value-queue"/> for an example 
which shows how last
-         value queues are configured and used with JMS.</para>
-   </section>
-</chapter>

http://git-wip-us.apache.org/repos/asf/activemq-6/blob/4245a6b4/docs/user-manual/en/libaio.md
----------------------------------------------------------------------
diff --git a/docs/user-manual/en/libaio.md b/docs/user-manual/en/libaio.md
new file mode 100644
index 0000000..1e5f9ae
--- /dev/null
+++ b/docs/user-manual/en/libaio.md
@@ -0,0 +1,109 @@
+Libaio Native Libraries
+=======================
+
+ActiveMQ distributes a native library, used as a bridge between ActiveMQ
+and Linux libaio.
+
+`libaio` is a library, developed as part of the Linux kernel project.
+With `libaio` we submit writes to the operating system where they are
+processed asynchronously. Some time later the OS will call our code back
+when they have been processed.
+
+We use this in our high performance journal if configured to do so,
+please see ?.
+
+These are the native libraries distributed by ActiveMQ:
+
+-   libActiveMQAIO32.so - x86 32 bits
+
+-   libActiveMQAIO64.so - x86 64 bits
+
+When using libaio, ActiveMQ will always try loading these files as long
+as they are on the [library path](#using-server.library.path).
+
+Compiling the native libraries
+==============================
+
+In the case that you are using Linux on a platform other than x86\_32 or
+x86\_64 (for example Itanium 64 bits or IBM Power) you may need to
+compile the native library, since we do not distribute binaries for
+those platforms with the release.
+
+Install requirements
+--------------------
+
+> **Note**
+>
+> At the moment the native layer is only available on Linux. If you are
+> in a platform other than Linux the native compilation will not work
+
+The native library uses
+[autoconf](http://en.wikipedia.org/wiki/Autoconf) what makes the
+compilation process easy, however you need to install extra packages as
+a requirement for compilation:
+
+-   gcc - C Compiler
+
+-   gcc-c++ or g++ - Extension to gcc with support for C++
+
+-   autoconf - Tool for automating native build process
+
+-   make - Plain old make
+
+-   automake - Tool for automating make generation
+
+-   libtool - Tool for link editing native libraries
+
+-   libaio - library to disk asynchronous IO kernel functions
+
+-   libaio-dev - Compilation support for libaio
+
+-   A full JDK installed with the environment variable JAVA\_HOME set to
+    its location
+
+To perform this installation on RHEL or Fedora, you can simply type this
+at a command line:
+
+    sudo yum install automake libtool autoconf gcc-c++ gcc libaio libaio-devel 
make
+
+Or on Debian systems:
+
+    sudo apt-get install automake libtool autoconf gcc-g++ gcc libaio 
libaio-dev make
+
+> **Note**
+>
+> You could find a slight variation of the package names depending on
+> the version and Linux distribution. (for example gcc-c++ on Fedora
+> versus g++ on Debian systems)
+
+Invoking the compilation
+------------------------
+
+In the distribution, in the `native-src` directory, execute the shell
+script `bootstrap`. This script will invoke `automake` and `make` what
+will create all the make files and the native library.
+
+    someUser@someBox:/messaging-distribution/native-src$ ./bootstrap 
+    checking for a BSD-compatible install... /usr/bin/install -c
+    checking whether build environment is sane... yes
+    checking for a thread-safe mkdir -p... /bin/mkdir -p
+
+    ...
+
+    configure: creating ./config.status
+    config.status: creating Makefile
+    config.status: creating ./src/Makefile
+    config.status: creating config.h
+    config.status: config.h is unchanged
+    config.status: executing depfiles commands
+    config.status: executing libtool commands
+
+    ...
+
+The produced library will be at
+`./native-src/src/.libs/libActiveMQAIO.so`. Simply move that file over
+`bin` on the distribution or the place you have chosen on the [library
+path](#using-server.library.path).
+
+If you want to perform changes on the ActiveMQ libaio code, you could
+just call make directly at the `native-src` directory.

http://git-wip-us.apache.org/repos/asf/activemq-6/blob/4245a6b4/docs/user-manual/en/libaio.xml
----------------------------------------------------------------------
diff --git a/docs/user-manual/en/libaio.xml b/docs/user-manual/en/libaio.xml
deleted file mode 100644
index 75007ed..0000000
--- a/docs/user-manual/en/libaio.xml
+++ /dev/null
@@ -1,129 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
============================================================================= 
-->
-<!-- Licensed to the Apache Software Foundation (ASF) under one or more        
    -->
-<!-- contributor license agreements. See the NOTICE file distributed with      
    -->
-<!-- this work for additional information regarding copyright ownership.       
    -->
-<!-- The ASF 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.                                            
    -->
-<!-- 
============================================================================= 
-->
-
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" 
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"; [
-<!ENTITY % BOOK_ENTITIES SYSTEM "ActiveMQ_User_Manual.ent">
-%BOOK_ENTITIES;
-]>
-<chapter id="libaio">
-    <title>Libaio Native Libraries</title>
-    <para>ActiveMQ distributes a native library, used as a bridge between 
ActiveMQ and Linux
-        libaio.</para>
-    <para><literal>libaio</literal> is a library, developed as part of the 
Linux kernel project.
-        With <literal>libaio</literal> we submit writes to the operating 
system where they are
-        processed asynchronously. Some time later the OS will call our code 
back when they have been
-        processed.</para>
-    <para>We use this in our high performance journal if configured to do so, 
please see <xref
-            linkend="persistence"/>.</para>
-    <para>These are the native libraries distributed by ActiveMQ:</para>
-    <itemizedlist>
-        <listitem>
-            <para>libActiveMQAIO32.so - x86 32 bits</para>
-        </listitem>
-        <listitem>
-            <para>libActiveMQAIO64.so - x86 64 bits</para>
-        </listitem>
-    </itemizedlist>
-    <para>When using libaio, ActiveMQ will always try loading these files as 
long as they are on the
-            <link linkend="using-server.library.path">library 
path</link>.</para>
-    <section>
-        <title>Compiling the native libraries</title>
-        <para>In the case that you are using Linux on a platform other than 
x86_32 or x86_64
-            (for example Itanium 64 bits or IBM Power) you may need to compile 
the native library, since we
-            do not distribute binaries for those platforms with the 
release.</para>
-        <section>
-            <title>Install requirements</title>
-            <note>
-                <para>At the moment the native layer is only available on 
Linux. If you are in a
-                    platform other than Linux the native compilation will not 
work</para>
-            </note>
-            <para>The native library uses <ulink 
url="http://en.wikipedia.org/wiki/Autoconf";
-                    >autoconf</ulink> what makes the compilation process easy, 
however you need to
-                install extra packages as a requirement for compilation:</para>
-            <itemizedlist>
-                <listitem>
-                    <para>gcc - C Compiler</para>
-                </listitem>
-                <listitem>
-                    <para>gcc-c++ or g++ - Extension to gcc with support for 
C++</para>
-                </listitem>
-                <listitem>
-                    <para>autoconf - Tool for automating native build 
process</para>
-                </listitem>
-                <listitem>
-                    <para>make - Plain old make</para>
-                </listitem>
-                <listitem>
-                    <para>automake - Tool for automating make generation</para>
-                </listitem>
-                <listitem>
-                    <para>libtool - Tool for link editing native 
libraries</para>
-                </listitem>
-                <listitem>
-                    <para>libaio - library to disk asynchronous IO kernel 
functions</para>
-                </listitem>
-                <listitem>
-                    <para>libaio-dev - Compilation support for libaio</para>
-                </listitem>
-                <listitem>
-                    <para>A full JDK installed with the environment variable 
JAVA_HOME set to its
-                        location</para>
-                </listitem>
-            </itemizedlist>
-            <para>To perform this installation on RHEL or Fedora, you can 
simply type this at a
-                command line:</para>
-            <programlisting>sudo yum install automake libtool autoconf gcc-c++ 
gcc libaio libaio-devel make</programlisting>
-            <para>Or on Debian systems:</para>
-            <programlisting>sudo apt-get install automake libtool autoconf 
gcc-g++ gcc libaio libaio-dev make</programlisting>
-            <note>
-                <para>You could find a slight variation of the package names 
depending on the
-                    version and Linux distribution. (for example gcc-c++ on 
Fedora versus g++ on
-                    Debian systems)</para>
-            </note>
-        </section>
-        <section>
-            <title>Invoking the compilation</title>
-            <para>In the distribution, in the <literal>native-src</literal> 
directory, execute the
-                shell script <literal>bootstrap</literal>. This script will 
invoke <literal
-                    >automake</literal> and <literal>make</literal> what will 
create all the make
-                files and the native library.</para>
-            
<programlisting>someUser@someBox:/messaging-distribution/native-src$ 
./bootstrap 
-checking for a BSD-compatible install... /usr/bin/install -c
-checking whether build environment is sane... yes
-checking for a thread-safe mkdir -p... /bin/mkdir -p
-
-...
-
-configure: creating ./config.status
-config.status: creating Makefile
-config.status: creating ./src/Makefile
-config.status: creating config.h
-config.status: config.h is unchanged
-config.status: executing depfiles commands
-config.status: executing libtool commands
-
-...</programlisting>
-            <para>The produced library will be at <literal
-                    >./native-src/src/.libs/libActiveMQAIO.so</literal>. 
Simply move that file over
-                    <literal>bin</literal> on the distribution or the place 
you have chosen on the
-                    <link linkend="using-server.library.path">library 
path</link>.</para>
-            <para>If you want to perform changes on the ActiveMQ libaio code, 
you could just call
-                make directly at the <literal>native-src</literal> 
directory.</para>
-        </section>
-    </section>
-</chapter>

http://git-wip-us.apache.org/repos/asf/activemq-6/blob/4245a6b4/docs/user-manual/en/logging.md
----------------------------------------------------------------------
diff --git a/docs/user-manual/en/logging.md b/docs/user-manual/en/logging.md
new file mode 100644
index 0000000..32ef718
--- /dev/null
+++ b/docs/user-manual/en/logging.md
@@ -0,0 +1,93 @@
+Logging
+=======
+
+ActiveMQ uses the JBoss Logging framework to do its logging and is
+configurable via the `logging.properties` file found in the
+configuration directories. This is configured by Default to log to both
+the console and to a file.
+
+There are 6 loggers available which are as follows:
+
+  Logger                                      Logger Description
+  ------------------------------------------- 
----------------------------------------------------
+  org.jboss.logging                           Logs any calls not handled by 
the ActiveMQ loggers
+  org.apache.activemq.core.server             Logs the core server
+  org.apache.activemq.utils                   Logs utility calls
+  org.apache.activemq.journal                 Logs Journal calls
+  org.apache.activemq.jms                     Logs JMS calls
+  org.apache.activemq.integration.bootstrap   Logs bootstrap calls
+
+  : Global Configuration Properties
+
+Logging in a client or with an Embedded server
+==============================================
+
+Firstly, if you want to enable logging on the client side you need to
+include the JBoss logging jars in your library. If you are using maven
+add the following dependencies.
+
+    <dependency>
+       <groupId>org.jboss.logmanager</groupId>
+       <artifactId>jboss-logmanager</artifactId>
+       <version>1.3.1.Final</version>
+    </dependency>
+    <dependency>
+       <groupId>org.apache.activemq</groupId>
+       <artifactId>activemq-core-client</artifactId>
+       <version>2.3.0.Final</version>
+    </dependency>
+
+There are 2 properties you need to set when starting your java program,
+the first is to set the Log Manager to use the JBoss Log Manager, this
+is done by setting the `-Djava.util.logging.manager` property i.e.
+`-Djava.util.logging.manager=org.jboss.logmanager.LogManager`
+
+The second is to set the location of the logging.properties file to use,
+this is done via the `-Dlogging.configuration` for instance
+`-Dlogging.configuration=file:///home/user/projects/myProject/logging.properties`.
+
+> **Note**
+>
+> The value for this needs to be valid URL
+
+The following is a typical `logging.properties for a client`
+
+    # Root logger option
+    
loggers=org.jboss.logging,org.apache.activemq.core.server,org.apache.activemq.utils,org.apache.activemq.journal,org.apache.activemq.jms,org.apache.activemq.ra
+
+    # Root logger level
+    logger.level=INFO
+    # ActiveMQ logger levels
+    logger.org.apache.activemq.core.server.level=INFO
+    logger.org.apache.activemq.utils.level=INFO
+    logger.org.apache.activemq.jms.level=DEBUG
+
+    # Root logger handlers
+    logger.handlers=FILE,CONSOLE
+
+    # Console handler configuration
+    handler.CONSOLE=org.jboss.logmanager.handlers.ConsoleHandler
+    handler.CONSOLE.properties=autoFlush
+    handler.CONSOLE.level=FINE
+    handler.CONSOLE.autoFlush=true
+    handler.CONSOLE.formatter=PATTERN
+
+    # File handler configuration
+    handler.FILE=org.jboss.logmanager.handlers.FileHandler
+    handler.FILE.level=FINE
+    handler.FILE.properties=autoFlush,fileName
+    handler.FILE.autoFlush=true
+    handler.FILE.fileName=activemq.log
+    handler.FILE.formatter=PATTERN
+
+    # Formatter pattern configuration
+    formatter.PATTERN=org.jboss.logmanager.formatters.PatternFormatter
+    formatter.PATTERN.properties=pattern
+    formatter.PATTERN.pattern=%d{HH:mm:ss,SSS} %-5p [%c] %s%E%n
+
+Logging With The JBoss Application Server
+=========================================
+
+When ActiveMQ is deployed within the JBoss Application Server version
+7.x or above then it will still use JBoss Logging, refer to the AS7
+documentation on how to configure AS7 logging.

http://git-wip-us.apache.org/repos/asf/activemq-6/blob/4245a6b4/docs/user-manual/en/logging.xml
----------------------------------------------------------------------
diff --git a/docs/user-manual/en/logging.xml b/docs/user-manual/en/logging.xml
deleted file mode 100644
index 8277b55..0000000
--- a/docs/user-manual/en/logging.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
============================================================================= 
-->
-<!-- Licensed to the Apache Software Foundation (ASF) under one or more        
    -->
-<!-- contributor license agreements. See the NOTICE file distributed with      
    -->
-<!-- this work for additional information regarding copyright ownership.       
    -->
-<!-- The ASF 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.                                            
    -->
-<!-- 
============================================================================= 
-->
-
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" 
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"; [
-<!ENTITY % BOOK_ENTITIES SYSTEM "ActiveMQ_User_Manual.ent">
-%BOOK_ENTITIES;
-]>
-<chapter id="logging">
-    <title>Logging</title>
-    <para>ActiveMQ uses the JBoss Logging framework to do its logging and is 
configurable via the <literal>logging.properties</literal>
-       file found in the configuration directories. This is configured by 
Default to log to both the console and to a file.</para>
-   <para>There are 6 loggers available which are as follows:</para>
-    <table frame="topbot" border="2">
-       <title>Global Configuration Properties</title>
-       <tgroup cols="2">
-           <colspec colname="c1" colnum="1"/>
-           <colspec colname="c2" colnum="2"/>
-           <thead>
-               <row>
-                   <entry>Logger</entry>
-                   <entry>Logger Description</entry>
-               </row>
-           </thead>
-           <tbody>
-               <row>
-                   <entry>org.jboss.logging</entry>
-                   <entry>Logs any calls not handled by the ActiveMQ 
loggers</entry>
-               </row>
-               <row>
-                   <entry>org.apache.activemq.core.server</entry>
-                   <entry>Logs the core server</entry>
-               </row>
-               <row>
-                   <entry>org.apache.activemq.utils</entry>
-                   <entry>Logs utility calls</entry>
-               </row>
-               <row>
-                   <entry>org.apache.activemq.journal</entry>
-                   <entry>Logs Journal calls</entry>
-               </row>
-               <row>
-                   <entry>org.apache.activemq.jms</entry>
-                   <entry>Logs JMS calls</entry>
-               </row>
-               <row>
-                   <entry>org.apache.activemq.integration.bootstrap</entry>
-                   <entry>Logs bootstrap calls</entry>
-               </row>
-            </tbody>
-         </tgroup>
-       <para>you can configure the levels on these loggers independently in 
the appropriate <literal>logging.properties</literal>
-        file</para>
-   </table>
-   <section>
-      <title>Logging in a client or with an Embedded server</title>
-      <para>
-         Firstly, if you want to enable logging on the client side you need to 
include the JBoss logging jars in your library.
-         If you are using maven add the following dependencies.
-         <programlisting>
-&lt;dependency>
-   &lt;groupId>org.jboss.logmanager&lt;/groupId>
-   &lt;artifactId>jboss-logmanager&lt;/artifactId>
-   &lt;version>1.3.1.Final&lt;/version>
-&lt;/dependency>
-&lt;dependency>
-   &lt;groupId>org.apache.activemq&lt;/groupId>
-   &lt;artifactId>activemq-core-client&lt;/artifactId>
-   &lt;version>2.3.0.Final&lt;/version>
-&lt;/dependency></programlisting>
-      </para>
-      <para>
-         There are 2 properties you need to set when starting your java 
program, the first is to set the Log Manager to use
-         the JBoss Log Manager, this is done by setting the 
<literal>-Djava.util.logging.manager</literal> property i.e.
-         
<literal>-Djava.util.logging.manager=org.jboss.logmanager.LogManager</literal>
-      </para>
-      <para>
-         The second is to set the location of the logging.properties file to 
use, this is done via the <literal>-Dlogging.configuration</literal>
-         for instance 
<literal>-Dlogging.configuration=file:///home/user/projects/myProject/logging.properties</literal>.
-         <note>The value for this needs to be valid URL</note>
-      </para>
-      <para>
-         The following is a typical <literal>logging.properties for a 
client</literal>
-         <programlisting>
-# Root logger option
-loggers=org.jboss.logging,org.apache.activemq.core.server,org.apache.activemq.utils,org.apache.activemq.journal,org.apache.activemq.jms,org.apache.activemq.ra
-
-# Root logger level
-logger.level=INFO
-# ActiveMQ logger levels
-logger.org.apache.activemq.core.server.level=INFO
-logger.org.apache.activemq.utils.level=INFO
-logger.org.apache.activemq.jms.level=DEBUG
-
-# Root logger handlers
-logger.handlers=FILE,CONSOLE
-
-# Console handler configuration
-handler.CONSOLE=org.jboss.logmanager.handlers.ConsoleHandler
-handler.CONSOLE.properties=autoFlush
-handler.CONSOLE.level=FINE
-handler.CONSOLE.autoFlush=true
-handler.CONSOLE.formatter=PATTERN
-
-# File handler configuration
-handler.FILE=org.jboss.logmanager.handlers.FileHandler
-handler.FILE.level=FINE
-handler.FILE.properties=autoFlush,fileName
-handler.FILE.autoFlush=true
-handler.FILE.fileName=activemq.log
-handler.FILE.formatter=PATTERN
-
-# Formatter pattern configuration
-formatter.PATTERN=org.jboss.logmanager.formatters.PatternFormatter
-formatter.PATTERN.properties=pattern
-formatter.PATTERN.pattern=%d{HH:mm:ss,SSS} %-5p [%c] %s%E%n</programlisting>
-      </para>
-   </section>
-    <section>
-        <title>Logging With The JBoss Application Server</title>
-        <para>When ActiveMQ is deployed within the JBoss Application Server 
version 7.x or above then
-            it will still use JBoss Logging, refer to the AS7 documentation on 
how to configure AS7 logging.</para>
-    </section>
-</chapter>

Reply via email to