/
MutableDynamicParameterizedType.java
36 lines (30 loc) · 1.37 KB
/
MutableDynamicParameterizedType.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package com.vladmihalcea.hibernate.type;
import com.vladmihalcea.hibernate.type.util.Configuration;
import org.hibernate.type.descriptor.java.JavaType;
import org.hibernate.type.descriptor.jdbc.JdbcType;
import org.hibernate.usertype.DynamicParameterizedType;
import org.hibernate.usertype.ParameterizedType;
import java.sql.Types;
import java.util.Properties;
/**
* @author Vlad Mihalcea
*/
public class MutableDynamicParameterizedType<T, JDBC extends JdbcType, JAVA extends JavaType<T>> extends MutableType<T, JDBC, JAVA> implements DynamicParameterizedType {
/**
* {@inheritDoc}
*/
public MutableDynamicParameterizedType(Class<T> returnedClass, JDBC jdbcTypeDescriptor, JAVA javaTypeDescriptor) {
super(returnedClass, jdbcTypeDescriptor, javaTypeDescriptor);
}
public MutableDynamicParameterizedType(Class<T> returnedClass, JDBC jdbcTypeDescriptor, JAVA javaTypeDescriptor, Configuration configuration) {
super(returnedClass, jdbcTypeDescriptor, javaTypeDescriptor, configuration);
}
@Override
public void setParameterValues(Properties parameters) {
JAVA javaTypeDescriptor = getJavaTypeDescriptor();
if(javaTypeDescriptor instanceof ParameterizedType) {
ParameterizedType parameterizedType = (ParameterizedType) javaTypeDescriptor;
parameterizedType.setParameterValues(parameters);
}
}
}