mirror of https://github.com/halo-dev/halo
Refactor AbstractConverter constructor (#1110)
parent
036644bf10
commit
2ca92b5391
|
@ -1,8 +1,11 @@
|
|||
package run.halo.app.model.enums.converter;
|
||||
|
||||
import run.halo.app.model.enums.ValueEnum;
|
||||
import run.halo.app.utils.ReflectionUtils;
|
||||
|
||||
import javax.persistence.AttributeConverter;
|
||||
import java.lang.reflect.Type;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* Abstract converter.
|
||||
|
@ -16,8 +19,12 @@ public abstract class AbstractConverter<E extends ValueEnum<V>, V> implements At
|
|||
|
||||
private final Class<E> clazz;
|
||||
|
||||
protected AbstractConverter(Class<E> clazz) {
|
||||
this.clazz = clazz;
|
||||
@SuppressWarnings("unchecked")
|
||||
protected AbstractConverter() {
|
||||
Type enumType = Objects.requireNonNull(
|
||||
ReflectionUtils.getParameterizedTypeBySuperClass(AbstractConverter.class, this.getClass())
|
||||
).getActualTypeArguments()[0];
|
||||
this.clazz = (Class<E>) enumType;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -13,7 +13,4 @@ import javax.persistence.Converter;
|
|||
@Converter(autoApply = true)
|
||||
public class AttachmentTypeConverter extends AbstractConverter<AttachmentType, Integer> {
|
||||
|
||||
public AttachmentTypeConverter() {
|
||||
super(AttachmentType.class);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,8 +13,4 @@ import javax.persistence.Converter;
|
|||
@Converter(autoApply = true)
|
||||
public class CommentStatusConverter extends AbstractConverter<CommentStatus, Integer> {
|
||||
|
||||
public CommentStatusConverter() {
|
||||
super(CommentStatus.class);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -13,7 +13,4 @@ import javax.persistence.Converter;
|
|||
@Converter(autoApply = true)
|
||||
public class DataTypeConverter extends AbstractConverter<DataType, Integer> {
|
||||
|
||||
public DataTypeConverter() {
|
||||
super(DataType.class);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,7 +13,4 @@ import javax.persistence.Converter;
|
|||
@Converter(autoApply = true)
|
||||
public class LogTypeConverter extends AbstractConverter<LogType, Integer> {
|
||||
|
||||
public LogTypeConverter() {
|
||||
super(LogType.class);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,7 +13,4 @@ import javax.persistence.Converter;
|
|||
@Converter(autoApply = true)
|
||||
public class PostStatusConverter extends AbstractConverter<PostStatus, Integer> {
|
||||
|
||||
public PostStatusConverter() {
|
||||
super(PostStatus.class);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,7 +14,4 @@ import javax.persistence.Converter;
|
|||
@Deprecated
|
||||
public class PostTypeConverter extends AbstractConverter<PostType, Integer> {
|
||||
|
||||
public PostTypeConverter() {
|
||||
super(PostType.class);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue