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.UUIDArrayTypeDescriptor;
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.util.Properties;
10 import java.util.UUID;
11
12
19 public class UUIDArrayType extends AbstractArrayType<UUID[]> {
20
21 public static final UUIDArrayType INSTANCE = new UUIDArrayType();
22
23 public UUIDArrayType() {
24 super(
25 new UUIDArrayTypeDescriptor()
26 );
27 }
28
29 public UUIDArrayType(Configuration configuration) {
30 super(
31 new UUIDArrayTypeDescriptor(),
32 configuration
33 );
34 }
35
36 public UUIDArrayType(Class arrayClass) {
37 this();
38 Properties parameters = new Properties();
39 parameters.put(DynamicParameterizedType.PARAMETER_TYPE, new ParameterizedParameterType(arrayClass));
40 setParameterValues(parameters);
41 }
42
43 public String getName() {
44 return "uuid-array";
45 }
46 }