working on doc
[mir.git] / doc / developers-guide / introduction.xml
index 8b0b253..e83daa8 100755 (executable)
@@ -16,9 +16,9 @@ the dynamic site  (see figure).
 <figure><title>mir architecture (single host)</title>
 <mediaobject>
 <imageobject>
-<imagedata fileref="diagrams/mir-architecture-singlehost.eps" format="EPS"></imagedata></imageobject>
+<imagedata fileref="figures/mir-architecture-singlehost.eps" format="EPS"></imagedata></imageobject>
 <imageobject>
-<imagedata fileref="diagrams/mir-architecture-singlehost.png" format="PNG"></imagedata></imageobject>
+<imagedata fileref="figures/mir-architecture-singlehost.png" format="PNG"></imagedata></imageobject>
 <textobject>
 </textobject>
 </mediaobject>
@@ -35,9 +35,9 @@ site. Mirrors are simple to set up, since only static pages are involved
 <figure><title>mir architecture (mirrored)</title>
 <mediaobject>
 <imageobject>
-<imagedata fileref="diagrams/mir-architecture-mirrored.eps" format="EPS"></imagedata></imageobject>
+<imagedata fileref="figures/mir-architecture-mirrored.eps" format="EPS"></imagedata></imageobject>
 <imageobject>
-<imagedata fileref="diagrams/mir-architecture-mirrored.png" format="PNG"></imagedata></imageobject>
+<imagedata fileref="figures/mir-architecture-mirrored.png" format="PNG"></imagedata></imageobject>
 <textobject>
 </textobject>
 </mediaobject>
@@ -47,7 +47,7 @@ site. Mirrors are simple to set up, since only static pages are involved
 
 <section><title>Concepts used by Mir</title>
 <para>Here's a list of important terms and concepts used by Mir. 
-Many of these concepts will be further detailed latter on in this guide.
+Many of these concepts will be further detailed later on in this guide.
 </para>
 <glossentry id="producers">
   <glossterm>producer</glossterm>
@@ -61,11 +61,11 @@ In many CMS systems, the available variables (data) are hard-coded into the
 software. In practice, this is often not flexible enough
 for web designers.
 Mir allows designers to request the data they need by using
-the producer framework, configured in the "producers.xml" file.
+the producer framework, configured in the <filename>producers.xml</filename> file.
 </para>
 <para>Originally producers were
 mostly used  to generate  pages, but  they are now used  for a  lot of
-other  tasks. In fact, the producers.xml file provides a 
+other  tasks. In fact, the <filename>producers.xml</filename> file provides a 
 simple, xml-based, programing (scripting) language, so that  
 site administrators can script their own custom tasks without
 changing the java code.
@@ -75,13 +75,15 @@ feeds  for the  global wire.
 <figure><title>An example of article generation with the producers framework</title>
 <mediaobject>
 <imageobject>
-<imagedata fileref="diagrams/article-generation-example.eps" format="EPS"></imagedata></imageobject>
+<imagedata fileref="figures/article-generation-example.eps" format="EPS"></imagedata></imageobject>
 <imageobject>
-<imagedata fileref="diagrams/article-generation-example.png" format="PNG"></imagedata></imageobject>
+<imagedata fileref="figures/article-generation-example.png" format="PNG"></imagedata></imageobject>
 <textobject>
 </textobject>
 </mediaobject>
 </figure>
+<para>In the  admin web interface,  producers appear, for  example, on
+the admin->"Generate manually"->"advanced page": (they are called Tasks)</para>
 <para>
 Further information on producers may be found at XXX and in the javadoc 
 (classes Producer, NodedProducer, roducerNode...).
@@ -90,14 +92,14 @@ Further information on producers may be found at XXX and in the javadoc
 </glossentry>
 
 <glossentry id="database">
-  <glossterm>database</glossterm>
+  <glossterm>database access</glossterm>
     <glossdef>
          <para>
 Mir uses a postgres database to store it's data. 
-Currently, the mir.storage, mircoders.storage, mir.entity, and 
-mir.entity.adapter 
+Currently, the <code>mir.storage</code>, <code>mircoders.storage</code>, 
+<code>mir.entity</code>, and <code>mir.entity.adapter</code>
 packages
-are used to acces  the database in Mir. However, these packages 
+are used to access  the database in Mir. However, these packages 
 are obsolete and will be replaced by the 
 <ulink url="http://www.hibernate.org">hibernate</ulink>
 object/relational persistence system. 
@@ -110,10 +112,26 @@ object/relational persistence system.
   <glossterm>localizer</glossterm>
     <glossdef>
          <para>
-FIXME localizers are to allow mir installations to add code seperate from the
-main code. A lot of things can be changed in an installation (and are
-by various mir sites). Think of custom open posting mechanism, open
-posting validation, data model enhancements. 
+Localizers provide a customization framework that allows
+different mir sites to behave differently. Each site can
+write it's own bits of java code that override default behavior.
+This is effectively
+used by various indymedia sites to customize things 
+such  open posting mechanisms, open
+posting validation, data model enhancements, etc.
+</para>
+<para>
+The <classname>MirLocalizer</classname> interface describes 
+the  centralized localizer, that may be accessed via the global 
+<function>MirGlobal.localizer()</function>
+function. The central localizer provides accessors to 
+domain specific localizers 
+(like <classname>MirBasicOpenPostingLocalizer</classname>).  
+</para>
+<para>
+Default behavior is provided by the <classname>MirBasicLocalizer</classname> 
+and it's associated classes. These classes can be extended to 
+override default behavior.
 </para>
        </glossdef>
 </glossentry>
@@ -137,10 +155,10 @@ sites) and velocity (not used at all but supported anyway).
   <glossterm>logger</glossterm>
     <glossdef>
          <para>
-Logging is understood here as "sytem logs" : information written
+Logging is understood here as "system logs" : information written
 out to files that may be used to track what is going on in Mir,
-especially errors and warnings. Mir uses the <ulink href="http://logging.apache.org/log4j/docs">log4j</ulink> logging system.
-This alows us to split logs into different files, making them
+especially errors and warnings. Mir uses the <ulink url="http://logging.apache.org/log4j/docs">log4j</ulink> logging system.
+This allows us to split logs into different files, making them
 easier to understand.
 </para>
        </glossdef>
@@ -150,7 +168,7 @@ easier to understand.
   <glossterm>mircoders packages</glossterm>
     <glossdef>
          <para>
-Originally, the mircoders packages were meant for local developpements,
+Originally, the mircoders packages were meant for local developments,
 as opposed to the core Mir code. This distinction is now obsolete
 and these packages will probably be reorganized in future releases.
 </para>