|  | @@ -299,18 +299,36 @@ public class BasicAclProvider implements AclProvider, InitializingBean {
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      public boolean supports(Object domainInstance) {
 | 
	
		
			
				|  |  |          if (domainInstance == null) {
 | 
	
		
			
				|  |  | +            if (logger.isDebugEnabled()) {
 | 
	
		
			
				|  |  | +                logger.debug("domainInstance is null");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              return false;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          if ((restrictSupportToClass != null)
 | 
	
		
			
				|  |  |              && !restrictSupportToClass.isAssignableFrom(
 | 
	
		
			
				|  |  |                  domainInstance.getClass())) {
 | 
	
		
			
				|  |  | +            if (logger.isDebugEnabled()) {
 | 
	
		
			
				|  |  | +                logger.debug("domainInstance not instance of "
 | 
	
		
			
				|  |  | +                    + restrictSupportToClass);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              return false;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          if (obtainIdentity(domainInstance) == null) {
 | 
	
		
			
				|  |  | +            if (logger.isDebugEnabled()) {
 | 
	
		
			
				|  |  | +                logger.debug("obtainIdentity returned null");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              return false;
 | 
	
		
			
				|  |  |          } else {
 | 
	
		
			
				|  |  | +            if (logger.isDebugEnabled()) {
 | 
	
		
			
				|  |  | +                logger.debug("obtainIdentity returned "
 | 
	
		
			
				|  |  | +                    + obtainIdentity(domainInstance));
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              return true;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
	
		
			
				|  | @@ -338,6 +356,11 @@ public class BasicAclProvider implements AclProvider, InitializingBean {
 | 
	
		
			
				|  |  |          if (domainInstance instanceof AclObjectIdentityAware) {
 | 
	
		
			
				|  |  |              AclObjectIdentityAware aclObjectIdentityAware = (AclObjectIdentityAware) domainInstance;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +            if (logger.isDebugEnabled()) {
 | 
	
		
			
				|  |  | +                logger.debug("domainInstance: " + domainInstance
 | 
	
		
			
				|  |  | +                    + " cast to AclObjectIdentityAware");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              return aclObjectIdentityAware.getAclObjectIdentity();
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -345,8 +368,23 @@ public class BasicAclProvider implements AclProvider, InitializingBean {
 | 
	
		
			
				|  |  |              Constructor constructor = defaultAclObjectIdentityClass
 | 
	
		
			
				|  |  |                  .getConstructor(new Class[] {Object.class});
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +            if (logger.isDebugEnabled()) {
 | 
	
		
			
				|  |  | +                logger.debug("domainInstance: " + domainInstance
 | 
	
		
			
				|  |  | +                    + " attempting to pass to constructor: " + constructor);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              return (AclObjectIdentity) constructor.newInstance(new Object[] {domainInstance});
 | 
	
		
			
				|  |  |          } catch (Exception ex) {
 | 
	
		
			
				|  |  | +            if (logger.isDebugEnabled()) {
 | 
	
		
			
				|  |  | +                logger.debug("Error attempting construction of "
 | 
	
		
			
				|  |  | +                    + defaultAclObjectIdentityClass + ": " + ex.getMessage(), ex);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                if (ex.getCause() != null) {
 | 
	
		
			
				|  |  | +                    logger.debug("Cause: " + ex.getCause().getMessage(),
 | 
	
		
			
				|  |  | +                        ex.getCause());
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              return null;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 |