Class TransactionalJdbcMutableAclService

  • All Implemented Interfaces:
    org.springframework.security.acls.model.AclService, org.springframework.security.acls.model.MutableAclService

    public class TransactionalJdbcMutableAclService
    extends org.springframework.security.acls.jdbc.JdbcMutableAclService
    Transactional JdbcMutableAclService.
    • Field Summary

      • Fields inherited from class org.springframework.security.acls.jdbc.JdbcAclService

        jdbcOperations, log
    • Constructor Summary

      Constructors 
      Constructor Description
      TransactionalJdbcMutableAclService​(DataSource dataSource, org.springframework.security.acls.jdbc.LookupStrategy lookupStrategy, org.springframework.security.acls.model.AclCache aclCache)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.springframework.security.acls.model.MutableAcl createAcl​(org.springframework.security.acls.model.ObjectIdentity objectIdentity)
      Same as JdbcMutableAclService.createAcl(ObjectIdentity) except for duplicate key checking which is handled by by the database for performance reasons.
      void deleteAcl​(org.springframework.security.acls.model.ObjectIdentity objectIdentity, boolean deleteChildren)  
      List<org.springframework.security.acls.model.ObjectIdentity> findChildren​(org.springframework.security.acls.model.ObjectIdentity parentIdentity)  
      org.springframework.security.acls.model.Acl readAclById​(org.springframework.security.acls.model.ObjectIdentity object)  
      org.springframework.security.acls.model.Acl readAclById​(org.springframework.security.acls.model.ObjectIdentity object, List<org.springframework.security.acls.model.Sid> sids)  
      Map<org.springframework.security.acls.model.ObjectIdentity,​org.springframework.security.acls.model.Acl> readAclsById​(List<org.springframework.security.acls.model.ObjectIdentity> objects)  
      Map<org.springframework.security.acls.model.ObjectIdentity,​org.springframework.security.acls.model.Acl> readAclsById​(List<org.springframework.security.acls.model.ObjectIdentity> objects, List<org.springframework.security.acls.model.Sid> sids)  
      org.springframework.security.acls.model.MutableAcl updateAcl​(org.springframework.security.acls.model.MutableAcl acl)
      Same as JdbcMutableAclService.updateAcl(MutableAcl) except that it clears all cache as a workaround for https://github.com/spring-projects/spring-security/issues/3330.
      • Methods inherited from class org.springframework.security.acls.jdbc.JdbcMutableAclService

        createEntries, createObjectIdentity, createOrRetrieveClassPrimaryKey, createOrRetrieveSidPrimaryKey, createOrRetrieveSidPrimaryKey, deleteEntries, deleteObjectIdentity, retrieveObjectIdentityPrimaryKey, setAclClassIdSupported, setClassIdentityQuery, setClassPrimaryKeyQuery, setDeleteEntryByObjectIdentityForeignKeySql, setDeleteObjectIdentityByPrimaryKeySql, setForeignKeysInDatabase, setInsertClassSql, setInsertEntrySql, setInsertObjectIdentitySql, setInsertSidSql, setObjectIdentityPrimaryKeyQuery, setSidIdentityQuery, setSidPrimaryKeyQuery, setUpdateObjectIdentity, updateObjectIdentity
      • Methods inherited from class org.springframework.security.acls.jdbc.JdbcAclService

        isAclClassIdSupported, setConversionService, setFindChildrenQuery
    • Constructor Detail

      • TransactionalJdbcMutableAclService

        public TransactionalJdbcMutableAclService​(DataSource dataSource,
                                                  org.springframework.security.acls.jdbc.LookupStrategy lookupStrategy,
                                                  org.springframework.security.acls.model.AclCache aclCache)
    • Method Detail

      • createAcl

        @Transactional
        public org.springframework.security.acls.model.MutableAcl createAcl​(org.springframework.security.acls.model.ObjectIdentity objectIdentity)
        Same as JdbcMutableAclService.createAcl(ObjectIdentity) except for duplicate key checking which is handled by by the database for performance reasons.
        Specified by:
        createAcl in interface org.springframework.security.acls.model.MutableAclService
        Overrides:
        createAcl in class org.springframework.security.acls.jdbc.JdbcMutableAclService
      • deleteAcl

        @Transactional
        public void deleteAcl​(org.springframework.security.acls.model.ObjectIdentity objectIdentity,
                              boolean deleteChildren)
        Specified by:
        deleteAcl in interface org.springframework.security.acls.model.MutableAclService
        Overrides:
        deleteAcl in class org.springframework.security.acls.jdbc.JdbcMutableAclService
      • updateAcl

        @Transactional
        public org.springframework.security.acls.model.MutableAcl updateAcl​(org.springframework.security.acls.model.MutableAcl acl)
        Same as JdbcMutableAclService.updateAcl(MutableAcl) except that it clears all cache as a workaround for https://github.com/spring-projects/spring-security/issues/3330.
        Specified by:
        updateAcl in interface org.springframework.security.acls.model.MutableAclService
        Overrides:
        updateAcl in class org.springframework.security.acls.jdbc.JdbcMutableAclService
      • findChildren

        @Transactional(readOnly=true)
        public List<org.springframework.security.acls.model.ObjectIdentity> findChildren​(org.springframework.security.acls.model.ObjectIdentity parentIdentity)
        Specified by:
        findChildren in interface org.springframework.security.acls.model.AclService
        Overrides:
        findChildren in class org.springframework.security.acls.jdbc.JdbcAclService
      • readAclById

        @Transactional(readOnly=true)
        public org.springframework.security.acls.model.Acl readAclById​(org.springframework.security.acls.model.ObjectIdentity object,
                                                                       List<org.springframework.security.acls.model.Sid> sids)
        Specified by:
        readAclById in interface org.springframework.security.acls.model.AclService
        Overrides:
        readAclById in class org.springframework.security.acls.jdbc.JdbcAclService
      • readAclById

        @Transactional(readOnly=true)
        public org.springframework.security.acls.model.Acl readAclById​(org.springframework.security.acls.model.ObjectIdentity object)
        Specified by:
        readAclById in interface org.springframework.security.acls.model.AclService
        Overrides:
        readAclById in class org.springframework.security.acls.jdbc.JdbcAclService
      • readAclsById

        @Transactional(readOnly=true)
        public Map<org.springframework.security.acls.model.ObjectIdentity,​org.springframework.security.acls.model.Acl> readAclsById​(List<org.springframework.security.acls.model.ObjectIdentity> objects)
        Specified by:
        readAclsById in interface org.springframework.security.acls.model.AclService
        Overrides:
        readAclsById in class org.springframework.security.acls.jdbc.JdbcAclService
      • readAclsById

        @Transactional(readOnly=true)
        public Map<org.springframework.security.acls.model.ObjectIdentity,​org.springframework.security.acls.model.Acl> readAclsById​(List<org.springframework.security.acls.model.ObjectIdentity> objects,
                                                                                                                                          List<org.springframework.security.acls.model.Sid> sids)
        Specified by:
        readAclsById in interface org.springframework.security.acls.model.AclService
        Overrides:
        readAclsById in class org.springframework.security.acls.jdbc.JdbcAclService