diff options
| author | shedaniel <daniel@shedaniel.me> | 2021-01-29 10:39:20 +0800 | 
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2021-01-29 10:39:20 +0800 | 
| commit | 71392052eb4741ce78cc3ceae1435705e6ef7d2f (patch) | |
| tree | 5f7fab04452d49886c0a9f3a40abe6011375e507 /src/main/java/net/fabricmc/loom/LoomGradleExtension.java | |
| parent | b880d3f9d5784af60dbfec0b800216e99ca05f65 (diff) | |
| download | architectury-loom-71392052eb4741ce78cc3ceae1435705e6ef7d2f.tar.gz architectury-loom-71392052eb4741ce78cc3ceae1435705e6ef7d2f.tar.bz2 architectury-loom-71392052eb4741ce78cc3ceae1435705e6ef7d2f.zip | |
Data Generator for Forge
Diffstat (limited to 'src/main/java/net/fabricmc/loom/LoomGradleExtension.java')
| -rw-r--r-- | src/main/java/net/fabricmc/loom/LoomGradleExtension.java | 25 | 
1 files changed, 24 insertions, 1 deletions
| diff --git a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java index 82279a06..974c564a 100644 --- a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java +++ b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java @@ -95,6 +95,7 @@ public class LoomGradleExtension {  	// Not to be set in the build.gradle  	private final Project project; +	private List<String> dataGenMods = new ArrayList<>();  	private LoomDependencyManager dependencyManager;  	private JarProcessorManager jarProcessorManager;  	private JsonObject installerJson; @@ -145,6 +146,14 @@ public class LoomGradleExtension {  		action.execute(new SourceSetConsumer());  	} +	public boolean isDataGenEnabled() { +		return isForge() && !dataGenMods.isEmpty(); +	} + +	public List<String> getDataGenMods() { +		return dataGenMods; +	} +  	public class SourceSetConsumer {  		public void add(Object... sourceSets) {  			for (Object sourceSet : sourceSets) { @@ -157,6 +166,20 @@ public class LoomGradleExtension {  		}  	} +	public void dataGen(Action<DataGenConsumer> action) { +		if (!isForge()) { +			throw new UnsupportedOperationException("Not running with Forge support."); +		} + +		action.execute(new DataGenConsumer()); +	} + +	public class DataGenConsumer { +		public void mod(String... modIds) { +			dataGenMods.addAll(Arrays.asList(modIds)); +		} +	} +  	public void addTaskBeforeRun(String task) {  		this.tasksBeforeRun.add(task);  	} @@ -164,7 +187,7 @@ public class LoomGradleExtension {  	public List<String> getTasksBeforeRun() {  		return tasksBeforeRun;  	} -	 +  	public void mixinConfig(String config) {  		mixinConfigs.add(config);  	} | 
