diff --git a/config/alfresco/domain/quartz.properties b/config/alfresco/domain/quartz.properties new file mode 100644 index 0000000000..3ce072ad02 --- /dev/null +++ b/config/alfresco/domain/quartz.properties @@ -0,0 +1,2 @@ +# Quartz thread settings +org.quartz.threadPool.threadPriority=3 diff --git a/config/alfresco/scheduled-jobs-context.xml b/config/alfresco/scheduled-jobs-context.xml index da3aa7db2a..ea5afdaafb 100644 --- a/config/alfresco/scheduled-jobs-context.xml +++ b/config/alfresco/scheduled-jobs-context.xml @@ -145,6 +145,9 @@ true + + classpath:alfresco/domain/quartz.properties + \ No newline at end of file diff --git a/source/java/org/alfresco/repo/security/permissions/impl/AbstractPermissionReference.java b/source/java/org/alfresco/repo/security/permissions/impl/AbstractPermissionReference.java index 77f54fe684..c13349e6ab 100644 --- a/source/java/org/alfresco/repo/security/permissions/impl/AbstractPermissionReference.java +++ b/source/java/org/alfresco/repo/security/permissions/impl/AbstractPermissionReference.java @@ -26,14 +26,15 @@ import org.alfresco.repo.security.permissions.PermissionReference; */ public abstract class AbstractPermissionReference implements PermissionReference { - + private int hashcode = 0; + public AbstractPermissionReference() { super(); } @Override - public boolean equals(Object o) + public final boolean equals(Object o) { if(this == o) { @@ -48,9 +49,13 @@ public abstract class AbstractPermissionReference implements PermissionReference } @Override - public int hashCode() + public final int hashCode() { - return getQName().hashCode() * 37 + getName().hashCode(); + if (hashcode == 0) + { + hashcode = getQName().hashCode() * 37 + getName().hashCode(); + } + return hashcode; } @Override @@ -58,6 +63,4 @@ public abstract class AbstractPermissionReference implements PermissionReference { return getQName()+ "." + getName(); } - - } diff --git a/source/java/org/alfresco/repo/security/permissions/impl/model/AbstractPermission.java b/source/java/org/alfresco/repo/security/permissions/impl/model/AbstractPermission.java index b3842ee718..0c40d2783a 100644 --- a/source/java/org/alfresco/repo/security/permissions/impl/model/AbstractPermission.java +++ b/source/java/org/alfresco/repo/security/permissions/impl/model/AbstractPermission.java @@ -108,40 +108,36 @@ public abstract class AbstractPermission extends AbstractPermissionReference imp throw new PermissionModelException("Required permission must specify parent or node for the on attribute."); } - boolean implies = false; - Attribute impliesAttribute = requiredPermissionElement.attribute(RP_IMPLIES); - if( impliesAttribute != null) - { - implies = Boolean.parseBoolean(impliesAttribute.getStringValue()); - } - - RequiredPermission rq = new RequiredPermission(qName, requiredName, on, implies); - - requiredPermissions.add(rq); + boolean implies = false; + Attribute impliesAttribute = requiredPermissionElement.attribute(RP_IMPLIES); + if (impliesAttribute != null) + { + implies = Boolean.parseBoolean(impliesAttribute.getStringValue()); + } + RequiredPermission rq = new RequiredPermission(qName, requiredName, on, implies); + + requiredPermissions.add(rq); } - } - public String getName() + public final String getName() { return name; } - public Set getRequiredPermissions() + public final Set getRequiredPermissions() { return Collections.unmodifiableSet(requiredPermissions); } - public QName getTypeQName() + public final QName getTypeQName() { return typeQName; } - - public QName getQName() + public final QName getQName() { return getTypeQName(); } - } diff --git a/source/java/org/alfresco/repo/security/permissions/impl/model/Permission.java b/source/java/org/alfresco/repo/security/permissions/impl/model/Permission.java index b3ca8e4c14..5265904c11 100644 --- a/source/java/org/alfresco/repo/security/permissions/impl/model/Permission.java +++ b/source/java/org/alfresco/repo/security/permissions/impl/model/Permission.java @@ -65,7 +65,6 @@ public class Permission extends AbstractPermission implements XMLModelInitialisa public Permission(QName typeQName) { super(typeQName); - } public void initialise(Element element, NamespacePrefixResolver nspr, PermissionModel permissionModel) @@ -130,8 +129,7 @@ public class Permission extends AbstractPermission implements XMLModelInitialisa String grantedName = grantedToGroupsElement.attributeValue(GTG_NAME); grantedToGroups.add(new PermissionReferenceImpl(qName, grantedName)); - } - + } } public AccessStatus getDefaultPermission() @@ -153,5 +151,4 @@ public class Permission extends AbstractPermission implements XMLModelInitialisa { return requiresType; } - }