Skip to content

Commit 18decdd

Browse files
authored
* gradle plugin: propagating gradle properties to config.properties (#794)
It allows to specify/override properties that are used in property file, as long as Info.plist etc Usage: ``` ./gradlew help launchIPhoneSimulator --info -Papp.name=test ```
1 parent dad88db commit 18decdd

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

compiler/compiler/src/main/java/org/robovm/compiler/config/Config.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1583,6 +1583,11 @@ public Builder addProperties(Properties properties) {
15831583
return this;
15841584
}
15851585

1586+
public Builder addProperties(Map<String, ?> properties) {
1587+
config.properties.putAll(properties);
1588+
return this;
1589+
}
1590+
15861591
public Builder addProperties(File file) throws IOException {
15871592
Properties props = new Properties();
15881593
try (Reader reader = new InputStreamReader(new FileInputStream(file), StandardCharsets.UTF_8)) {

plugins/gradle/src/main/java/org/robovm/gradle/tasks/AbstractRoboVMTask.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,8 @@
5858
import java.io.FileOutputStream;
5959
import java.io.IOException;
6060
import java.io.OutputStream;
61-
import java.util.ArrayList;
62-
import java.util.HashMap;
63-
import java.util.List;
64-
import java.util.Set;
61+
import java.util.*;
62+
import java.util.stream.Collectors;
6563
import java.util.zip.GZIPInputStream;
6664

6765
/**
@@ -136,6 +134,13 @@ protected Config.Builder configure(Config.Builder builder) {
136134
}
137135
}
138136

137+
// add project properties on top of one read from property file
138+
// leave only not nullable string values
139+
Map<String, String> gradleProperties = project.getProperties().entrySet().stream()
140+
.filter( e -> e.getValue() instanceof String)
141+
.collect(Collectors.toMap(Map.Entry::getKey, e -> e.getValue().toString()));
142+
builder.addProperties(gradleProperties);
143+
139144
if (extension.getConfigFile() != null) {
140145
File configFile = new File(extension.getConfigFile());
141146

0 commit comments

Comments
 (0)