io.sphere.sdk.jsonnodes.expansion.JsonNodeExpansionModelImpl Maven / Gradle / Ivy
The newest version!
package io.sphere.sdk.jsonnodes.expansion;
import io.sphere.sdk.expansion.ExpansionModelImpl;
import io.sphere.sdk.expansion.ExpansionPath;
import io.sphere.sdk.expansion.ExpansionPathContainer;
import io.sphere.sdk.models.Base;
import java.util.List;
import static io.sphere.sdk.utils.SphereInternalUtils.listOf;
import static java.util.stream.Collectors.toList;
final class JsonNodeExpansionModelImpl extends ExpansionModelImpl implements JsonNodeExpansionModel {
@Override
public ExpansionPathContainer paths(final List expansionPaths) {
final List> expansionPathList = expansionPaths.stream()
.map(ExpansionPath::of)
.collect(toList());
return new ExpansionPathContainerImpl<>(expansionPathList);
}
@Override
public ExpansionPathContainer paths(final String path, final String... morePaths) {
return paths(listOf(path, morePaths));
}
private static class ExpansionPathContainerImpl extends Base implements ExpansionPathContainer {
private final List> expansionPaths;
public ExpansionPathContainerImpl(final List> expansionPaths) {
this.expansionPaths = expansionPaths;
}
@Override
public List> expansionPaths() {
return expansionPaths;
}
}
}