Update API docs

This commit is contained in:
Raoul Van den Berge
2016-09-11 01:52:55 +02:00
parent 3e40b7b772
commit cb0f8ae023
6 changed files with 27 additions and 3 deletions

View File

@@ -3,8 +3,21 @@ package refinedstorage.api;
import refinedstorage.api.autocrafting.registry.ICraftingTaskRegistry;
import refinedstorage.api.solderer.ISoldererRegistry;
import javax.annotation.Nonnull;
/**
* Represents a Refined Storage API implementation.
*/
public interface IAPI {
/**
* @return The solderer registry
*/
@Nonnull
ISoldererRegistry getSoldererRegistry();
/**
* @return The crafting task registry
*/
@Nonnull
ICraftingTaskRegistry getCraftingTaskRegistry();
}

View File

@@ -19,6 +19,9 @@ public final class RefinedStorageAPI {
}
}
/**
* @return The Refined Storage API
*/
public static IAPI instance() {
return API;
}

View File

@@ -10,6 +10,7 @@ import javax.annotation.Nullable;
/**
* A factory that creates a crafting task from a NBT tag and crafting pattern.
* Register this factory to create your own custom crafting tasks.
*/
public interface ICraftingTaskFactory {
/**

View File

@@ -1,5 +1,7 @@
package refinedstorage.api.autocrafting.registry;
import javax.annotation.Nullable;
/**
* A registry that stores the various crafting task types.
*/
@@ -14,12 +16,11 @@ public interface ICraftingTaskRegistry {
void addFactory(String id, ICraftingTaskFactory factory);
/**
* Returns the factory of a crafting task type.
* This is used when reading the storage network from disk to get a factory in order to create a crafting task.
* It is also used for creating crafting tasks on demand when the player requests it.
* Returns the factory of a crafting task type id.
*
* @param id The id
* @return The factory
*/
@Nullable
ICraftingTaskFactory getFactory(String id);
}

View File

@@ -6,6 +6,8 @@ import refinedstorage.api.solderer.ISoldererRegistry;
import refinedstorage.apiimpl.autocrafting.registry.CraftingTaskRegistry;
import refinedstorage.apiimpl.solderer.SoldererRegistry;
import javax.annotation.Nonnull;
public class API implements IAPI {
public static final IAPI INSTANCE = new API();
@@ -13,11 +15,13 @@ public class API implements IAPI {
private ICraftingTaskRegistry craftingTaskRegistry = new CraftingTaskRegistry();
@Override
@Nonnull
public ISoldererRegistry getSoldererRegistry() {
return soldererRegistry;
}
@Override
@Nonnull
public ICraftingTaskRegistry getCraftingTaskRegistry() {
return craftingTaskRegistry;
}

View File

@@ -3,6 +3,7 @@ package refinedstorage.apiimpl.autocrafting.registry;
import refinedstorage.api.autocrafting.registry.ICraftingTaskFactory;
import refinedstorage.api.autocrafting.registry.ICraftingTaskRegistry;
import javax.annotation.Nullable;
import java.util.HashMap;
import java.util.Map;
@@ -15,6 +16,7 @@ public class CraftingTaskRegistry implements ICraftingTaskRegistry {
}
@Override
@Nullable
public ICraftingTaskFactory getFactory(String id) {
return registry.get(id);
}