protected static Logfile logger = Logfile.getInstance( MirGlobal.getConfigProperty("Home") + "/" + MirGlobal.getConfigProperty("Mir.Localizer.Logfile"));
public void afterContentPosting() {
- MirGlobal.producerEngine().addJob("content", "new");
MirGlobal.producerEngine().addJob("media", "new");
+ MirGlobal.producerEngine().addJob("content", "new");
MirGlobal.producerEngine().addJob("startpage", "(default)");
MirGlobal.producerEngine().addJob("synchronization", "run");
setupTopicsFactory( node );
aFactoriesMap.put("topics", new NodedProducerFactory(node));
- aFactoriesMap.put("images", new OldProducerAdapterFactory(new ProducerImages()));
+ aFactoriesMap.put("media",
+ new CompositeProducerFactory( new ProducerFactory[] {
+ new OldProducerAdapterFactory(new ProducerImages()),
+ new OldProducerAdapterFactory(new ProducerAudio()),
+ new OldProducerAdapterFactory(new ProducerVideo()),
+ new OldProducerAdapterFactory(new ProducerOther())
+ } )
+ );
};
}
--- /dev/null
+package mircoders.producer;
+
+import java.util.*;
+import java.io.*;
+import mir.producer.*;
+
+public class CompositeProducer implements mir.producer.Producer {
+
+ List producers;
+
+ public CompositeProducer() {
+ producers = new Vector();
+ }
+
+ public void addProducer(mir.producer.Producer aProducer) {
+ producers.add(aProducer);
+ }
+
+ public void produce( PrintWriter aLogger ) throws ProducerFailure {
+ Iterator i;
+
+ i=producers.iterator();
+
+ while (i.hasNext())
+ ((mir.producer.Producer) i.next()).produce(aLogger);
+ }
+}
--- /dev/null
+package mircoders.producer;
+
+import java.util.*;
+import mir.entity.*;
+import mir.producer.*;
+
+public class CompositeProducerFactory implements ProducerFactory {
+ Map factories; // verb -> Vector ( ProducerFactory )
+
+ public CompositeProducerFactory() {
+ factories = new HashMap();
+ }
+
+ public CompositeProducerFactory(ProducerFactory[] aSubProducerFactories) {
+ this();
+
+ int i;
+
+ for (i=0; i<aSubProducerFactories.length; i++) {
+ addFactory(aSubProducerFactories[i]);
+ }
+ }
+
+ private List factoriesForVerb(String aVerb) {
+ List result;
+
+ result=(List) factories.get(aVerb);
+
+ if (result==null) {
+ result=new Vector();
+
+ factories.put(aVerb, result);
+ }
+
+ return result;
+ }
+
+ public void addFactory(ProducerFactory aFactory) {
+ Iterator i;
+
+ i=aFactory.verbs();
+
+ while (i.hasNext()) {
+ factoriesForVerb((String) i.next()).add(aFactory);
+ }
+ }
+
+ public mir.producer.Producer makeProducer(String aVerb) throws ProducerFailure {
+ CompositeProducer result = new CompositeProducer();
+
+ Iterator i=factoriesForVerb(aVerb).iterator();
+
+ while (i.hasNext())
+ result.addProducer(((ProducerFactory) i.next()).makeProducer(aVerb));
+
+ return result;
+ }
+
+ public Iterator verbs() {
+ return factories.keySet().iterator();
+ }
+}
public class BoliviaOpenPostingLocalizer extends MirBasicOpenPostingLocalizer {
public void afterContentPosting() {
- MirGlobal.producerEngine().addJob("content", "new");
MirGlobal.producerEngine().addJob("media", "new");
+ MirGlobal.producerEngine().addJob("content", "new");
MirGlobal.producerEngine().addJob("startpage", "(default)");
MirGlobal.producerEngine().addJob("synchronization", "run");
import mircoders.global.*;
public class BoliviaProducerToolLocalizer extends MirBasicProducerToolLocalizer {
+ public void initializeGenerationValueSet(Map aValueSet) {
+ super.initializeGenerationValueSet(aValueSet);
+
+ ((Map) aValueSet.get("config")).put("adminUrl", MirGlobal.getConfigProperty("Producer.AdminUrl"));
+ }
}
+