forked from airbreather/airbreathercore
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCustomConfiguration.java
24 lines (18 loc) · 982 Bytes
/
CustomConfiguration.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package airbreather.mods.airbreathercore;
import java.io.File;
import airbreather.mods.airbreathercore.event.EventConfiguration;
import airbreather.mods.airbreathercore.item.ItemConfiguration;
import airbreather.mods.airbreathercore.recipe.RecipeConfiguration;
// Interface for mod configurations.
public interface CustomConfiguration
{
// Initializes the configuration from a file.
// TODO: If I ever care enough to write unit tests, make this mockable.
void Initialize(File configurationFile);
// Gets the ItemConfiguration object that maps arbitrary internal IDs to Item objects that this mod uses.
ItemConfiguration GetItemConfiguration();
// Gets the RecipeConfiguration object that is used to fetch the recipes configured for this mod.
RecipeConfiguration GetRecipeConfiguration();
// Gets the EventConfiguration object that is used to fetch the events configured for this mod to handle.
EventConfiguration GetEventConfiguration();
}