io.nosqlbench.nb.api.markdown.providers.DocsRootDirectory Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of nb-api Show documentation
Show all versions of nb-api Show documentation
The top level API module for NoSQLBench. This module should have no internal
module dependencies other than the mvn-default module.
All modules within NoSQLBench can safely depend on this module with circular
dependencies. This module provides cross-cutting code infrastracture, such as
path utilities and ways of describing services used between modules.
It is also the transitive aggregation point for system-wide library dependencies
for logging and testing or similar needs.
package io.nosqlbench.nb.api.markdown.providers;
import io.nosqlbench.nb.api.content.Content;
import io.nosqlbench.nb.api.content.NBIO;
import io.nosqlbench.nb.api.content.NBIOWalker;
import io.nosqlbench.nb.api.content.PathContent;
import java.nio.file.Path;
import java.util.ArrayList;
import java.util.List;
public abstract class DocsRootDirectory implements RawMarkdownSource {
@Override
public List> getMarkdownInfo() {
List> list = NBIO.local().name(getRootPathName()).list();
NBIOWalker.CollectVisitor capture = new NBIOWalker.CollectVisitor(true, false);
NBIOWalker.RegexFilter filter = new NBIOWalker.RegexFilter("\\.md",true);
for (Content> content : list) {
Path path = content.asPath();
NBIOWalker.walkFullPath(path,capture,filter);
}
List> content = new ArrayList<>();
for (Path path : capture.get()) {
content.add(new PathContent(path));
}
return content;
}
protected abstract String getRootPathName();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy