1010
1111import org .hibernate .AnnotationException ;
1212import org .hibernate .HibernateException ;
13+ import org .hibernate .cfg .CacheSettings ;
14+ import org .hibernate .cfg .JpaComplianceSettings ;
15+ import org .hibernate .cfg .ManagedBeanSettings ;
16+ import org .hibernate .cfg .SchemaToolingSettings ;
1317import org .hibernate .context .spi .MultiTenancy ;
1418import org .hibernate .type .TimeZoneStorageStrategy ;
1519import org .hibernate .annotations .CacheConcurrencyStrategy ;
6165import org .hibernate .boot .spi .MetadataSourcesContributor ;
6266import org .hibernate .cache .spi .RegionFactory ;
6367import org .hibernate .cache .spi .access .AccessType ;
64- import org .hibernate .cfg .AvailableSettings ;
6568import org .hibernate .cfg .MappingSettings ;
6669import org .hibernate .dialect .Dialect ;
6770import org .hibernate .dialect .TimeZoneSupport ;
8790import jakarta .persistence .ConstraintMode ;
8891import jakarta .persistence .SharedCacheMode ;
8992
90- import static org .hibernate .cfg .AvailableSettings .JPA_COMPLIANCE ;
91- import static org .hibernate .cfg .AvailableSettings .WRAPPER_ARRAY_HANDLING ;
92- import static org .hibernate .cfg .MappingSettings .XML_FORMAT_MAPPER_LEGACY_FORMAT ;
9393import static org .hibernate .engine .config .spi .StandardConverters .BOOLEAN ;
94+ import static org .hibernate .engine .config .spi .StandardConverters .STRING ;
9495import static org .hibernate .internal .util .NullnessHelper .coalesceSuppliedValues ;
9596import static org .hibernate .internal .util .StringHelper .nullIfEmpty ;
9697import static org .hibernate .internal .util .collections .CollectionHelper .isNotEmpty ;
@@ -447,7 +448,7 @@ public MetadataImplementor build() {
447448 sources .getHbmXmlBindings (),
448449 bootModel ,
449450 UnsupportedFeatureHandling .fromSetting (
450- configurationService .getSettings ().get ( AvailableSettings .TRANSFORM_HBM_XML_FEATURE_HANDLING ),
451+ configurationService .getSettings ().get ( MappingSettings .TRANSFORM_HBM_XML_FEATURE_HANDLING ),
451452 UnsupportedFeatureHandling .ERROR
452453 )
453454 );
@@ -505,26 +506,26 @@ public MappingDefaultsImpl(StandardServiceRegistry serviceRegistry) {
505506 implicitCatalogName = null ;
506507
507508 implicitlyQuoteIdentifiers = configService .getSetting (
508- AvailableSettings .GLOBALLY_QUOTED_IDENTIFIERS ,
509+ MappingSettings .GLOBALLY_QUOTED_IDENTIFIERS ,
509510 BOOLEAN ,
510511 false
511512 );
512513
513514 implicitCacheAccessType = configService .getSetting (
514- AvailableSettings .DEFAULT_CACHE_CONCURRENCY_STRATEGY ,
515+ CacheSettings .DEFAULT_CACHE_CONCURRENCY_STRATEGY ,
515516 value -> AccessType .fromExternalName ( value .toString () )
516517 );
517518
518519 implicitListClassification = configService .getSetting (
519- AvailableSettings .DEFAULT_LIST_SEMANTICS ,
520+ MappingSettings .DEFAULT_LIST_SEMANTICS ,
520521 value -> {
521522 final CollectionClassification classification = CollectionClassification .interpretSetting ( value );
522523 if ( classification != CollectionClassification .LIST && classification != CollectionClassification .BAG ) {
523524 throw new AnnotationException (
524525 String .format (
525526 Locale .ROOT ,
526527 "'%s' should specify either '%s' or '%s' (was '%s')" ,
527- AvailableSettings .DEFAULT_LIST_SEMANTICS ,
528+ MappingSettings .DEFAULT_LIST_SEMANTICS ,
528529 java .util .List .class .getName (),
529530 java .util .Collection .class .getName (),
530531 classification .name ()
@@ -654,45 +655,49 @@ public MetadataBuildingOptionsImpl(StandardServiceRegistry serviceRegistry) {
654655 multiTenancyEnabled = MultiTenancy .isMultiTenancyEnabled ( serviceRegistry );
655656
656657 xmlMappingEnabled = configService .getSetting (
657- AvailableSettings .XML_MAPPING_ENABLED ,
658+ MappingSettings .XML_MAPPING_ENABLED ,
658659 BOOLEAN ,
659660 true
660661 );
661- xmlFormatMapperLegacyFormat = configService .getSetting ( XML_FORMAT_MAPPER_LEGACY_FORMAT , BOOLEAN , false );
662+ xmlFormatMapperLegacyFormat = configService .getSetting (
663+ MappingSettings .XML_FORMAT_MAPPER_LEGACY_FORMAT ,
664+ BOOLEAN ,
665+ false
666+ );
662667
663668 implicitDiscriminatorsForJoinedInheritanceSupported = configService .getSetting (
664- AvailableSettings .IMPLICIT_DISCRIMINATOR_COLUMNS_FOR_JOINED_SUBCLASS ,
669+ MappingSettings .IMPLICIT_DISCRIMINATOR_COLUMNS_FOR_JOINED_SUBCLASS ,
665670 BOOLEAN ,
666671 false
667672 );
668673
669674 explicitDiscriminatorsForJoinedInheritanceSupported = !configService .getSetting (
670- AvailableSettings .IGNORE_EXPLICIT_DISCRIMINATOR_COLUMNS_FOR_JOINED_SUBCLASS ,
675+ MappingSettings .IGNORE_EXPLICIT_DISCRIMINATOR_COLUMNS_FOR_JOINED_SUBCLASS ,
671676 BOOLEAN ,
672677 false
673678 );
674679
675680 implicitlyForceDiscriminatorInSelect = configService .getSetting (
676- AvailableSettings .FORCE_DISCRIMINATOR_IN_SELECTS_BY_DEFAULT ,
681+ MappingSettings .FORCE_DISCRIMINATOR_IN_SELECTS_BY_DEFAULT ,
677682 BOOLEAN ,
678683 false
679684 );
680685
681686 sharedCacheMode = configService .getSetting (
682- AvailableSettings .JAKARTA_SHARED_CACHE_MODE ,
687+ CacheSettings .JAKARTA_SHARED_CACHE_MODE ,
683688 value -> value instanceof SharedCacheMode cacheMode
684689 ? cacheMode
685690 : SharedCacheMode .valueOf ( value .toString () ),
686691 configService .getSetting (
687- AvailableSettings .JPA_SHARED_CACHE_MODE ,
692+ CacheSettings .JPA_SHARED_CACHE_MODE ,
688693 value -> {
689694 if ( value == null ) {
690695 return null ;
691696 }
692697
693698 DeprecationLogger .DEPRECATION_LOGGER .deprecatedSetting (
694- AvailableSettings .JPA_SHARED_CACHE_MODE ,
695- AvailableSettings .JAKARTA_SHARED_CACHE_MODE
699+ CacheSettings .JPA_SHARED_CACHE_MODE ,
700+ CacheSettings .JAKARTA_SHARED_CACHE_MODE
696701 );
697702
698703 return value instanceof SharedCacheMode cacheMode
@@ -705,7 +710,7 @@ public MetadataBuildingOptionsImpl(StandardServiceRegistry serviceRegistry) {
705710
706711 final RegionFactory regionFactory = serviceRegistry .getService ( RegionFactory .class );
707712 defaultCacheAccessType = configService .getSetting (
708- AvailableSettings .DEFAULT_CACHE_CONCURRENCY_STRATEGY ,
713+ CacheSettings .DEFAULT_CACHE_CONCURRENCY_STRATEGY ,
709714 value -> {
710715 if ( value == null ) {
711716 return null ;
@@ -724,15 +729,18 @@ else if ( value instanceof AccessType accessType ) {
724729 regionFactory == null ? null : regionFactory .getDefaultAccessType ()
725730 );
726731
727- noConstraintByDefault = ConstraintMode . NO_CONSTRAINT . name (). equalsIgnoreCase ( configService .getSetting (
728- AvailableSettings .HBM2DDL_DEFAULT_CONSTRAINT_MODE ,
729- String . class ,
732+ final String defaultConstraintMode = configService .getSetting (
733+ SchemaToolingSettings .HBM2DDL_DEFAULT_CONSTRAINT_MODE ,
734+ STRING ,
730735 null
731- ) );
736+ );
737+ noConstraintByDefault =
738+ ConstraintMode .NO_CONSTRAINT .name ()
739+ .equalsIgnoreCase ( defaultConstraintMode );
732740
733741 implicitNamingStrategy = strategySelector .<ImplicitNamingStrategy >resolveDefaultableStrategy (
734742 ImplicitNamingStrategy .class ,
735- configService .getSettings ().get ( AvailableSettings .IMPLICIT_NAMING_STRATEGY ),
743+ configService .getSettings ().get ( MappingSettings .IMPLICIT_NAMING_STRATEGY ),
736744 () -> strategySelector .resolveDefaultableStrategy (
737745 ImplicitNamingStrategy .class ,
738746 "default" ,
@@ -742,13 +750,13 @@ else if ( value instanceof AccessType accessType ) {
742750
743751 physicalNamingStrategy = strategySelector .resolveDefaultableStrategy (
744752 PhysicalNamingStrategy .class ,
745- configService .getSettings ().get ( AvailableSettings .PHYSICAL_NAMING_STRATEGY ),
753+ configService .getSettings ().get ( MappingSettings .PHYSICAL_NAMING_STRATEGY ),
746754 PhysicalNamingStrategyStandardImpl .INSTANCE
747755 );
748756
749757 columnOrderingStrategy = strategySelector .<ColumnOrderingStrategy >resolveDefaultableStrategy (
750758 ColumnOrderingStrategy .class ,
751- configService .getSettings ().get ( AvailableSettings .COLUMN_ORDERING_STRATEGY ),
759+ configService .getSettings ().get ( MappingSettings .COLUMN_ORDERING_STRATEGY ),
752760 () -> strategySelector .resolveDefaultableStrategy (
753761 ColumnOrderingStrategy .class ,
754762 "default" ,
@@ -757,19 +765,19 @@ else if ( value instanceof AccessType accessType ) {
757765 );
758766
759767 useNationalizedCharacterData = configService .getSetting (
760- AvailableSettings .USE_NATIONALIZED_CHARACTER_DATA ,
768+ MappingSettings .USE_NATIONALIZED_CHARACTER_DATA ,
761769 BOOLEAN ,
762770 false
763771 );
764772
765773 schemaCharset = configService .getSetting (
766- AvailableSettings .HBM2DDL_CHARSET_NAME ,
767- String . class ,
774+ SchemaToolingSettings .HBM2DDL_CHARSET_NAME ,
775+ STRING ,
768776 null
769777 );
770778
771779 allowExtensionsInCdi = configService .getSetting (
772- AvailableSettings .ALLOW_EXTENSIONS_IN_CDI ,
780+ ManagedBeanSettings .ALLOW_EXTENSIONS_IN_CDI ,
773781 BOOLEAN ,
774782 false
775783 );
@@ -975,7 +983,7 @@ public void setBootstrapContext(BootstrapContext bootstrapContext) {
975983 private static TimeZoneStorageType resolveTimeZoneStorageStrategy (
976984 ConfigurationService configService ) {
977985 return configService .getSetting (
978- AvailableSettings .TIMEZONE_DEFAULT_STORAGE ,
986+ MappingSettings .TIMEZONE_DEFAULT_STORAGE ,
979987 value -> TimeZoneStorageType .valueOf ( value .toString () ),
980988 TimeZoneStorageType .DEFAULT
981989 );
@@ -985,7 +993,7 @@ private static WrapperArrayHandling resolveWrapperArrayHandling(
985993 ConfigurationService configService ) {
986994 return coalesceSuppliedValues (
987995 () -> configService .getSetting (
988- WRAPPER_ARRAY_HANDLING ,
996+ MappingSettings . WRAPPER_ARRAY_HANDLING ,
989997 WrapperArrayHandling ::interpretExternalSettingLeniently
990998 ),
991999 () -> resolveFallbackWrapperArrayHandling ( configService )
@@ -1005,7 +1013,7 @@ private static WrapperArrayHandling pickWrapperArrayHandling(Dialect dialect) {
10051013
10061014 private static WrapperArrayHandling resolveFallbackWrapperArrayHandling (
10071015 ConfigurationService configService ) {
1008- return configService .getSetting ( JPA_COMPLIANCE , BOOLEAN , false )
1016+ return configService .getSetting ( JpaComplianceSettings . JPA_COMPLIANCE , BOOLEAN , false )
10091017 ? WrapperArrayHandling .PICK // JPA compliance was enabled. Use PICK
10101018 : WrapperArrayHandling .DISALLOW ;
10111019 }
0 commit comments