Repository navigation
Expand file tree
/
Copy pathUserParams.java
More file actions
76 lines (47 loc) · 2.04 KB
/
Copy pathUserParams.java
File metadata and controls
76 lines (47 loc) · 2.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
package code2code.core.generator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import code2code.core.templateengine.TemplateEngine;
import code2code.core.templateengine.TemplateEngineFactory;
class UserParams{
private final GlobalParamsConfig globalParamsConfig;
private Map<String, String> userConfiguredParams;
private final Generator generator;
private TemplateEngine templateEngine;
private final List<Generator> nestedGenerators;
private final ParamsConfig paramsConfig;;
public UserParams(Generator generator, GlobalParamsConfig globalParamsConfig, ParamsConfig paramsConfig, List<Generator> nestedGenerators) {
this.globalParamsConfig = globalParamsConfig;
this.generator = generator;
this.paramsConfig = paramsConfig;
this.nestedGenerators = nestedGenerators;
if(paramsConfig.getTemplateEngine() != null){
this.templateEngine = paramsConfig.getTemplateEngine();
}else{
this.templateEngine = TemplateEngineFactory.nullTemplateEngine();
}
setUserConfiguredParams(calculateGeneratorRequiredParams());
}
public Map<String, String> translated() throws Exception {
return templateEngine.processMap(generator, userConfiguredParams , globalParamsConfig.getProcessedParams());
}
public void setUserConfiguredParams(Map<String, String> userConfiguredParams) {
this.userConfiguredParams = userConfiguredParams;
for (Generator nestedGenerator : nestedGenerators) {
nestedGenerator.setUserConfiguredParams(userConfiguredParams);
}
}
public Map<String, String> calculateGeneratorRequiredParams() {
Map<String, String> allRequiredParams = new LinkedHashMap<String, String>();
for (Generator nestedGenerator : nestedGenerators) {
allRequiredParams.putAll(nestedGenerator.calculateRequiredParams());
}
//allRequiredParams.putAll(generator.calculateEclipseParams());
for (String key : paramsConfig.getParams().keySet()) {
allRequiredParams.remove(key);
}
allRequiredParams.putAll(paramsConfig.getParams());
return allRequiredParams;
}
}