diff options
Diffstat (limited to 'src/main/java/me/shedaniel/rei/server/ContainerInfoHandler.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/server/ContainerInfoHandler.java | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/main/java/me/shedaniel/rei/server/ContainerInfoHandler.java b/src/main/java/me/shedaniel/rei/server/ContainerInfoHandler.java new file mode 100644 index 000000000..ca009695b --- /dev/null +++ b/src/main/java/me/shedaniel/rei/server/ContainerInfoHandler.java @@ -0,0 +1,25 @@ +package me.shedaniel.rei.server; + +import com.google.common.collect.Maps; +import net.minecraft.container.Container; +import net.minecraft.util.Identifier; + +import java.util.Map; + +public class ContainerInfoHandler { + private static final Map<Identifier, Map<Class<? extends Container>, ContainerInfo>> containerInfoMap = Maps.newHashMap(); + + public static void registerContainerInfo(Identifier category, ContainerInfo containerInfo) { + if (!containerInfoMap.containsKey(category)) + containerInfoMap.put(category, Maps.newHashMap()); + containerInfoMap.get(category).put(containerInfo.getContainerClass(), containerInfo); + } + + public static boolean isCategoryHandled(Identifier category) { + return containerInfoMap.containsKey(category) && !containerInfoMap.get(category).isEmpty(); + } + + public static ContainerInfo getContainerInfo(Identifier category, Class<?> containerClass) { + return containerInfoMap.get(category).get(containerClass); + } +} |
