Author: Peter Keung
Date: 2007-01-12 23:35:36 +0100 (Fri, 12 Jan 2007)
New Revision: 4497

Log:
Edited eZ Components Cache tutorial
Modified:
   trunk/Cache/docs/tutorial.txt

Modified: trunk/Cache/docs/tutorial.txt
===================================================================
--- trunk/Cache/docs/tutorial.txt       2007-01-12 13:10:55 UTC (rev 4496)
+++ trunk/Cache/docs/tutorial.txt       2007-01-12 22:35:36 UTC (rev 4497)
@@ -7,31 +7,29 @@
 ============
 
 The Cache package provides a collection of lightweight classes to cache
-different kinds of data. Beside that, it provides a manager class, which takes
+different kinds of data. It provides a manager class, which takes
 care of instantiating and reusing caches.
 
 Class overview
 ==============
 
-This section gives you an overview on all classes, that are intended to be
-used directly.
+This section gives you an overview of the most important classes.
 
 ezcCacheManager
-  This is the manager, which will take care of your caches. It is optional to
-  use the manager, but recommended if your application needs to cache different
-  data for different purposes. It allows you to configure all needed caches in
-  a central place and to retrieve them through the ezcCacheManager. The cache
-  manager will store only the configurations at first and only instantiate the
-  cache object itself when you request it for use.
+  This is the optional manager, which is recommended if your application needs
+  to cache different data for different purposes. It allows you to configure
+  all caches in a central place and to retrieve them through ezcCacheManager.
+  The cache manager will store only the configurations by default, only
+  instantiating the cache object when requested.
 
 ezcCacheStorage
-  This is the base class for all cache storages (the cache classes themselves).
+  This is the base class for all cache storage (the cache classes themselves).
   All cache classes inherit from this base class.
 
 ezcCacheStorageFilePlain
-  Cache objects of this class are capable to store plain text data on the file
-  system. It utilizes the file_get_contents() and file_put_contents() functions
-  of PHP.
+  Cache objects of this class are capable of storing plain text data on the 
file
+  system. It utilizes the file_get_contents() and file_put_contents() PHP
+  functions.
 
 ezcCacheStorageFileArray
   In contrast to ezcCacheStorageFilePlain, objects of this class can store
@@ -41,13 +39,13 @@
   construct.
 
 ezcCacheStorageFileEvalArray
-  Objects of this storage class follow a similar approach like
-  ezcCacheStorageFileArray and is also capable of storing array
-  structures. The major difference between both classes is, that
-  ezcCacheStorageFileEvalArray will use PHPs eval() method to restore the
-  cached data, instead of using required() to restore the cache data. This has 
the effect,
-  that the stored data will not be cached again in PHP accelerators like APC_.
-  This might be desirable, if you store large amounts of data at once.
+  Objects of this storage class follow a similar approach to
+  ezcCacheStorageFileArray; they are also capable of storing array
+  structures. The major difference between both classes is that
+  ezcCacheStorageFileEvalArray will use PHP's eval() method instead of
+  require() to restore the cached data. As a result,
+  the stored data will not be cached again in PHP accelerators like APC_.
+  This might be desirable if you store large amounts of data at once.
 
 .. _APC: http://pecl.php.net/package/APC
 
@@ -59,61 +57,55 @@
 -----------
 
 _`Cache`
-  A location that stores `cache item`_. A cache is created with the
+  A location that stores `cache item`_ s. A cache is created with
   ezcCacheManager::createCache(), preferrably at the beginning of your script.
-  A cache with it's `cache identifier`_ - the first parameter to
+  A cache with its `cache identifier`_ - the first parameter to
   ezcCacheManager::createCache() - can only be created once. After it has been
-  created at the beginning of your request you can obtain a reference to it
-  throughout the whole request by calling ezcCacheManager::getCache() with as
-  first parameter the $id with which it was created.
+  created, you can reference it by calling ezcCacheManager::getCache(), using
+  the corresponding $id as the first parameter.
 
 _`Cache identifier`
-  An identifier that uniquely identifies a `cache`_ which contains a number of
-  `cache item`_ s.
+  An identifier that uniquely identifies a `cache`_.
 
 _`Cache item`
-  One single entry stored in the `cache`_. Cache items can be stored and
+  One single entry stored in a `cache`_. Cache items can be stored and
   retrieved by using the ezcCacheStorage object that is returned by 
   calling ezcCacheManager::getCache(). Cache items use a `cache key`_ to
-  identify specific entries in the cache.
+  identify specific entries.
 
 _`Cache key`
   A string representing a single `cache item`_ in a `cache`_.
 
 _`Attribute`
-  Additional information to complement the `cache key`_ for doing operations
-  on `cache item`_ s.
+  Additional information to complement the `cache key`_ in
+  `cache item`_ s.
 
 A simple example
 ----------------
 
-This example shows how to create and use a simple cache with the
+This example shows how to create and use a simple cache with
 ezcCacheManager:
 
 .. include:: tutorial_example_01.php
    :literal:
 
-In the options for the cache to create, the time-to-life is defined. If left
-out, the cache has a lifetime of 24 hours. In this place, a lifetime of 30
-seconds is defined. On line 9 the cache configuration is stored in the cache
-manager. The `cache`_ created uses the `cache identifier` "simple" and will 
reside in the directory
-/tmp/cache/plain (Note: This directory must exists and must be writable to
-the user running the code, else you will get an ezcBaseFileNotFoundException or
-an ezcBaseFilePermissionException!). To store a `cache item`_, the storage
-class ezcConsoleStorageFilePlain will be used and as defined before, the stored
-data will expire after 30 seconds.
+Time-to-live is defined as 30 seconds in this case; if left
+out, the cache will have a lifespan of 24 hours. On line 9, the cache
+configuration is stored in the cache
+manager. The created `cache`_ uses the `cache identifier`_ "simple" and will 
reside in the directory
+/tmp/cache/plain. (Note: This directory must exist and must be writable!) To 
store a `cache item`_, the storage
+class ezcConsoleStorageFilePlain will be used.
 
-Line 11 defines a `cache key`_ for the data to cache. The next line defines a
+Line 11 defines a `cache key`_ for a cache item. The next line defines a
 second unique `cache key`_ for a second cache item. After that (line 14), the
-`cache`_ object is retrieved from the ezcCacheManager (the object itself
-is created right now, since we access it for the first time). The lines 16 and
-22 show how to check for cached data: The method ezcCacheStorage::restore()
-will return bool false, if no valid cache data is found for a given ID.
+newly-created `cache`_ object is retrieved from ezcCacheManager. Lines 16 and
+22 show how to check for cached data: ezcCacheStorage::restore()
+will return bool false if no valid cache data is found for the given ID.
 
-In case the cache storage did not find valid data, the data will be generated
-and stored in the cache afterwards (lines 17-18 and 24-25). The last line 
shows the
-data, so you can follow how it's cached for 30 seconds, by simple running the
-example multiple times in a short time frame. After 30 seconds the cache data
+If no valid data is found, the data will be generated
+and stored in the cache later (lines 17-18 and 24-25). The last line outputs 
the
+data, so you can follow how it's cached for 30 seconds by running the
+example multiple times in a short time frame. After 30 seconds, the cache data
 will become invalid and will be regenerated.
 
 Using multiple caches
@@ -124,54 +116,53 @@
 .. include:: tutorial_example_02.php
    :literal:
 
-In the lines 12 and 13 you see how 2 caches are created. Each `cache`_ must
+In lines 12 and 13, two caches are created. Each `cache`_ must
 reside in its own location and must have a different `cache identifier`_. We
-use 2 different options for the lifetime of the caches to show how they act
-independently later.
+use two different options for the lifetime of the caches to show how they act
+independently.
 
 Since the first `cache`_ reuses the location already used in example 1, 
-we use a different `cache key`_ now.
+we use a different `cache key`_ here.
 Lines 15 to 25 are almost identical to the code from example 1, 
-except that the program will sleep for 2 seconds, when it generated new data 
for 
-the plain cache, to show different generation times in the 2 caches.
+except that the program will pause for two seconds when generating 
+the plain cache, in order to show different generation times for the two
+caches.
 
-On line 30 the second `cache`_ object is retrieved, which is capable of storing
+On line 30, the second `cache`_ object is retrieved, which is capable of 
storing
 arrays.  Therefore, we store the data from the plain cache here and
-additionally generate some more data, all stored in an array. Running this
-example multiple times will give you different results now after some time,
+generate some additional data to be stored in an array. Running this
+example multiple times will give you different results
 since the second cache has a longer lifetime and will therefore hold its data
 longer than the first one.
 
 Complex caching
 ---------------
 
-As the next example shows, ezcCacheStorage classes are capable of more advanced
-features. This example uses attributes to identify cached data, additionally to
-their `cache key`_:
+As the next example shows, the ezcCacheStorage class is capable of more 
advanced
+features. This example uses extra attributes in addition to the `cache key`_:
 
 .. include:: tutorial_example_03.php
    :literal:
 
-After the creation of an array `cache_`, some sample data is created (lines
-11-16). Each data is keyed by its `cache key`_, which is associated with an
-array.  This array will be used as the content and the attributes together
-later on. `Attribute`_ s describes a `cache item`_ in further detail. We will 
see,
-what to do with `attribute`_ s of a cache item later on, too.
+After the creation of an array `cache`_, some sample data is created (lines
+11-16). Data is identified by `cache key`_ s, which are associated with
+arrays. Each array will be used to store the content and the attributes
+together. `Attribute`_ s describe a `cache item`_ s in further detail.
 
-In line 20 a foreach loop starts, which stores all example data in the cache.
-After that the method ezcCacheStorageFile::countDataItems() is used to let the
-storage object count its cache items. The first parameter here would be a
+In line 20, a foreach loop starts, which stores all example data in the cache.
+After that, the method ezcCacheStorageFile::countDataItems() is used to count
+cache items that meet certain criteria. The first parameter here would be a
 `cache key`_.
 When this is set, the method should always return 1 or 0, because only one 
cache
-item per `cache key`_ may exist. Instead, the cache items with the specified 
attribute are
+item per `cache key`_ may exist. In this example, the cache items with the 
specified attribute are
 counted. The attributes to match are supplied as the second parameter. The
-first method call will return 3 (line 28), since we have 3 cache items which
+first method call will return 3 (line 28), since we have three cache items that
 have the attribute "section" set to "articles". The second call (line 32)
-should return 2, because 2 data items have the attribute "language" set to the
+should return 2, because two data items have the attribute "language" set to 
the
 value "de".
 
-On line 36 the storage object is told to delete all cache items, which have
-the `attribute`_ "language" set to "de". Therefore the next to calls to
+On line 36 the storage object is told to delete all cache items that have
+the `attribute`_ "language" set to "de". Therefore, the next calls to
 ezcCacheStorageFile::countDataItems() will return 2 and 0.
 
 More Information

-- 
svn-components mailing list
svn-components@lists.ez.no
http://lists.ez.no/mailman/listinfo/svn-components

Reply via email to