1 package com.vladmihalcea.hibernate.type.array;
2
3 import com.vladmihalcea.hibernate.type.array.internal.AbstractArrayType;
4 import com.vladmihalcea.hibernate.type.array.internal.DecimalArrayTypeDescriptor;
5 import com.vladmihalcea.hibernate.type.util.Configuration;
6 import com.vladmihalcea.hibernate.type.util.ParameterizedParameterType;
7 import org.hibernate.usertype.DynamicParameterizedType;
8
9 import java.math.BigDecimal;
10 import java.util.Properties;
11
12
19 public class DecimalArrayType extends AbstractArrayType<BigDecimal[]> {
20
21 public static final DecimalArrayType INSTANCE = new DecimalArrayType();
22
23 public DecimalArrayType(Configuration configuration) {
24 super(
25 new DecimalArrayTypeDescriptor(),
26 configuration
27 );
28 }
29
30 public DecimalArrayType(Class arrayClass) {
31 this();
32 Properties parameters = new Properties();
33 parameters.put(DynamicParameterizedType.PARAMETER_TYPE, new ParameterizedParameterType(arrayClass));
34 setParameterValues(parameters);
35 }
36
37 public DecimalArrayType() {
38 super(
39 new DecimalArrayTypeDescriptor()
40 );
41 }
42
43 @Override
44 public String getName() {
45 return "decimal-array";
46 }
47 }