class ExplorerServiceHelper {

    List<FolderItem> getPathSegments(final Path path) {
        org.uberfire.java.nio.file.Path nioSegmentPath = Paths.convert(path);

        final int segmentCount = nioSegmentPath.getNameCount();
        if (segmentCount < 1) {
            return new ArrayList<>();
        }

        final FolderItem[] segments = new FolderItem[segmentCount];
        for (int idx = segmentCount; idx > 0; idx--) {
            nioSegmentPath = nioSegmentPath.getParent();
            segments[idx - 1] = toFolderItem(nioSegmentPath);
        }

        return Arrays.asList(segments);
    }

    public  ExplorerServiceHelper();
    @Inject public  ExplorerServiceHelper(final KieModuleService moduleService,
                                 final FolderListingResolver folderListingResolver,
                                 @Named("ioStrategy") final IOService ioService,
                                 @Named("configIO") final IOService ioServiceConfig,
                                 final VFSLockServiceImpl lockService,
                                 final MetadataService metadataService,
                                 final UserServicesImpl userServices,
                                 final DeleteService deleteService,
                                 final RenameService renameService,
                                 final CopyService copyService,
                                 @Managed final ExecutorService executorService);

}