Skip to content

Latest commit

 

History

History
242 lines (208 loc) · 27.3 KB

CHANGELOG.md

File metadata and controls

242 lines (208 loc) · 27.3 KB

Posmulten Hibernate changelog

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/

[Unreleased]

[0.4.0] - 2024-08-24

Changed

  • Update the posmulten library to 0.9.0 version 50

[0.3.1] - 2024-03-07

Changed

  • Upgraded posmulten dependency to 0.8.1 version 46

[0.3.0] - 2024-01-04

Changed

  • 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

[0.2.2] - 2023-08-08

Added

  • 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

Changed

  • Moved com.github.starnowski.posmulten.hibernate.hibernate5.Properties type to com.github.starnowski.posmulten.hibernate.common package 39

Fixed

  • 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

[0.2.1] - 2023-07-26

Changed

  • Fixed SharedSchemaConnectionProviderInitiatorAdapter, invoke DriverManagerConnectionProviderImpl#injectServices(ServiceRegistryImplementor) method 34

[0.2.0] - 2023-07-23

Changed

  • 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

Added

  • 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

[0.1.1] - 2022-06-16

Added

  • 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

Fixed

  • 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

[0.1.0] - 2022-05-15

Added

  • 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

    • Added component com.github.starnowski.posmulten.hibernate.core.context.DefaultSharedSchemaContextBuilderProviderInitiator 7
    • Added component com.github.starnowski.posmulten.hibernate.core.context.LightweightDefaultSharedSchemaContextBuilderProvider 7