This commit is contained in:
2025-04-05 13:21:41 +08:00
parent 36f1242e79
commit 67dca0d4d4
15 changed files with 579 additions and 13 deletions

View File

@@ -0,0 +1,32 @@
package com.ycwl.basic.facebody.starter;
import com.ycwl.basic.facebody.FaceBodyFactory;
import com.ycwl.basic.facebody.adapter.IFaceBodyAdapter;
import com.ycwl.basic.facebody.starter.config.FaceBodyConfig;
import com.ycwl.basic.facebody.starter.config.OverallFaceBodyConfig;
import org.apache.commons.lang3.StringUtils;
import org.springframework.context.annotation.Configuration;
@Configuration
public class FaceBodyAutoConfiguration {
private final OverallFaceBodyConfig config;
public FaceBodyAutoConfiguration(OverallFaceBodyConfig config) {
this.config = config;
if (config != null) {
if (config.getConfigs() != null) {
loadConfig();
}
if (StringUtils.isNotBlank(config.getDefaultUse())) {
FaceBodyFactory.setDefault(config.getDefaultUse());
}
}
}
private void loadConfig() {
for (FaceBodyConfig item : config.getConfigs()) {
IFaceBodyAdapter adapter = FaceBodyFactory.getAdapter(item.getType());
adapter.loadConfig(item.getConfig());
FaceBodyFactory.register(item.getName(), adapter);
}
}
}

View File

@@ -0,0 +1,13 @@
package com.ycwl.basic.facebody.starter.config;
import com.ycwl.basic.facebody.enums.FaceBodyAdapterType;
import lombok.Data;
import java.util.Map;
@Data
public class FaceBodyConfig {
private String name;
private FaceBodyAdapterType type;
private Map<String, String> config;
}

View File

@@ -0,0 +1,15 @@
package com.ycwl.basic.facebody.starter.config;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
@ConfigurationProperties(prefix = "facebody")
@Data
public class OverallFaceBodyConfig {
private String defaultUse;
private List<FaceBodyConfig> configs;
}