1212import java .nio .ByteBuffer ;
1313import java .nio .file .Path ;
1414import java .nio .file .Paths ;
15+ import java .util .LinkedHashSet ;
16+ import java .util .Set ;
1517import java .util .stream .Stream ;
1618
1719
@@ -143,13 +145,14 @@ public Stream<String[]> list(String[] prefixKeys) {
143145 builder .add (resolveEntryKeys (name .substring (prefix .length ())));
144146 }
145147 }
146- } catch (IOException ignored ) {}
148+ } catch (IOException ignored ) {
149+ }
147150 return builder .build ();
148151 }
149152
150153 @ Override
151- public Stream <String [] > listChildren (String [] prefixKeys ) {
152- java . util . Set <String > children = new java . util . LinkedHashSet <>();
154+ public Stream <String > listChildren (String [] prefixKeys ) {
155+ Set <String > children = new LinkedHashSet <>();
153156 InputStream inputStream = underlyingStore .getInputStream ();
154157 if (inputStream == null ) return Stream .empty ();
155158
@@ -166,19 +169,13 @@ public Stream<String[]> listChildren(String[] prefixKeys) {
166169 if (name .startsWith (prefix ) && !name .equals (prefix )) {
167170 String relative = name .substring (prefix .length ());
168171 String [] parts = relative .split ("/" );
169- // The child is the prefix + the very next segment
170- String childSegment = parts [0 ];
171- children .add (childSegment );
172+ children .add (parts [0 ]);
172173 }
173174 }
174- } catch (IOException ignored ) {}
175-
176- return children .stream ().map (segment -> {
177- String [] result = new String [prefixKeys .length + 1 ];
178- System .arraycopy (prefixKeys , 0 , result , 0 , prefixKeys .length );
179- result [prefixKeys .length ] = segment ;
180- return result ;
181- });
175+ } catch (IOException ignored ) {
176+ }
177+
178+ return children .stream ();
182179 }
183180
184181 private String normalizeEntryName (String name ) {
0 commit comments