fix of human readable size and media info
[mir.git] / source / mir / producer / EntityModifyingProducerNode.java
index 766565a..87a7d66 100755 (executable)
 
 package mir.producer;
 
+import java.util.Date;
 import java.util.HashMap;
 import java.util.Iterator;
-import java.util.*;
+import java.util.Map;
 
 import mir.entity.Entity;
 import mir.entity.adapter.EntityAdapter;
 import mir.entity.adapter.EntityAdapterModel;
 import mir.log.LoggerWrapper;
+import mir.util.JDBCStringRoutines;
 import mir.util.ParameterExpander;
-import mir.util.*;
 
 
-public class EntityModifyingProducerNode implements ProducerNode {
+public class EntityModifyingProducerNode extends AbstractProducerNode {
   private String entityExpression;
   private String definition;
   private Map fields;
@@ -84,16 +85,12 @@ public class EntityModifyingProducerNode implements ProducerNode {
 
           Object value = ParameterExpander.evaluateExpression(aValueMap, valueExpression);
 
-          aLogger.debug("  setting " + entityField + " to " + valueExpression+ " ("+ value + ")");
-
-//          if (value==null)
-//            entity.setValueForProperty(entityField, "");
           if (value instanceof String)
-            entity.setValueForProperty(entityField, (String) value);
+            entity.setFieldValue(entityField, (String) value);
           else if (value instanceof EntityAdapter)
-            entity.setValueForProperty(entityField, ((EntityAdapter) value).getEntity().getId());
+            entity.setFieldValue(entityField, ((EntityAdapter) value).getEntity().getId());
           else if (value instanceof Date) {
-            entity.setValueForProperty(entityField, JDBCStringRoutines.formatDate((Date) value));
+            entity.setFieldValue(entityField, JDBCStringRoutines.formatDate((Date) value));
           }
           else
             aLogger.warn("Can't set value " + value + " for field " + entityField);
@@ -108,8 +105,7 @@ public class EntityModifyingProducerNode implements ProducerNode {
         throw new ProducerExc( entityExpression + " does not evaluate to an entity");
     }
     catch (Throwable t) {
-      aLogger.error("Error while performing entity modification operation: " + t.getMessage());
-      t.printStackTrace(aLogger.asPrintWriter(aLogger.DEBUG_MESSAGE));
+      aLogger.error("Error while performing entity modification operation: " + t.getMessage(), t);
 
       throw new ProducerFailure(t.getMessage(), t);
     }