merged 1.1 branch into head
[mir.git] / source / mircoders / localizer / basic / MirBasicProducerLocalizer.java
index 66d5596..16aee46 100755 (executable)
 package mircoders.localizer.basic;
 
 import java.io.File;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
-import java.util.Vector;
 
 import mir.entity.adapter.EntityAdapterModel;
 import mir.generator.Generator;
@@ -66,7 +66,7 @@ public class MirBasicProducerLocalizer implements MirProducerLocalizer {
       logger = new LoggerWrapper("Localizer.Basic.Producer");
 
       producerRecipes = new HashMap();
-      producerRecipeNames = new Vector();
+      producerRecipeNames = new ArrayList();
 
       String[] recipes = MirGlobal.config().getStringArray("Mir.Localizer.Producer.ProducerRecipes");
       for (int i = 0; i<recipes.length; i++) {
@@ -131,12 +131,18 @@ public class MirBasicProducerLocalizer implements MirProducerLocalizer {
       throw new MirLocalizerExc("Unknown recipe name: " + aName);
   }
 
+  public void beforeProducerTask(String aFactory, String aVerb) {
+  }
+
+  public void afterProducerTask(String aFactory, String aVerb) {
+  }
+
   /**
    * Loads factories from a file with a {@link ProducerConfigReader}
    */
   public List loadFactories() throws MirLocalizerExc {
       try {
-        List producers = new Vector();
+        List producers = new ArrayList();
         ProducerConfigReader reader;
         ProducerNodeBuilderLibrary library = new ProducerNodeBuilderLibrary();
         setupProducerNodeBuilderLibrary(library);
@@ -154,7 +160,7 @@ public class MirBasicProducerLocalizer implements MirProducerLocalizer {
             t.getMessage());
         throw new MirLocalizerFailure(t);
       }
-  };
+  }
 
   /**
    * Sets up a {@link ProducerNodeBuilderLibrary} for use by the producer
@@ -164,8 +170,11 @@ public class MirBasicProducerLocalizer implements MirProducerLocalizer {
   protected void setupProducerNodeBuilderLibrary(ProducerNodeBuilderLibrary aLibrary) throws MirLocalizerFailure {
     try {
       DefaultProducerNodeBuilders.registerBuilders(
-          aLibrary, model, generatorLibrary, writerEngine,
-          MirGlobal.config().getHome(), MirGlobal.config().getFile("Producer.StorageRoot"));
+          aLibrary, model, generatorLibrary, 
+          MirGlobal.localizer().producerAssistant().createGenerationInterceptor(),
+          writerEngine,
+          MirGlobal.config().getHome(),
+          MirGlobal.config().getFile("Producer.StorageRoot"));
       SupplementalProducerNodeBuilders.registerBuilders(aLibrary, MirGlobal.config().getHome());
     }
     catch (Throwable t) {