Fix Bug 529725 corrections on ACP DAO Update and fix in ACP Utils

Change-Id: I9163125da5877490036553ee3aafd82229852535
Signed-off-by: Guillaume Garzone <guillaume.garzone@laas.fr>
diff --git a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/utils/AcpUtils.java b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/utils/AcpUtils.java
index 71f75a0..7e5bf51 100644
--- a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/utils/AcpUtils.java
+++ b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/utils/AcpUtils.java
@@ -107,9 +107,11 @@
 
 			// For each originator in ACR
 			for (String originator : rule.getAccessControlOriginators()){
-				AccessControlOriginatorEntity originatorEntity = new AccessControlOriginatorEntity(originator);
-				ruleEntity.getAccessControlOriginators().add(originatorEntity);
-			}
+				for (String splitted: originator.split(" ")) {
+					AccessControlOriginatorEntity originatorEntity = new AccessControlOriginatorEntity(splitted);
+					ruleEntity.getAccessControlOriginators().add(originatorEntity);					
+				}
+			}	
 
 			result.add(ruleEntity);
 		}
diff --git a/org.eclipse.om2m.persistence.eclipselink/src/main/java/org/eclipse/om2m/persistence/eclipselink/internal/dao/AccessControlPolicyDAO.java b/org.eclipse.om2m.persistence.eclipselink/src/main/java/org/eclipse/om2m/persistence/eclipselink/internal/dao/AccessControlPolicyDAO.java
index 8eb9afe..060ea31 100644
--- a/org.eclipse.om2m.persistence.eclipselink/src/main/java/org/eclipse/om2m/persistence/eclipselink/internal/dao/AccessControlPolicyDAO.java
+++ b/org.eclipse.om2m.persistence.eclipselink/src/main/java/org/eclipse/om2m/persistence/eclipselink/internal/dao/AccessControlPolicyDAO.java
@@ -69,6 +69,19 @@
 		DBTransactionJPAImpl transaction = (DBTransactionJPAImpl) dbTransaction;
 		List<LabelEntity> lbls = processLabels(dbTransaction, resource.getLabelsEntities());
 		resource.setLabelsEntities(lbls);
+		
+		// persist self privilege
+		for(AccessControlRuleEntity acre : resource.getSelfPrivileges()) {
+			acre.setSelfAccessControlPolicy(resource);
+			transaction.getEm().persist(acre);
+		}
+		
+		// persist privileges
+		for(AccessControlRuleEntity acre : resource.getPrivileges()) {
+			acre.setAccessControlPolicy(resource);
+			transaction.getEm().persist(acre);
+		}
+		
 		transaction.getEm().merge(resource);
 	}