Method partitionIndexMethod = AnnotationHelper.getFirstMethodWithAnnotation(clazz, PartitionIndex.class);
return new PartitionDimension(getPartitionDimensionName(clazz), JdbcTypeMapper.primitiveTypeToJdbcType(partitionIndexMethod.getReturnType()));
}
public static EntityConfig readConfiguration(Class<?> clazz) {
PartitionDimension dimension = extractPartitionDimension(clazz);
Method versionMethod = AnnotationHelper.getFirstMethodWithAnnotation(clazz, EntityVersion.class);
Method resourceIdMethod = AnnotationHelper.getFirstMethodWithAnnotation(clazz, EntityId.class);
Method partitionIndexMethod = AnnotationHelper.getFirstMethodWithAnnotation(clazz, PartitionIndex.class);
String primaryIndexPropertyName = getIndexNameForMethod(partitionIndexMethod);
String idPropertyName = getIndexNameForMethod(resourceIdMethod);
String versionPropertyName = versionMethod == null ? null : getIndexNameForMethod(versionMethod);
List<EntityIndexConfig> indexes = createIndexMethods(clazz, resourceIdMethod);
EntityConfig config = new EntityConfigImpl(
clazz,
dimension.getName(),
getResourceName(clazz),
primaryIndexPropertyName,
idPropertyName,
versionPropertyName,
indexes,