From 2a7f4a453ea40fa02a17d02d69e5377078090fb0 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 5 Feb 2016 15:21:23 -0600 Subject: [PATCH] Reintroduce ModuleInfo List iterators In 88d3cab189d1fd68b2065e0e109cbb18ef48e0b0, the type of the iterators returned by inputs() and outputs() was narrowed from Iterable to List. Unfortunately, this broke downstream callers, so the change was reverted in edfc7c53815918672ba708daa5fb45b3d80ea404. This commit reintroduces the patch, for inclusion into SJC3. --- src/main/java/org/scijava/command/CommandInfo.java | 4 ++-- src/main/java/org/scijava/module/AbstractModuleInfo.java | 4 ++-- src/main/java/org/scijava/module/ModuleInfo.java | 6 ++++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/scijava/command/CommandInfo.java b/src/main/java/org/scijava/command/CommandInfo.java index 3cc61e6ec..cb391eb47 100644 --- a/src/main/java/org/scijava/command/CommandInfo.java +++ b/src/main/java/org/scijava/command/CommandInfo.java @@ -279,13 +279,13 @@ public CommandModuleItem getOutput(final String name, } @Override - public Iterable> inputs() { + public List> inputs() { parseParams(); return Collections.unmodifiableList(inputList); } @Override - public Iterable> outputs() { + public List> outputs() { parseParams(); return Collections.unmodifiableList(outputList); } diff --git a/src/main/java/org/scijava/module/AbstractModuleInfo.java b/src/main/java/org/scijava/module/AbstractModuleInfo.java index 551664197..cd85e75cc 100644 --- a/src/main/java/org/scijava/module/AbstractModuleInfo.java +++ b/src/main/java/org/scijava/module/AbstractModuleInfo.java @@ -99,12 +99,12 @@ public ModuleItem getOutput(final String name, final Class type) { } @Override - public Iterable> inputs() { + public List> inputs() { return Collections.unmodifiableList(inputList()); } @Override - public Iterable> outputs() { + public List> outputs() { return Collections.unmodifiableList(outputList()); } diff --git a/src/main/java/org/scijava/module/ModuleInfo.java b/src/main/java/org/scijava/module/ModuleInfo.java index f55541d82..6e644fa27 100644 --- a/src/main/java/org/scijava/module/ModuleInfo.java +++ b/src/main/java/org/scijava/module/ModuleInfo.java @@ -31,6 +31,8 @@ package org.scijava.module; +import java.util.List; + import org.scijava.UIDetails; import org.scijava.Validated; import org.scijava.event.EventService; @@ -74,10 +76,10 @@ public interface ModuleInfo extends UIDetails, Validated { ModuleItem getOutput(String name, Class type); /** Gets the list of input items. */ - Iterable> inputs(); + List> inputs(); /** Gets the list of output items. */ - Iterable> outputs(); + List> outputs(); /** * Gets the fully qualified name of the class containing the module's actual