getting there....
authorjohn <john>
Wed, 25 Sep 2002 21:14:43 +0000 (21:14 +0000)
committerjohn <john>
Wed, 25 Sep 2002 21:14:43 +0000 (21:14 +0000)
source/mircoders/producer/PDFGeneratingProducerNode.java
source/mircoders/producer/PDFPreFormattingProducerNode.java

index 64274ff..d739073 100755 (executable)
@@ -40,16 +40,19 @@ import mir.misc.PDFUtil;
 public class PDFGeneratingProducerNode implements ProducerNode {
   private String generatorExpression;
   private String destinationExpression;
+  private String stylesheet;
 
-  public PDFGeneratingProducerNode(String aGenerator, String aDestination) {
+  public PDFGeneratingProducerNode(String aGenerator, String aDestination,String aStylesheet) {
     generatorExpression=aGenerator;
     destinationExpression=aDestination;
+    stylesheet=aStylesheet;
   }
 
   public void produce(Map aValueMap, String aVerb, PrintWriter aLogger) throws ProducerFailure {
 
     String generatorIdentifier;
     String destinationIdentifier;
+    String stylesheetIdentifier;
 
           long startTime;
           long endTime;
@@ -59,15 +62,17 @@ public class PDFGeneratingProducerNode implements ProducerNode {
 
       destinationIdentifier = ParameterExpander.expandExpression( aValueMap, destinationExpression );
       generatorIdentifier = ParameterExpander.expandExpression( aValueMap, generatorExpression );
+      stylesheetIdentifier = ParameterExpander.expandExpression( aValueMap, stylesheet);      
 
-      aLogger.println("Generating " + generatorIdentifier + " into " + destinationIdentifier);
+      aLogger.println("Generating " + generatorIdentifier + " into " + destinationIdentifier + " using "+ stylesheetIdentifier);
       aLogger.flush();
 
-      PDFUtil.makePDF(generatorIdentifier,destinationIdentifier);
+      PDFUtil.makePDF(generatorIdentifier,destinationIdentifier,stylesheetIdentifier);
 
         }
         catch (Throwable t) {
-          aLogger.println("  error while generating: " + t.getMessage());
+           t.printStackTrace();
+           aLogger.println("  error while generating: " + t.getMessage() + t.toString());
       aLogger.flush();
     }
     endTime = System.currentTimeMillis();
@@ -80,3 +85,6 @@ public class PDFGeneratingProducerNode implements ProducerNode {
     return new HashSet();
   }
 }
+
+
+
index 8c2cda7..44f657a 100755 (executable)
@@ -40,8 +40,8 @@ import mir.entity.adapter.*;
 import mircoders.entity.*;
 import mircoders.storage.*;
 
-//because images are returned as a template model!
-import freemarker.template.*;
+//because images are returned as a template model!(maybe not needed after all!)
+//import freemarker.template.*;
 
 
 public class PDFPreFormattingProducerNode implements ProducerNode {
@@ -100,6 +100,7 @@ public class PDFPreFormattingProducerNode implements ProducerNode {
       if (images == null){
          HashMap row = new HashMap();
          row.put("text",((EntityContent) entity).getValue("content_data"));
+         row.put("hasImage","0");
          brokenUpContent.add(row);
       }
       if (images != null){
@@ -112,7 +113,7 @@ public class PDFPreFormattingProducerNode implements ProducerNode {
          else {
              row0.put("text",((EntityContent) entity).getValue("content_data").substring(0,numCharsInAnImagelessRow));
          }
-         
+         row0.put("hasImage","0");
          brokenUpContent.add(row0);
          currentPosition=numCharsInAnImagelessRow;
          aLogger.println("CP1 is "+ currentPosition);
@@ -146,7 +147,7 @@ public class PDFPreFormattingProducerNode implements ProducerNode {
              aLogger.println("img_height "+Float.toString(img_height));
              
              row1.put("img_src",currentImage.getValue("source"));
-
+             row1.put("hasImage","1");
              if (! outOfText){
                  try {
                      row1.put("text",((EntityContent) entity).getValue("content_data").substring(currentPosition,currentPosition+text_amount));
@@ -169,6 +170,7 @@ public class PDFPreFormattingProducerNode implements ProducerNode {
                      outOfText = true;
                          }
              }
+             row2.put("hasImage","0");
              brokenUpContent.add(row2);
              currentPosition=currentPosition+numCharsInAnImagelessRow;
              aLogger.println("CP3 is "+ currentPosition);
@@ -176,6 +178,7 @@ public class PDFPreFormattingProducerNode implements ProducerNode {
          HashMap row3 = new HashMap();
          if (! outOfText){
              row3.put("text",((EntityContent) entity).getValue("content_data").substring(currentPosition));
+             row3.put("hasImage","0");
              brokenUpContent.add(row3);
          }
          
@@ -207,3 +210,5 @@ public class PDFPreFormattingProducerNode implements ProducerNode {
 }
 
 
+
+