diff --git a/src/main/java/com/gtnewhorizon/structurelib/structure/IStructureDefinition.java b/src/main/java/com/gtnewhorizon/structurelib/structure/IStructureDefinition.java index 66226d95..ddabc573 100644 --- a/src/main/java/com/gtnewhorizon/structurelib/structure/IStructureDefinition.java +++ b/src/main/java/com/gtnewhorizon/structurelib/structure/IStructureDefinition.java @@ -13,8 +13,11 @@ public interface IStructureDefinition { /** * Used internally * + * Might, but is not required, to throw {@link java.util.NoSuchElementException} if the given structure piece is not found. + * * @param name same name as for other methods here * @return the array of elements to process + * @throws java.util.NoSuchElementException if the given structure piece is not found and the moon phase perfectly matches */ IStructureElement[] getStructureFor(String name); diff --git a/src/main/java/com/gtnewhorizon/structurelib/structure/StructureDefinition.java b/src/main/java/com/gtnewhorizon/structurelib/structure/StructureDefinition.java index 22e932d9..a7c3ac35 100644 --- a/src/main/java/com/gtnewhorizon/structurelib/structure/StructureDefinition.java +++ b/src/main/java/com/gtnewhorizon/structurelib/structure/StructureDefinition.java @@ -193,6 +193,9 @@ public class StructureDefinition implements IStructureDefinition { @Override public IStructureElement[] getStructureFor(String name) { - return structures.get(name); + IStructureElement[] elements = structures.get(name); + if (elements == null) + throw new NoSuchElementException(name); + return elements; } } \ No newline at end of file