mirror of
https://gitee.com/easii/mapstruct-plus.git
synced 2025-12-08 18:18:34 +08:00
issue#I8QPRO
configuration support for the AutoMapperConfig and AutoMapMapperConfig package and class name
This commit is contained in:
parent
bdc55fc0fb
commit
f5e48f9b1f
@ -4,6 +4,9 @@ import io.github.linpeilie.annotations.MapperConfig;
|
|||||||
|
|
||||||
@MapperConfig(adapterClassName = "DemoConvertMapperAdapter",
|
@MapperConfig(adapterClassName = "DemoConvertMapperAdapter",
|
||||||
adapterPackage = "io.github.linpeilie.adapter",
|
adapterPackage = "io.github.linpeilie.adapter",
|
||||||
mapAdapterClassName = "DemoMapConvertMapperAdapter")
|
mapAdapterClassName = "DemoMapConvertMapperAdapter",
|
||||||
|
autoConfigPackage = "cn.easii",
|
||||||
|
autoMapperConfigClassName = "EasiiAutoMapperConfig",
|
||||||
|
autoMapMapperConfigClassName = "EasiiAutoMapMapperConfig")
|
||||||
public class MapStructPlusConfiguration {
|
public class MapStructPlusConfiguration {
|
||||||
}
|
}
|
||||||
|
|||||||
@ -399,6 +399,15 @@ public class AutoMapperProcessor extends AbstractProcessor {
|
|||||||
if (StrUtil.isNotEmpty(mapperConfig.mapAdapterClassName())) {
|
if (StrUtil.isNotEmpty(mapperConfig.mapAdapterClassName())) {
|
||||||
AutoMapperProperties.setMapAdapterClassName(mapperConfig.mapAdapterClassName());
|
AutoMapperProperties.setMapAdapterClassName(mapperConfig.mapAdapterClassName());
|
||||||
}
|
}
|
||||||
|
if (StrUtil.isNotEmpty(mapperConfig.autoConfigPackage())) {
|
||||||
|
AutoMapperProperties.setAutoConfigPackage(mapperConfig.autoConfigPackage());
|
||||||
|
}
|
||||||
|
if (StrUtil.isNotEmpty(mapperConfig.autoMapperConfigClassName())) {
|
||||||
|
AutoMapperProperties.setAutoMapperConfigClassName(mapperConfig.autoMapperConfigClassName());
|
||||||
|
}
|
||||||
|
if (StrUtil.isNotEmpty(mapperConfig.autoMapMapperConfigClassName())) {
|
||||||
|
AutoMapperProperties.setAutoMapMapperConfigClassName(mapperConfig.autoMapMapperConfigClassName());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void refreshProperties(final Set<? extends TypeElement> annotations, final RoundEnvironment roundEnv) {
|
private void refreshProperties(final Set<? extends TypeElement> annotations, final RoundEnvironment roundEnv) {
|
||||||
|
|||||||
@ -31,6 +31,12 @@ public class AutoMapperProperties {
|
|||||||
|
|
||||||
private static String mapAdapterClassName = DEFAULT_MAP_ADAPTER_CLASS_NAME;
|
private static String mapAdapterClassName = DEFAULT_MAP_ADAPTER_CLASS_NAME;
|
||||||
|
|
||||||
|
private static String autoConfigPackage = DEFAULT_BASE_PACKAGE;
|
||||||
|
|
||||||
|
private static String autoMapperConfigClassName = AUTO_MAPPER_CONFIG_CLASS_NAME;
|
||||||
|
|
||||||
|
private static String autoMapMapperConfigClassName = AUTO_MAP_MAPPER_CONFIG_CLASS_NAME;
|
||||||
|
|
||||||
public static String getMapperPackage() {
|
public static String getMapperPackage() {
|
||||||
return mapperPackage;
|
return mapperPackage;
|
||||||
}
|
}
|
||||||
@ -60,15 +66,27 @@ public class AutoMapperProperties {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static String getConfigPackage() {
|
public static String getConfigPackage() {
|
||||||
return DEFAULT_BASE_PACKAGE;
|
return autoConfigPackage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void setAutoConfigPackage(String autoConfigPackage) {
|
||||||
|
AutoMapperProperties.autoConfigPackage = autoConfigPackage;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getConfigClassName() {
|
public static String getConfigClassName() {
|
||||||
return AUTO_MAPPER_CONFIG_CLASS_NAME;
|
return autoMapperConfigClassName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void setAutoMapperConfigClassName(String autoMapperConfigClassName) {
|
||||||
|
AutoMapperProperties.autoMapperConfigClassName = autoMapperConfigClassName;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getMapConfigClassName() {
|
public static String getMapConfigClassName() {
|
||||||
return AUTO_MAP_MAPPER_CONFIG_CLASS_NAME;
|
return autoMapMapperConfigClassName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void setAutoMapMapperConfigClassName(String autoMapMapperConfigClassName) {
|
||||||
|
AutoMapperProperties.autoMapMapperConfigClassName = autoMapMapperConfigClassName;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getComponentModel() {
|
public static String getComponentModel() {
|
||||||
|
|||||||
@ -33,6 +33,12 @@ public class ProcessorOptions {
|
|||||||
|
|
||||||
public static final String MAP_ADAPTER_CLASS_NAME = "mapstruct.plus.mapAdapterClassName";
|
public static final String MAP_ADAPTER_CLASS_NAME = "mapstruct.plus.mapAdapterClassName";
|
||||||
|
|
||||||
|
public static final String AUTO_CONFIG_PACKAGE = "mapstruct.plus.autoConfigPackage";
|
||||||
|
|
||||||
|
public static final String AUTO_MAPPER_CONFIG_CLASS_NAME = "mapstruct.plus.autoMapperConfigClassName";
|
||||||
|
|
||||||
|
public static final String AUTO_MAP_MAPPER_CONFIG_CLASS_NAME = "mapstruct.plus.autoMapMapperConfigClassName";
|
||||||
|
|
||||||
public static Map<String, Consumer<String>> optionConsumers() {
|
public static Map<String, Consumer<String>> optionConsumers() {
|
||||||
final Map<String, Consumer<String>> consumerMap = new HashMap<>();
|
final Map<String, Consumer<String>> consumerMap = new HashMap<>();
|
||||||
|
|
||||||
@ -53,6 +59,9 @@ public class ProcessorOptions {
|
|||||||
consumerMap.put(ADAPTER_PACKAGE, AutoMapperProperties::setAdapterPackage);
|
consumerMap.put(ADAPTER_PACKAGE, AutoMapperProperties::setAdapterPackage);
|
||||||
consumerMap.put(ADAPTER_CLASS_NAME, AutoMapperProperties::setAdapterClassName);
|
consumerMap.put(ADAPTER_CLASS_NAME, AutoMapperProperties::setAdapterClassName);
|
||||||
consumerMap.put(MAP_ADAPTER_CLASS_NAME, AutoMapperProperties::setMapAdapterClassName);
|
consumerMap.put(MAP_ADAPTER_CLASS_NAME, AutoMapperProperties::setMapAdapterClassName);
|
||||||
|
consumerMap.put(AUTO_CONFIG_PACKAGE, AutoMapperProperties::setAutoConfigPackage);
|
||||||
|
consumerMap.put(AUTO_MAPPER_CONFIG_CLASS_NAME, AutoMapperProperties::setAutoMapperConfigClassName);
|
||||||
|
consumerMap.put(AUTO_MAP_MAPPER_CONFIG_CLASS_NAME, AutoMapperProperties::setAutoMapMapperConfigClassName);
|
||||||
return consumerMap;
|
return consumerMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -74,4 +74,28 @@ public @interface MapperConfig {
|
|||||||
*/
|
*/
|
||||||
String mapAdapterClassName() default "";
|
String mapAdapterClassName() default "";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* MapStructPlus 所生成的配置类(AutoMapperConfig/AutoMapMapperConfig)包路径
|
||||||
|
* <br>
|
||||||
|
* 默认包路径为 io.github.linpeilie
|
||||||
|
* @return AutoMapperConfig / AutoMapMapperConfig 包路径
|
||||||
|
*/
|
||||||
|
String autoConfigPackage() default "";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* MapStructPlus 所生成的配置类转换的配置类名
|
||||||
|
* <br>
|
||||||
|
* 默认类名为 AutoMapperConfig
|
||||||
|
* @return AutoMapperConfig 类名
|
||||||
|
*/
|
||||||
|
String autoMapperConfigClassName() default "";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* MapStructPlus 所生成的配置 Map 与对象转换的配置类名
|
||||||
|
* <br>
|
||||||
|
* 默认类名为 AutoMapMapperConfig
|
||||||
|
* @return AutoMapMapperConfig 类名
|
||||||
|
*/
|
||||||
|
String autoMapMapperConfigClassName() default "";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user