. Added Quartz Scheduler init properties file - to configure lower priority threads by default

. Minor Permissions performance improvements (2-3%)

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@2046 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Kevin Roast 2005-12-19 16:20:16 +00:00
parent facd631cce
commit 77a19b56f7
5 changed files with 28 additions and 27 deletions

View File

@ -0,0 +1,2 @@
# Quartz thread settings
org.quartz.threadPool.threadPriority=3

View File

@ -145,6 +145,9 @@
<property name="waitForJobsToCompleteOnShutdown"> <property name="waitForJobsToCompleteOnShutdown">
<value>true</value> <value>true</value>
</property> </property>
<property name="configLocation">
<value>classpath:alfresco/domain/quartz.properties</value>
</property>
</bean> </bean>
</beans> </beans>

View File

@ -26,14 +26,15 @@ import org.alfresco.repo.security.permissions.PermissionReference;
*/ */
public abstract class AbstractPermissionReference implements PermissionReference public abstract class AbstractPermissionReference implements PermissionReference
{ {
private int hashcode = 0;
public AbstractPermissionReference() public AbstractPermissionReference()
{ {
super(); super();
} }
@Override @Override
public boolean equals(Object o) public final boolean equals(Object o)
{ {
if(this == o) if(this == o)
{ {
@ -48,9 +49,13 @@ public abstract class AbstractPermissionReference implements PermissionReference
} }
@Override @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 @Override
@ -58,6 +63,4 @@ public abstract class AbstractPermissionReference implements PermissionReference
{ {
return getQName()+ "." + getName(); return getQName()+ "." + getName();
} }
} }

View File

@ -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."); throw new PermissionModelException("Required permission must specify parent or node for the on attribute.");
} }
boolean implies = false; boolean implies = false;
Attribute impliesAttribute = requiredPermissionElement.attribute(RP_IMPLIES); Attribute impliesAttribute = requiredPermissionElement.attribute(RP_IMPLIES);
if( impliesAttribute != null) if (impliesAttribute != null)
{ {
implies = Boolean.parseBoolean(impliesAttribute.getStringValue()); implies = Boolean.parseBoolean(impliesAttribute.getStringValue());
} }
RequiredPermission rq = new RequiredPermission(qName, requiredName, on, implies);
requiredPermissions.add(rq);
RequiredPermission rq = new RequiredPermission(qName, requiredName, on, implies);
requiredPermissions.add(rq);
} }
} }
public String getName() public final String getName()
{ {
return name; return name;
} }
public Set<RequiredPermission> getRequiredPermissions() public final Set<RequiredPermission> getRequiredPermissions()
{ {
return Collections.unmodifiableSet(requiredPermissions); return Collections.unmodifiableSet(requiredPermissions);
} }
public QName getTypeQName() public final QName getTypeQName()
{ {
return typeQName; return typeQName;
} }
public final QName getQName()
public QName getQName()
{ {
return getTypeQName(); return getTypeQName();
} }
} }

View File

@ -65,7 +65,6 @@ public class Permission extends AbstractPermission implements XMLModelInitialisa
public Permission(QName typeQName) public Permission(QName typeQName)
{ {
super(typeQName); super(typeQName);
} }
public void initialise(Element element, NamespacePrefixResolver nspr, PermissionModel permissionModel) 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); String grantedName = grantedToGroupsElement.attributeValue(GTG_NAME);
grantedToGroups.add(new PermissionReferenceImpl(qName, grantedName)); grantedToGroups.add(new PermissionReferenceImpl(qName, grantedName));
} }
} }
public AccessStatus getDefaultPermission() public AccessStatus getDefaultPermission()
@ -153,5 +151,4 @@ public class Permission extends AbstractPermission implements XMLModelInitialisa
{ {
return requiresType; return requiresType;
} }
} }