package mircoders.producer;
+import mir.changetracker.ChangeTracker;
+import mir.changetracker.ChangeType;
import mir.entity.Entity;
import mir.entity.adapter.EntityAdapter;
import mir.log.LoggerWrapper;
import mir.producer.ProducerExc;
import mir.util.ParameterExpander;
import mircoders.entity.EntityUploadedMedia;
+import mircoders.global.MirGlobal;
import mircoders.media.MediaHelper;
import mircoders.storage.DatabaseUploadedMedia;
data = ParameterExpander.findValueForKey( aValueMap, mediaEntityKey );
if (!(data instanceof EntityAdapter)) {
- throw new ProducerExc("MediaGeneratingProducerNode: value of '"+mediaEntityKey+"' is not an EntityAdapter, but an " + data.getClass().getName());
+ throw new ProducerExc("MediaGeneratingProducerNode: value of '" +
+ mediaEntityKey + "' is not an EntityAdapter, but an " + data.getClass().getName());
}
entity = ((EntityAdapter) data).getEntity();
- if (! (entity instanceof EntityUploadedMedia)) {
- throw new ProducerExc("MediaGeneratingProducerNode: value of '"+mediaEntityKey+"' is not an uploaded media EntityAdapter, but a " + entity.getClass().getName() + " adapter");
+ if (!(entity instanceof EntityUploadedMedia)) {
+ throw new ProducerExc("MediaGeneratingProducerNode: value of '" +
+ mediaEntityKey + "' is not an uploaded media EntityAdapter, but a " +
+ entity.getClass().getName() + " adapter");
}
uploadedMediaEntity = (EntityUploadedMedia) entity;
entity.setFieldValue("is_produced", "1");
entity.update();
- aLogger.info("media with id "+uploadedMediaEntity.getFieldValue("id") + ", mediaType " + mediaType.getFieldValue("name") + " successfully produced");
+ // Inform the Change Reporter of the change
+ StringBuffer imagepath = new StringBuffer(currentMediaHandler.getBaseStoragePath());
+ imagepath.append(entity.getFieldValue("publish_path").substring(1));
+ ChangeTracker tracker = MirGlobal.getChangeEngine().getTracker();
+ tracker.addChange(imagepath.toString(), ChangeType.MODIFICATION);
+
+ aLogger.info("media with id " + uploadedMediaEntity.getFieldValue("id") +
+ ", mediaType " + mediaType.getFieldValue("name") + " successfully produced");
}
catch (Throwable t) {
String message = "Error while generating media";