|
31 | 31 |
|
32 | 32 | import java.util.ArrayList; |
33 | 33 | import java.util.List; |
34 | | -import java.util.Optional; |
35 | 34 | import java.util.stream.Collectors; |
| 35 | +import java.util.stream.Stream; |
36 | 36 |
|
37 | 37 | import org.scijava.ops.api.OpEnvironment; |
38 | 38 | import org.scijava.ops.api.OpInfo; |
|
41 | 41 | import org.scijava.ops.engine.matcher.reduce.ReducedOpInfo; |
42 | 42 | import org.scijava.ops.engine.util.Infos; |
43 | 43 | import org.scijava.priority.Priority; |
44 | | -import org.scijava.struct.Member; |
45 | 44 |
|
46 | 45 | /** |
47 | 46 | * An {@link OpDescriptionGenerator} implementation which makes use of |
@@ -96,34 +95,28 @@ public String verboseDescriptions(OpEnvironment env, OpRequest req) { |
96 | 95 | } |
97 | 96 |
|
98 | 97 | private String allNamespaces(final OpEnvironment env) { |
99 | | - List<String> namespaces = env.infos().stream() // |
100 | | - // Get all names from each Op |
101 | | - .flatMap(info -> info.names().stream()) // |
102 | | - // Map each name to its namespace |
103 | | - .map(name -> name.contains(".") ? name.substring(0, name.indexOf(".")) : name) // |
104 | | - // Deduplicate & sort |
105 | | - .distinct() // |
106 | | - .sorted() // |
107 | | - // Filter out the engine namespaces |
108 | | - .filter(ns -> !ns.equals("engine")) // |
| 98 | + List<String> namespaces = namespaceStream(env) // |
109 | 99 | .collect(Collectors.toList()); |
110 | 100 | return "Namespaces:\n\t> " + String.join("\n\t> ", namespaces); |
111 | 101 | } |
112 | 102 |
|
113 | 103 | private String allNamespaces(final OpEnvironment env, final String name) { |
114 | | - List<String> namespaces = env.infos().stream() // |
| 104 | + List<String> namespaces = namespaceStream(env) // |
| 105 | + // Filter by the predicate name |
| 106 | + .filter(n -> n.contains(name)) // |
| 107 | + .collect(Collectors.toList()); |
| 108 | + return "Names:\n\t> " + String.join("\n\t> ", namespaces); |
| 109 | + } |
| 110 | + |
| 111 | + private Stream<String> namespaceStream(OpEnvironment env) { |
| 112 | + return env.infos().stream() // |
115 | 113 | // Get all names from each Op |
116 | 114 | .flatMap(info -> info.names().stream()) // |
117 | 115 | // Deduplicate & sort |
118 | 116 | .distinct() // |
119 | 117 | .sorted() // |
120 | 118 | // Filter out the engine namespace |
121 | | - .filter(ns -> !ns.equals("engine")) // |
122 | | - // Filter by the predicate name |
123 | | - .filter(n -> n.contains(name)) // |
124 | | - .collect(Collectors.toList()); |
125 | | - return "Names:\n\t> " + String.join("\n\t> ", namespaces); |
126 | | - |
| 119 | + .filter(ns -> !ns.equals("engine")); |
127 | 120 | } |
128 | 121 |
|
129 | 122 | private List<OpInfo> filterInfos(Iterable<? extends OpInfo> infos, OpRequest req) { |
|
0 commit comments