From 3c71f60e4d45e906603db6cf2ab185e7c9b3c9e6 Mon Sep 17 00:00:00 2001 From: tosmers Date: Wed, 22 Mar 2017 21:02:13 +0000 Subject: [PATCH] [UPDATE] - adds id generation for ng class of permission git-svn-id: https://svn.libreccm.org/ccm/trunk@4638 8810af33-2d31-482b-a856-94f89814c4df --- .../portation/AbstractMarshaller.java | 14 ++++++++----- .../core/security/PermissionIdGenerator.java | 21 +++++++++++++++---- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/ccm-core/src/com/arsdigita/portation/AbstractMarshaller.java b/ccm-core/src/com/arsdigita/portation/AbstractMarshaller.java index 76c6ee5d4..6c6eaf198 100644 --- a/ccm-core/src/com/arsdigita/portation/AbstractMarshaller.java +++ b/ccm-core/src/com/arsdigita/portation/AbstractMarshaller.java @@ -98,9 +98,12 @@ public abstract class AbstractMarshaller

{ line = xmlMapper.writeValueAsString(object); //log.info(line); } catch (IOException e) { - log.error(String.format("Unable to write objetct " + - "of %s as XML string with name %s.", - object.getClass(), file.getName()), e); + log.error(String.format( + "Unable to write objetct of %s as XML " + + "string with name %s in file %s.", + object.getClass(), + object.toString(), + file.getName()), e); } break; @@ -113,8 +116,9 @@ public abstract class AbstractMarshaller

{ fileWriter.write(line); fileWriter.write(System.getProperty("line.separator")); } catch (IOException e) { - log.error(String.format("Unable to write to file with the" + - " name %s.", file.getName())); + log.error(String.format( + "Unable to write to file with the name %s.", + file.getName())); } } } diff --git a/ccm-core/src/com/arsdigita/portation/modules/core/security/PermissionIdGenerator.java b/ccm-core/src/com/arsdigita/portation/modules/core/security/PermissionIdGenerator.java index 9243783eb..fc9fcec3b 100644 --- a/ccm-core/src/com/arsdigita/portation/modules/core/security/PermissionIdGenerator.java +++ b/ccm-core/src/com/arsdigita/portation/modules/core/security/PermissionIdGenerator.java @@ -62,9 +62,22 @@ public class PermissionIdGenerator extends ObjectIdGenerator { final Permission permission = (Permission) forPojo; - return String.format("{%s}{%s}{%s}", - permission.getGrantedPrivilege(), - permission.getObject(), - permission.getGrantee()); + String id = permission.getGrantedPrivilege() + + permission.getPermissionId(); + boolean a = false, b = false; + if (permission.getObject() != null) { + id += permission.getObject().getUuid(); + a = true; + } + if (permission.getGrantee() != null) { + id += permission.getGrantee().getName(); + b = true; + } + +// if (!(a || b)) { +// throw new IllegalStateException(); +// } + + return id; } }