Index: mrustore.xml
===================================================================
RCS file: /home/cvspublic/xml-cocoon2/xdocs/mrustore.xml,v
retrieving revision 1.2
diff -u -r1.2 mrustore.xml
--- mrustore.xml	2001/07/20 10:30:02	1.2
+++ mrustore.xml	2001/07/22 19:40:48
@@ -15,7 +15,7 @@
 	</s1>
 	<s1 title="Overview">
 		<p>The MRUMemoryStore was developed to provide a standard algorithm to
-       store data in Memory. For web-based applications the MRU (Most Recently Used) algorithm
+       store data in memory. For web-based applications the MRU (Most Recently Used) algorithm
        is very suitable, because the most accessed object is always on "top".
     </p>
     <p> If configured the objects are also swaped to the filesystem, to hold them
@@ -34,9 +34,9 @@
     If the list is already full, the <code>free()</code> method is called and the oldest,
     the last one in the LinkedList, data entry is also removed from the HashMap and the
     LinkedList.
-    If an entry was already in the list, it is removed with a call to the <code>free()</code> 
-    method and inserted at the front of the list with a call to the <code>store()</code> method. 
-
+    When calling the <code>get()</code> method, the store returns the object by key
+    and inserts the requested key on the top of the LinkedList.
+       
     This implementation keeps only the most recent objects in the cache and provides the best
     use of the machines memory.
     </p>
@@ -47,15 +47,20 @@
     must be processed again, although they didn't have changed. What a waste of CPU time.
     </p>
     <p>
-    If configured, the MRUMemoryStore will keep your objects not only in Memory, rather also on
-    the filesystem. When calling the <code>store()</code> method, objects are pushed on a stack
-    which is processed by a "writerthread" in the backgroud. So the object are asynchron written
-    to the filesystem, to keep the performance fast. But only CacheStreamObject's and CacheEventObject's
-    are stored on the filesystem. Because they are serializable. If you restart the JVW the memory
-    is clean and the <code>get()</code> method looks on the filesystem, if the requested object
-    is there, deserialize it and give it back to the caller. After all, the <code>store()</code>
-    method is called and the deserialized object is stored in memory for further usage.
+    If configured, the MRUMemoryStore will keep your objects not only in memory, rather also on
+    the filesystem. When calling the <code>store()</code> method, objects are pushed on a stack,
+    which is processed by a "writerthread" in the background. This thread pops the object from the
+    stack and serialize it to the fs. So the objects are asynchron written to the filesystem, 
+    to keep the performance fast. The thread sleeps and awakes only, when one or more objects
+    are pushed on the stack. But only CacheStreamObject's and CacheEventObject's in the moment
+    are stored on the filesystem.
     </p>
+    <p>
+    If you restart your application memory is clean. When you request a object with the <code>get()</code> 
+    method the filesystem is checked if the requested object is available, deserialize it and give 
+    it back to the caller. After all the <code>store()</code> method is called and the 
+    deserialized object is stored in memory for further usage.
+    </p>
     </s2>
     <s2 title="Background threads">
     <p>
@@ -64,7 +69,7 @@
     </p>
     <p>
     The Writer Thread is notfied when a object is pushed on the stack to be written on the filesystem.
-    Then Writer Thread kicks in and serialize the object on the filesystem.
+    Then Writer Thread kicks in and serialize the objects on the filesystem.
     </p>
     </s2>
   </s1>
@@ -84,7 +89,7 @@
   </source> 
   <p>If you want to use the MRUMemoryStore as your EventCache:</p>
   <ol> 
-      <li><code>&lt;event-cache class="org.apache.cocoon.components.store.MRUMemoryStore"&gt;</code>
+      <li><code>&lt;event-cache class="org.apache.cocoon.components.store.MRUMemoryStore"&gt;</code>:
       Assigns the MRUMemoryStore as the actual EventCache.</li>
 			<li><code>&lt;parameter name="freememory" value="1000000"/&gt;</code>: 
       Indicates how much memory should be left free in the JVM for normal operation..</li>
