You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2012/10/09 18:16:36 UTC

svn commit: r1396089 - in /incubator/syncope/branches/1_0_X/core/src: main/java/org/apache/syncope/core/persistence/beans/AbstractExec.java test/java/org/apache/syncope/core/persistence/dao/TaskExecTest.java

Author: ilgrosso
Date: Tue Oct  9 16:16:35 2012
New Revision: 1396089

URL: http://svn.apache.org/viewvc?rev=1396089&view=rev
Log:
[SYNCOPE-214] Replacing NULL char with newline

Modified:
    incubator/syncope/branches/1_0_X/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractExec.java
    incubator/syncope/branches/1_0_X/core/src/test/java/org/apache/syncope/core/persistence/dao/TaskExecTest.java

Modified: incubator/syncope/branches/1_0_X/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractExec.java
URL: http://svn.apache.org/viewvc/incubator/syncope/branches/1_0_X/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractExec.java?rev=1396089&r1=1396088&r2=1396089&view=diff
==============================================================================
--- incubator/syncope/branches/1_0_X/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractExec.java (original)
+++ incubator/syncope/branches/1_0_X/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractExec.java Tue Oct  9 16:16:35 2012
@@ -63,7 +63,16 @@ public abstract class AbstractExec exten
         return message;
     }
 
+    /**
+     * Set a message for this execution, taking care of replacing every null character with newline.
+     *
+     * @see https://issues.apache.org/jira/browse/SYNCOPE-214
+     * @param message the message to set for this execution
+     */
     public void setMessage(String message) {
+        if (message != null) {
+            message = message.replace('\0', '\n');
+        }
         this.message = message;
     }
 

Modified: incubator/syncope/branches/1_0_X/core/src/test/java/org/apache/syncope/core/persistence/dao/TaskExecTest.java
URL: http://svn.apache.org/viewvc/incubator/syncope/branches/1_0_X/core/src/test/java/org/apache/syncope/core/persistence/dao/TaskExecTest.java?rev=1396089&r1=1396088&r2=1396089&view=diff
==============================================================================
--- incubator/syncope/branches/1_0_X/core/src/test/java/org/apache/syncope/core/persistence/dao/TaskExecTest.java (original)
+++ incubator/syncope/branches/1_0_X/core/src/test/java/org/apache/syncope/core/persistence/dao/TaskExecTest.java Tue Oct  9 16:16:35 2012
@@ -18,6 +18,7 @@
  */
 package org.apache.syncope.core.persistence.dao;
 
+import java.util.Date;
 import static org.junit.Assert.*;
 
 import java.util.List;
@@ -30,6 +31,7 @@ import org.apache.syncope.core.persisten
 import org.apache.syncope.core.persistence.beans.SchedTask;
 import org.apache.syncope.core.persistence.beans.SyncTask;
 import org.apache.syncope.core.persistence.beans.TaskExec;
+import org.apache.syncope.types.PropagationTaskExecStatus;
 
 @Transactional
 public class TaskExecTest extends AbstractTest {
@@ -66,4 +68,27 @@ public class TaskExecTest extends Abstra
         assertNotNull(latestStarted);
         assertEquals(Long.valueOf(1L), latestStarted.getId());
     }
+
+    @Test
+    public void issueSYNCOPE214() {
+        PropagationTask task = taskDAO.find(1L);
+        assertNotNull(task);
+
+        String faultyMessage = "A faulty message";
+        faultyMessage = faultyMessage.replace('a', '\0');
+
+        TaskExec exec = new TaskExec();
+        exec.setStartDate(new Date());
+        exec.setEndDate(new Date());
+        exec.setStatus(PropagationTaskExecStatus.SUCCESS.name());
+        exec.setMessage(faultyMessage);
+
+        task.addExec(exec);
+        exec.setTask(task);
+
+        exec = taskExecDAO.save(exec);
+        assertNotNull(exec);
+
+        assertEquals(faultyMessage.replace('\0', '\n'), exec.getMessage());
+    }
 }