HHH-11263 - Deprecate o.h.type.TypeResolver

This commit is contained in:
Andrea Boriero 2018-03-22 13:35:22 +00:00 committed by Steve Ebersole
parent ce36b3bb08
commit 170caf0076
10 changed files with 83 additions and 10 deletions

View File

@ -105,6 +105,7 @@ import org.hibernate.mapping.SimpleValue;
import org.hibernate.mapping.Table; import org.hibernate.mapping.Table;
import org.hibernate.mapping.UniqueKey; import org.hibernate.mapping.UniqueKey;
import org.hibernate.query.spi.NamedQueryRepository; import org.hibernate.query.spi.NamedQueryRepository;
import org.hibernate.type.Type;
import org.hibernate.type.TypeResolver; import org.hibernate.type.TypeResolver;
import org.hibernate.type.spi.TypeConfiguration; import org.hibernate.type.spi.TypeConfiguration;
@ -209,7 +210,14 @@ public class InFlightMetadataCollectorImpl implements InFlightMetadataCollector
return bootstrapContext.getTypeConfiguration(); return bootstrapContext.getTypeConfiguration();
} }
@Override /**
* Retrieve the {@link Type} resolver associated with this factory.
*
* @return The type resolver
*
* @deprecated (since 5.3) No replacement, access to and handling of Types will be much different in 6.0
*/
@Deprecated
public TypeResolver getTypeResolver() { public TypeResolver getTypeResolver() {
return bootstrapContext.getTypeConfiguration().getTypeResolver(); return bootstrapContext.getTypeConfiguration().getTypeResolver();
} }

View File

@ -49,6 +49,7 @@ import org.hibernate.mapping.Property;
import org.hibernate.mapping.Table; import org.hibernate.mapping.Table;
import org.hibernate.procedure.ProcedureCallMemento; import org.hibernate.procedure.ProcedureCallMemento;
import org.hibernate.query.spi.NamedQueryRepository; import org.hibernate.query.spi.NamedQueryRepository;
import org.hibernate.type.Type;
import org.hibernate.type.TypeResolver; import org.hibernate.type.TypeResolver;
import org.hibernate.type.spi.TypeConfiguration; import org.hibernate.type.spi.TypeConfiguration;
@ -136,7 +137,14 @@ public class MetadataImpl implements MetadataImplementor, Serializable {
return bootstrapContext.getTypeConfiguration(); return bootstrapContext.getTypeConfiguration();
} }
@Override /**
* Retrieve the {@link Type} resolver associated with this factory.
*
* @return The type resolver
*
* @deprecated (since 5.3) No replacement, access to and handling of Types will be much different in 6.0
*/
@Deprecated
public TypeResolver getTypeResolver() { public TypeResolver getTypeResolver() {
return bootstrapContext.getTypeConfiguration().getTypeResolver(); return bootstrapContext.getTypeConfiguration().getTypeResolver();
} }

View File

@ -38,9 +38,6 @@ import org.hibernate.dialect.Dialect;
import org.hibernate.engine.jdbc.spi.JdbcServices; import org.hibernate.engine.jdbc.spi.JdbcServices;
import org.hibernate.type.BasicType; import org.hibernate.type.BasicType;
import org.hibernate.type.BasicTypeRegistry; import org.hibernate.type.BasicTypeRegistry;
import org.hibernate.type.TypeFactory;
import org.hibernate.type.TypeResolver;
import org.hibernate.type.spi.TypeConfiguration;
import org.hibernate.usertype.CompositeUserType; import org.hibernate.usertype.CompositeUserType;
import org.hibernate.usertype.UserType; import org.hibernate.usertype.UserType;

View File

@ -214,7 +214,14 @@ public abstract class AbstractDelegatingMetadata implements MetadataImplementor
return delegate.getTypeConfiguration(); return delegate.getTypeConfiguration();
} }
@Override /**
* Retrieve the {@link Type} resolver associated with this factory.
*
* @return The type resolver
*
* @deprecated (since 5.3) No replacement, access to and handling of Types will be much different in 6.0
*/
@Deprecated
public TypeResolver getTypeResolver() { public TypeResolver getTypeResolver() {
return delegate.getTypeResolver(); return delegate.getTypeResolver();
} }

View File

@ -237,9 +237,11 @@ public interface MetadataBuildingOptions {
*/ */
List<MetadataSourceType> getSourceProcessOrdering(); List<MetadataSourceType> getSourceProcessOrdering();
default String getSchemaCharset() { default String getSchemaCharset() {
return null; return null;
}/** }
/**
* Access to any SQL functions explicitly registered with the MetadataBuilder. This * Access to any SQL functions explicitly registered with the MetadataBuilder. This
* does not include Dialect defined functions, etc. * does not include Dialect defined functions, etc.
* *

View File

@ -194,7 +194,14 @@ public class SessionFactoryDelegatingImpl implements SessionFactoryImplementor,
return delegate.getTypeHelper(); return delegate.getTypeHelper();
} }
@Override /**
* Retrieve the {@link Type} resolver associated with this factory.
*
* @return The type resolver
*
* @deprecated (since 5.3) No replacement, access to and handling of Types will be much different in 6.0
*/
@Deprecated
public TypeResolver getTypeResolver() { public TypeResolver getTypeResolver() {
return delegate.getTypeResolver(); return delegate.getTypeResolver();
} }

View File

@ -14,6 +14,7 @@ import org.hibernate.type.CompositeType;
import org.hibernate.type.LiteralType; import org.hibernate.type.LiteralType;
import org.hibernate.type.Type; import org.hibernate.type.Type;
import org.hibernate.type.TypeResolver; import org.hibernate.type.TypeResolver;
import org.hibernate.type.spi.TypeConfiguration;
/** /**
* Builds the where clause that wraps the identifiers to be updated/deleted. * Builds the where clause that wraps the identifiers to be updated/deleted.
@ -32,6 +33,23 @@ public abstract class IdsClauseBuilder {
private final List<Object[]> ids; private final List<Object[]> ids;
protected IdsClauseBuilder(
Dialect dialect,
Type identifierType,
TypeConfiguration typeConfiguration,
String[] columns,
List<Object[]> ids) {
this.dialect = dialect;
this.identifierType = identifierType;
this.typeResolver = typeConfiguration.getTypeResolver();
this.columns = columns;
this.ids = ids;
}
/**
* @deprecated Use {{@link IdsClauseBuilder#IdsClauseBuilder(Dialect, Type, TypeConfiguration, String[], List)}} instead.
*/
@Deprecated
protected IdsClauseBuilder( protected IdsClauseBuilder(
Dialect dialect, Dialect dialect,
Type identifierType, Type identifierType,
@ -49,6 +67,14 @@ public abstract class IdsClauseBuilder {
return identifierType; return identifierType;
} }
/**
* Retrieve the {@link Type} resolver associated with this factory.
*
* @return The type resolver
*
* @deprecated (since 5.3) No replacement, access to and handling of Types will be much different in 6.0
*/
@Deprecated
public TypeResolver getTypeResolver() { public TypeResolver getTypeResolver() {
return typeResolver; return typeResolver;
} }

View File

@ -554,6 +554,14 @@ public final class SessionFactoryImpl implements SessionFactoryImplementor {
return null; return null;
} }
/**
* Retrieve the {@link Type} resolver associated with this factory.
*
* @return The type resolver
*
* @deprecated (since 5.3) No replacement, access to and handling of Types will be much different in 6.0
*/
@Deprecated
public TypeResolver getTypeResolver() { public TypeResolver getTypeResolver() {
return typeResolver; return typeResolver;
} }

View File

@ -19,7 +19,10 @@ import org.hibernate.usertype.UserType;
* Acts as the contract for getting types and as the mediator between {@link BasicTypeRegistry} and {@link TypeFactory}. * Acts as the contract for getting types and as the mediator between {@link BasicTypeRegistry} and {@link TypeFactory}.
* *
* @author Steve Ebersole * @author Steve Ebersole
*
* @deprecated (since 5.3) No replacement, access to and handling of Types will be much different in 6.0
*/ */
@Deprecated
public class TypeResolver implements Serializable { public class TypeResolver implements Serializable {
private final BasicTypeRegistry basicTypeRegistry; private final BasicTypeRegistry basicTypeRegistry;
private final TypeFactory typeFactory; private final TypeFactory typeFactory;

View File

@ -19,6 +19,7 @@ import org.hibernate.internal.CoreMessageLogger;
import org.hibernate.internal.SessionFactoryImpl; import org.hibernate.internal.SessionFactoryImpl;
import org.hibernate.internal.SessionFactoryRegistry; import org.hibernate.internal.SessionFactoryRegistry;
import org.hibernate.type.BasicTypeRegistry; import org.hibernate.type.BasicTypeRegistry;
import org.hibernate.type.Type;
import org.hibernate.type.TypeFactory; import org.hibernate.type.TypeFactory;
import org.hibernate.type.TypeResolver; import org.hibernate.type.TypeResolver;
@ -69,8 +70,14 @@ public class TypeConfiguration implements SessionFactoryObserver, Serializable {
/** /**
* Temporarily needed to support deprecations * Temporarily needed to support deprecations
* @deprecated *
* Retrieve the {@link Type} resolver associated with this factory.
*
* @return The type resolver
*
* @deprecated (since 5.3) No replacement, access to and handling of Types will be much different in 6.0
*/ */
@Deprecated
public TypeResolver getTypeResolver(){ public TypeResolver getTypeResolver(){
return typeResolver; return typeResolver;
} }