move text resource reading to util class
This commit is contained in:
@@ -1,19 +1,15 @@
|
|||||||
package mods.betterfoliage.client;
|
package mods.betterfoliage.client;
|
||||||
|
|
||||||
import java.io.BufferedReader;
|
|
||||||
import java.io.InputStreamReader;
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import mods.betterfoliage.BetterFoliage;
|
import mods.betterfoliage.common.util.ResourceUtils;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.client.Minecraft;
|
|
||||||
import net.minecraft.client.multiplayer.WorldClient;
|
import net.minecraft.client.multiplayer.WorldClient;
|
||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
import net.minecraftforge.event.world.WorldEvent;
|
import net.minecraftforge.event.world.WorldEvent;
|
||||||
|
|
||||||
import com.google.common.base.Charsets;
|
|
||||||
import com.google.common.collect.Sets;
|
import com.google.common.collect.Sets;
|
||||||
|
|
||||||
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
|
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
|
||||||
@@ -63,24 +59,12 @@ public class BlockMatcher {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void loadDefaultLists(ResourceLocation defaults, Collection<String> blacklist, Collection<String> whitelist) {
|
public static void loadDefaultLists(ResourceLocation defaults, Collection<String> blacklist, Collection<String> whitelist) {
|
||||||
BufferedReader reader = null;
|
for (String line : ResourceUtils.getLines(defaults)) {
|
||||||
try {
|
|
||||||
reader = new BufferedReader(new InputStreamReader(Minecraft.getMinecraft().getResourceManager().getResource(defaults).getInputStream(), Charsets.UTF_8));
|
|
||||||
String line = reader.readLine();
|
|
||||||
while(line != null) {
|
|
||||||
line = line.trim();
|
|
||||||
if (!line.isEmpty() && !line.startsWith("//")) {
|
|
||||||
if (line.startsWith("-"))
|
if (line.startsWith("-"))
|
||||||
blacklist.add(line.substring(1));
|
blacklist.add(line.substring(1));
|
||||||
else
|
else
|
||||||
whitelist.add(line);
|
whitelist.add(line);
|
||||||
}
|
}
|
||||||
line = reader.readLine();
|
|
||||||
}
|
|
||||||
reader.close();
|
|
||||||
} catch (Exception e) {
|
|
||||||
BetterFoliage.log.warn(String.format("Error reading configuration %s", defaults.toString()));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Caches block IDs on world load for fast lookup
|
/** Caches block IDs on world load for fast lookup
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import java.io.File;
|
|||||||
import java.io.FileWriter;
|
import java.io.FileWriter;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStreamReader;
|
import java.io.InputStreamReader;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import mods.betterfoliage.BetterFoliage;
|
||||||
import mods.betterfoliage.loader.DeobfHelper;
|
import mods.betterfoliage.loader.DeobfHelper;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.resources.IResource;
|
import net.minecraft.client.resources.IResource;
|
||||||
@@ -15,6 +17,7 @@ import net.minecraft.client.resources.SimpleReloadableResourceManager;
|
|||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
|
|
||||||
import com.google.common.base.Charsets;
|
import com.google.common.base.Charsets;
|
||||||
|
import com.google.common.collect.Lists;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.ReflectionHelper;
|
import cpw.mods.fml.relauncher.ReflectionHelper;
|
||||||
import cpw.mods.fml.relauncher.ReflectionHelper.UnableToAccessFieldException;
|
import cpw.mods.fml.relauncher.ReflectionHelper.UnableToAccessFieldException;
|
||||||
@@ -69,4 +72,23 @@ public class ResourceUtils {
|
|||||||
reader.close();
|
reader.close();
|
||||||
writer.close();
|
writer.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Iterable<String> getLines(ResourceLocation resource) {
|
||||||
|
BufferedReader reader = null;
|
||||||
|
List<String> result = Lists.newArrayList();
|
||||||
|
try {
|
||||||
|
reader = new BufferedReader(new InputStreamReader(Minecraft.getMinecraft().getResourceManager().getResource(resource).getInputStream(), Charsets.UTF_8));
|
||||||
|
String line = reader.readLine();
|
||||||
|
while(line != null) {
|
||||||
|
line = line.trim();
|
||||||
|
if (!line.isEmpty() && !line.startsWith("//")) result.add(line);
|
||||||
|
line = reader.readLine();
|
||||||
|
}
|
||||||
|
reader.close();
|
||||||
|
} catch (Exception e) {
|
||||||
|
BetterFoliage.log.warn(String.format("Error reading resource %s", resource.toString()));
|
||||||
|
return Lists.newArrayList();
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user