All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
https://keepachangelog.com/en/1.0.0/ https://www.markdownguide.org/basic-syntax/
- Update the posmulten library to 0.9.0 version 50
- Upgraded posmulten dependency to 0.8.1 version 46
- Upgraded Hibernate version to 6.4 for hibernate6 module 43
- Type com.github.starnowski.posmulten.hibernate.hibernate6.CurrentTenantIdentifierResolverImpl implements org.hibernate.context.spi.CurrentTenantIdentifierResolver<java.lang.String> interface 43
- Type com.github.starnowski.posmulten.hibernate.hibernate6.connection.SharedSchemaMultiTenantConnectionProvider implements org.hibernate.engine.jdbc.connections.spi.AbstractMultiTenantConnectionProvider<java.lang.String> interface 43
- Added DEFAULT_TENANT_ID constant in com.github.starnowski.posmulten.hibernate.common.Properties type 39
- Added com.github.starnowski.posmulten.hibernate.common.context.HibernateContext type 39
- Added com.github.starnowski.posmulten.hibernate.common.context.HibernateContextSupplier type 39
- Added com.github.starnowski.posmulten.hibernate.common.context.PropertiesHibernateContextFactory type 39
- Setting default tenant in method com.github.starnowski.posmulten.hibernate.hibernate5.connections.SharedSchemaMultiTenantConnectionProvider#getAnyConnection() 39
- Added com.github.starnowski.posmulten.hibernate.hibernate5.context.Hibernate5ContextSupplier type 39
- Added com.github.starnowski.posmulten.hibernate.hibernate5.context.Hibernate5ContextSupplierInitiator type 39
- Setting default tenant in method com.github.starnowski.posmulten.hibernate.hibernate6.connection.SharedSchemaMultiTenantConnectionProvider#getAnyConnection() 39
- Added com.github.starnowski.posmulten.hibernate.hibernate6.context.Hibernate6ContextSupplier type 39
- Added com.github.starnowski.posmulten.hibernate.hibernate6.context.Hibernate6ContextSupplierInitiator type 39
- Moved com.github.starnowski.posmulten.hibernate.hibernate5.Properties type to com.github.starnowski.posmulten.hibernate.common package 39
- Closing connection by ConnectionProvider object in method com.github.starnowski.posmulten.hibernate.hibernate5.connections.SharedSchemaMultiTenantConnectionProvider#releaseAnyConnection(java.sql.Connection) 37
- Closing connection by ConnectionProvider object in method com.github.starnowski.posmulten.hibernate.hibernate5.connections.SharedSchemaMultiTenantConnectionProvider#releaseConnection(java.lang.String, java.sql.Connection) 37
- Closing connection by ConnectionProvider object in method com.github.starnowski.posmulten.hibernate.hibernate6.connection.SharedSchemaMultiTenantConnectionProvider#releaseAnyConnection(java.sql.Connection) 37
- Closing connection by ConnectionProvider object in method com.github.starnowski.posmulten.hibernate.hibernate6.connection.SharedSchemaMultiTenantConnectionProvider#releaseConnection(java.lang.String, java.sql.Connection) 37
- Fixed SharedSchemaConnectionProviderInitiatorAdapter, invoke DriverManagerConnectionProviderImpl#injectServices(ServiceRegistryImplementor) method 34
- Hibernate 6 support 29
- Move type com.github.starnowski.posmulten.hibernate.core.TenantTable to package com.github.starnowski.posmulten.hibernate.common29
- Move type com.github.starnowski.posmulten.hibernate.core.context.CurrentTenantContext to package com.github.starnowski.posmulten.hibernate.common.context29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.TenantTableProperties to package com.github.starnowski.posmulten.hibernate.common.context.metadata.tables29
- Move type com.github.starnowski.posmulten.hibernate.core.util.NameUtils to package com.github.starnowski.posmulten.hibernate.hibernate5.util29
- Move type com.github.starnowski.posmulten.hibernate.core.CurrentTenantIdentifierResolverImpl to package com.github.starnowski.posmulten.hibernate.hibernate529
- Move type com.github.starnowski.posmulten.hibernate.core.PosmultenIntegrator to package com.github.starnowski.posmulten.hibernate.hibernate529
- Move type com.github.starnowski.posmulten.hibernate.core.Properties to package com.github.starnowski.posmulten.hibernate.hibernate529
- Move type com.github.starnowski.posmulten.hibernate.core.connections.CurrentTenantPreparedStatementSetterForLong to package com.github.starnowski.posmulten.hibernate.hibernate5.connections29
- Move type com.github.starnowski.posmulten.hibernate.core.connections.CurrentTenantPreparedStatementSetterForString to package com.github.starnowski.posmulten.hibernate.hibernate5.connections29
- Move type com.github.starnowski.posmulten.hibernate.core.connections.CurrentTenantPreparedStatementSetterInitiator to package com.github.starnowski.posmulten.hibernate.hibernate5.connections29
- Move type com.github.starnowski.posmulten.hibernate.core.connections.ICurrentTenantPreparedStatementSetter to package com.github.starnowski.posmulten.hibernate.hibernate5.connections29
- Move type com.github.starnowski.posmulten.hibernate.core.connections.SharedSchemaConnectionProviderInitiatorAdapter to package com.github.starnowski.posmulten.hibernate.hibernate5.connections29
- Move type com.github.starnowski.posmulten.hibernate.core.connections.SharedSchemaMultiTenantConnectionProvider to package com.github.starnowski.posmulten.hibernate.hibernate5.connections29
- Move type com.github.starnowski.posmulten.hibernate.core.context.DefaultSharedSchemaContextBuilderMetadataEnricherProvider to package com.github.starnowski.posmulten.hibernate.hibernate5.context29
- Move type com.github.starnowski.posmulten.hibernate.core.context.DefaultSharedSchemaContextBuilderMetadataEnricherProviderInitiator to package com.github.starnowski.posmulten.hibernate.hibernate5.context29
- Move type com.github.starnowski.posmulten.hibernate.core.context.DefaultSharedSchemaContextBuilderProvider to package com.github.starnowski.posmulten.hibernate.hibernate5.context29
- Move type com.github.starnowski.posmulten.hibernate.core.context.DefaultSharedSchemaContextBuilderProviderInitiator to package com.github.starnowski.posmulten.hibernate.hibernate5.context29
- Move type com.github.starnowski.posmulten.hibernate.core.context.IDefaultSharedSchemaContextBuilderMetadataEnricher to package com.github.starnowski.posmulten.hibernate.hibernate5.context29
- Move type com.github.starnowski.posmulten.hibernate.core.context.IDefaultSharedSchemaContextBuilderMetadataEnricherProvider to package com.github.starnowski.posmulten.hibernate.hibernate5.context29
- Move type com.github.starnowski.posmulten.hibernate.core.context.IDefaultSharedSchemaContextBuilderProvider to package com.github.starnowski.posmulten.hibernate.hibernate5.context29
- Move type com.github.starnowski.posmulten.hibernate.core.context.IDefaultSharedSchemaContextBuilderTableMetadataEnricher to package com.github.starnowski.posmulten.hibernate.hibernate5.context29
- Move type com.github.starnowski.posmulten.hibernate.core.context.LightweightDefaultSharedSchemaContextBuilderProvider to package com.github.starnowski.posmulten.hibernate.hibernate5.context29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.PosmultenUtilContext to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.PosmultenUtilContextInitiator to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.enrichers.DefaultSharedSchemaContextBuilderMetadataEnricher to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.enrichers29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.CollectionResolver to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.tables29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.ForeignKeySharedSchemaContextBuilderTableMetadataEnricherHelper to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.tables29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.NameGenerator to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.tables29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.PersistentClassResolver to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.tables29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.RLSPolicyTableHelper to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.tables29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.TableUtils to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.tables29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.TenantTablePropertiesResolver to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.tables29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.enrichers.CheckerFunctionNamesSharedSchemaContextBuilderTableMetadataEnricher to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.tables.enrichers29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.enrichers.ForeignKeySharedSchemaContextBuilderTableMetadataEnricher to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.tables.enrichers29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.enrichers.JoinTablesDefaultSharedSchemaContextBuilderTableMetadataEnricher to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.tables.enrichers29
- Move type com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.enrichers.RLSPolicyDefaultSharedSchemaContextBuilderTableMetadataEnricher to package com.github.starnowski.posmulten.hibernate.hibernate5.context.metadata.tables.enrichers29
- Move type com.github.starnowski.posmulten.hibernate.core.schema.PosmultenSchemaManagementTool to package com.github.starnowski.posmulten.hibernate.hibernate5.schema29
- Move type com.github.starnowski.posmulten.hibernate.core.schema.SchemaCreatorStrategyContext to package com.github.starnowski.posmulten.hibernate.hibernate5.schema29
- Move type com.github.starnowski.posmulten.hibernate.core.schema.SchemaCreatorStrategyContextInitiator to package com.github.starnowski.posmulten.hibernate.hibernate5.schema29
- Move type com.github.starnowski.posmulten.hibernate.core.schema.SchemaCreatorWrapper to package com.github.starnowski.posmulten.hibernate.hibernate5.schema29
- Move type com.github.starnowski.posmulten.hibernate.core.schema.SharedSchemaContextSourceInput to package com.github.starnowski.posmulten.hibernate.hibernate5.schema29
- Move type com.github.starnowski.posmulten.hibernate.core.schema.SourceDescriptorFactory to package com.github.starnowski.posmulten.hibernate.hibernate5.schema29
- Move type com.github.starnowski.posmulten.hibernate.core.schema.SourceDescriptorInitiator to package com.github.starnowski.posmulten.hibernate.hibernate5.schema29
- Move type com.github.starnowski.posmulten.hibernate.core.schema.strategy.ISchemaCreatorStrategy to package com.github.starnowski.posmulten.hibernate.hibernate5.schema.strategy29
- Move type com.github.starnowski.posmulten.hibernate.core.schema.strategy.MetadataSchemaCreatorStrategy to package com.github.starnowski.posmulten.hibernate.hibernate5.schema.strategy29
- Hibernate 6 support 29
- Added type com.github.starnowski.posmulten.hibernate.hibernate6.CurrentTenantIdentifierResolverImpl29
- Added type com.github.starnowski.posmulten.hibernate.hibernate6.connection.SharedSchemaConnectionProviderInitiatorAdapter29
- Added type com.github.starnowski.posmulten.hibernate.hibernate6.connection.SharedSchemaMultiTenantConnectionProvider29
- Added type com.github.starnowski.posmulten.hibernate.hibernate6.context.SharedSchemaContextProvider29
- Added type com.github.starnowski.posmulten.hibernate.hibernate6.context.SharedSchemaContextProviderInitiator29
- Added method com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.TableUtils#isAnyCollectionComponentIsTenantTable(org.hibernate.mapping.Collection, com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.TenantTablePropertiesResolver, org.hibernate.mappingTable, org.hibernate.boot.Metadata) 23
- Added method com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.TenantTablePropertiesResolver#resolve(java.lang.Class, org.hibernate.mapping.Table, org.hibernate.boot.Metadata) 23
- Create RLS policy for JoinTable only when at least on of reference table is tenant aware table
23
- Fixed method com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.enrichers.JoinTablesDefaultSharedSchemaContextBuilderTableMetadataEnricher#enrich(com.github.starnowski.posmulten.postgresql.core.context.DefaultSharedSchemaContextBuilder, org.hibernate.boot.Metadata, org.hibernate.mapping.Table) 23
- Fixed extracting mapping of primary keys and its types in method com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.TenantTablePropertiesResolver#resolve(org.hibernate.mapping.PersistentClass, org.hibernate.mapping.Table, org.hibernate.boot.Metadata) 23
-
Add strategy component that sets tenant value for prepared parameter in com.github.starnowski.posmulten.hibernate.core.connections.SharedSchemaMultiTenantConnectionProvider#getConnection(String tenant) method 6
- Added component com.github.starnowski.posmulten.hibernate.core.connections.CurrentTenantPreparedStatementSetterForLong 6
- Added component com.github.starnowski.posmulten.hibernate.core.connections.CurrentTenantPreparedStatementSetterForString 6
- Added component com.github.starnowski.posmulten.hibernate.core.connections.CurrentTenantPreparedStatementSetterInitiator 6
- Added component com.github.starnowski.posmulten.hibernate.core.connections.ICurrentTenantPreparedStatementSetter 6
-
Create maven project 1
- Added component com.github.starnowski.posmulten.hibernate.core.connections.SharedSchemaConnectionProviderInitiatorAdapter 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.enrichers.DefaultSharedSchemaContextBuilderMetadataEnricher 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.enrichers.CheckerFunctionNamesSharedSchemaContextBuilderTableMetadataEnricher 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.enrichers.ForeignKeySharedSchemaContextBuilderTableMetadataEnricher 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.enrichers.JoinTablesDefaultSharedSchemaContextBuilderTableMetadataEnricher 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.enrichers.RLSPolicyDefaultSharedSchemaContextBuilderTableMetadataEnricher 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.CollectionResolver 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.ForeignKeySharedSchemaContextBuilderTableMetadataEnricherHelper 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.NameGenerator 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.PersistentClassResolver 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.TenantTableProperties 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.TenantTablePropertiesResolver 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.PosmultenUtilContext 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.PosmultenUtilContextInitiator 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.DefaultSharedSchemaContextBuilderMetadataEnricherProvider 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.DefaultSharedSchemaContextBuilderMetadataEnricherProviderInitiator 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.DefaultSharedSchemaContextBuilderProvider 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.IDefaultSharedSchemaContextBuilderMetadataEnricher 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.IDefaultSharedSchemaContextBuilderMetadataEnricherProvider 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.IDefaultSharedSchemaContextBuilderProvider 1
- Added component com.github.starnowski.posmulten.hibernate.core.context.IDefaultSharedSchemaContextBuilderTableMetadataEnricher 1
- Added component com.github.starnowski.posmulten.hibernate.core.schema.strategy.ISchemaCreatorStrategy 1
- Added component com.github.starnowski.posmulten.hibernate.core.schema.strategy.MetadataSchemaCreatorStrategy 1
- Added component com.github.starnowski.posmulten.hibernate.core.schema.PosmultenSchemaManagementTool 1
- Added component com.github.starnowski.posmulten.hibernate.core.schema.SchemaCreatorStrategyContext 1
- Added component com.github.starnowski.posmulten.hibernate.core.schema.SchemaCreatorStrategyContextInitiator 1
- Added component com.github.starnowski.posmulten.hibernate.core.schema.SchemaCreatorWrapper 1
- Added component com.github.starnowski.posmulten.hibernate.core.schema.SharedSchemaContextSourceInput 1
- Added component com.github.starnowski.posmulten.hibernate.core.CurrentTenantIdentifierResolverImpl 1
- Added component com.github.starnowski.posmulten.hibernate.core.Properties 1
- Added component com.github.starnowski.posmulten.hibernate.core.TenantTable 1
-
Add implementation of MultiTenantConnectionProvider type 4
- Added component com.github.starnowski.posmulten.hibernate.core.connections.SharedSchemaMultiTenantConnectionProvider 4
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.RLSPolicyTableHelper 4
- Added component com.github.starnowski.posmulten.hibernate.core.context.metadata.tables.TableUtils 4
- Added component com.github.starnowski.posmulten.hibernate.core.context.CurrentTenantContext 4
-
Added provider for DefaultSharedSchemaContextBuilder component without any redundant configuration 7