small changes
authorzapata <zapata>
Fri, 17 May 2002 21:58:46 +0000 (21:58 +0000)
committerzapata <zapata>
Fri, 17 May 2002 21:58:46 +0000 (21:58 +0000)
source/mir/producer/AssignmentProducerNode.java [new file with mode: 0755]
source/mir/producer/EvaluatedAssignmentProducerNode.java [new file with mode: 0755]
source/mirlocal/bolivia.indymedia.org/BoliviaProducerLocalizer.java
source/mirlocal/indymedia.nl/IndyNLProducerLocalizer.java

diff --git a/source/mir/producer/AssignmentProducerNode.java b/source/mir/producer/AssignmentProducerNode.java
new file mode 100755 (executable)
index 0000000..4537ef8
--- /dev/null
@@ -0,0 +1,39 @@
+package mir.producer;
+
+import java.util.*;
+import java.io.*;
+import org.apache.struts.util.MessageResources;
+import mir.util.*;
+
+public class AssignmentProducerNode extends ProducerNodeDecorator {
+  private String key;
+  private String bundleIdentifier;
+  private Object value;
+
+  public AssignmentProducerNode(String aKey, Object aValue, ProducerNode aSubNode) {
+    super(aSubNode);
+
+    key = aKey;
+    value = aValue;
+  }
+
+  public void produce(Map aValueMap, String aVerb, PrintWriter aLogger) throws ProducerFailure {
+    Object savedValue;
+
+    savedValue = aValueMap.get(key);
+    try {
+      try {
+        aValueMap.put(key, value);
+
+        super.produce(aValueMap, aVerb, aLogger);
+      }
+      catch (Throwable t) {
+        throw new ProducerFailure(t.getMessage(), t);
+      }
+    }
+    finally {
+      aValueMap.put(key,savedValue);
+    }
+  };
+
+}
\ No newline at end of file
diff --git a/source/mir/producer/EvaluatedAssignmentProducerNode.java b/source/mir/producer/EvaluatedAssignmentProducerNode.java
new file mode 100755 (executable)
index 0000000..c9af95b
--- /dev/null
@@ -0,0 +1,39 @@
+package mir.producer;
+
+import java.util.*;
+import java.io.*;
+import org.apache.struts.util.MessageResources;
+import mir.util.*;
+
+public class EvaluatedAssignmentProducerNode extends ProducerNodeDecorator {
+  private String key;
+  private String bundleIdentifier;
+  private String value;
+
+  public EvaluatedAssignmentProducerNode(String aKey, String aValue, ProducerNode aSubNode) {
+    super(aSubNode);
+
+    key = aKey;
+    value = aValue;
+  }
+
+  public void produce(Map aValueMap, String aVerb, PrintWriter aLogger) throws ProducerFailure {
+    Object savedValue;
+
+    savedValue = aValueMap.get(key);
+    try {
+      try {
+        aValueMap.put(key, ParameterExpander.expandExpression( aValueMap, value ));
+
+        super.produce(aValueMap, aVerb, aLogger);
+      }
+      catch (Throwable t) {
+        throw new ProducerFailure(t.getMessage(), t);
+      }
+    }
+    finally {
+      aValueMap.put(key,savedValue);
+    }
+  };
+
+}
\ No newline at end of file
index 132c98a..2becc33 100755 (executable)
@@ -34,7 +34,7 @@ public class BoliviaProducerLocalizer extends MirBasicProducerLocalizer {
     }
 
     contentNode.addVerb( "all", "is_published='1'", "" );
     }
 
     contentNode.addVerb( "all", "is_published='1'", "" );
-    contentNode.addVerb( "all", "is_published='1' and is_produced='f'", "" );
+    contentNode.addVerb( "new", "is_published='1' and is_produced='f'", "" );
 
     aContentFactory.addFactory( new NodedProducerFactory( contentNode ) );
 
 
     aContentFactory.addFactory( new NodedProducerFactory( contentNode ) );
 
index 2749658..f436e4f 100755 (executable)
@@ -64,12 +64,8 @@ public class IndyNLProducerLocalizer extends MirBasicProducerLocalizer {
 
     try {
       startPageNode =
 
     try {
       startPageNode =
-          new EntityListProducerNode("features", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
-                  "is_published='1' and to_article_type = 2", "date desc, webdb_create desc", 10,
             new EntityListProducerNode("newswire", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
             new EntityListProducerNode("newswire", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
-                    "is_published='1' and to_article_type = 1", "date desc, webdb_create desc", 10,
-              new EntityListProducerNode("breaking", DatabaseBreaking.getInstance(), BreakingAdapterDefinition.getInstance(),
-                      "", "webdb_create desc", 5,
+                    "is_published='1' and to_article_type = 1", "date desc, webdb_create desc", 40,
                 new EntityListProducerNode("languages", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(),
                         "", "code", 10,
                     new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
                 new EntityListProducerNode("languages", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(),
                         "", "code", 10,
                     new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
@@ -87,9 +83,7 @@ public class IndyNLProducerLocalizer extends MirBasicProducerLocalizer {
                       )
                     )
                 )
                       )
                     )
                 )
-              )
-            )
-          );
+            );
     }
     catch (Throwable t) {
     }
     }
     catch (Throwable t) {
     }
@@ -173,44 +167,78 @@ public class IndyNLProducerLocalizer extends MirBasicProducerLocalizer {
     }
 
     aStaticFactory.addFactory( new NodedProducerFactory( staticNode ) );
     }
 
     aStaticFactory.addFactory( new NodedProducerFactory( staticNode ) );
+  }
 
 
+  protected void setupFactories(Map aFactoriesMap ) {
+    super.setupFactories(aFactoriesMap);
 
 
-/*
-    aStaticFactory.addFactory(
-      new StaticProducerFactory(
-          "producer/nav.template",
-          "bundles.admin",
-          MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/nav.inc"));
+    ProducerNode node = null;
 
 
-    aStaticFactory.addFactory(
-      new StaticProducerFactory(
-          "producer/top.template",
-          "bundles.admin",
-          MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/top.inc"));
+    try {
+      node =
+          new EntityListProducerNode("features", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
+                  "is_published='1' and to_article_type = 2", "date desc, webdb_create desc", 10,
+            new EntityListProducerNode("breaking", DatabaseBreaking.getInstance(), BreakingAdapterDefinition.getInstance(),
+                      "", "webdb_create desc", 5,
+              new EntityListProducerNode("languages", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(),
+                        "", "code", 10,
+                new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
+                  new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                      new GeneratingProducerNode(
+                          "/producer/indymedia.nl/features.template",
+                          "${config.storageRoot}/${language.code}/features.inc"
+                      )
+                  )
+                )
+              )
+            )
+          );
+    }
+    catch (Throwable t) {
+    }
 
 
-    aStaticFactory.addFactory(
-      new StaticProducerFactory(
-          "producer/bottom.template",
-          "bundles.admin",
-          MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/bottom.inc"));
+    aFactoriesMap.put("features", new NodedProducerFactory( node ) );
 
 
-    aStaticFactory.addFactory(
-      new StaticProducerFactory(
-          "producer/style.template",
-          "bundles.admin",
-          MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/style.css"));
+    try {
+      node =
+          new EntityListProducerNode("features", DatabaseContent.getInstance(), ContentAdapterDefinition.getInstance(),
+                  "is_published='1' and to_article_type = 2", "date desc, webdb_create desc", 10,
+            new EntityListProducerNode("breaking", DatabaseBreaking.getInstance(), BreakingAdapterDefinition.getInstance(),
+                      "", "webdb_create desc", 5,
+              new EntityListProducerNode("languages", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(),
+                        "", "code", 10,
+                new EntityEnumeratingProducerNode( "language", DatabaseLanguage.getInstance(), LanguageAdapterDefinition.getInstance(), "", "",
+                  new ResourceBundleProducerNode("lang", "bundles.producer_${language.code}",
+                      new GeneratingProducerNode(
+                          "/producer/indymedia.nl/features.template",
+                          "${config.storageRoot}/try/${language.code}/features.inc"
+                      )
+                  )
+                )
+              )
+            )
+          );
+    }
+    catch (Throwable t) {
+    }
+    aFactoriesMap.put("featurestest", new NodedProducerFactory( node ) );
 
 
-    aStaticFactory.addFactory(
-      new StaticProducerFactory(
-          "producer/articlepre.template",
+/*
+    aStartPageFactory.addFactory(
+      new StartPageProducerFactory(
+          "producer/start.template",
           "bundles.admin",
           "bundles.admin",
-          MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/articlepre.shtml"));
+          MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/start.shtml",
+          MirGlobal.getConfigIntegerProperty("Producer.StartPage.Items"),
+          0));
 
 
-    aStaticFactory.addFactory(
-      new StaticProducerFactory(
-          "producer/articlepost.template",
+    aStartPageFactory.addFactory(
+      new StartPageProducerFactory(
+          "producer/newswire.template",
           "bundles.admin",
           "bundles.admin",
-          MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/articlepost.shtml"));
+          MirGlobal.getConfigProperty("Producer.StorageRoot") + "/nl/newswire.inc",
+          0,
+          MirGlobal.getConfigIntegerProperty("Producer.StartPage.Newswire")));
 */
   }
 }
 */
   }
 }