Skip to content

OACC v2.0.0-rc.4

Pre-release
Pre-release
Compare
Choose a tag to compare
@fspinnenhirn fspinnenhirn released this 30 Sep 02:17
· 177 commits to master since this release

Release date: 2015-09-29

Summary of changes in this release:

  • adds implementation strategies to handle databases that do not support recursive queries or sequence generators
  • adds SQL dialect support for HSQLDB, MySQL/MariaDB, and SQLite
  • adds SQLProfile and replaces SQLDialect as the parameter to instantiate a SQLAccessControlContext
  • fixes a bug related to getting resources by permission, which didn't take domain-inherited SYSTEM permissions into account
  • updates test suite for the aforementioned changes and bug fixes

Summary of API changes:

  • New feature Expanded database support
    • Prior to this release, OACC made use of certain database features (such as recursive CTEs to efficiently traverse the permission graph, and sequence generators to provide new IDs) that aren't supported in all database systems;
      Now OACC includes support for auto-incrementing identity columns and to allow non-recursive querying, which will allow persisting the permission graph in many more RDBMS implementations
    • Requires an instance of the new SQLProfile class instead of the SQLDialect enum when getting an AccessControlContext from the SQLAccessControlContextFactory, to account for the aforementioned database features supported by the underlying database system
    • Adds profiles for HSQLDB, MySQL and SQLite

Bug fixes:

  • fixes #16 - getResourcesByPermission() and getResourcesByPermissionAndDomain() methods did not take into account global system permissions that are inherited from a domain

Corresponding oacc-db release:
The version of the oacc-db database configuration scripts to be used with this release can be found here.