com.heliorm.impl.ExecutablePart Maven / Gradle / Ivy
The newest version!
package com.heliorm.impl;
import com.heliorm.OrmException;
import com.heliorm.def.Executable;
import java.util.List;
import java.util.Optional;
import java.util.stream.Stream;
/**
* @author gideon
*/
public abstract class ExecutablePart< DO> implements Executable {
private final Selector selector;
public ExecutablePart(Selector selector) {
this.selector = selector;
}
public abstract SelectPart< DO> getSelect();
public abstract List> getOrder();
public abstract LimitPart getLimit();
@Override
public List list() throws OrmException {
return selector.list(getSelect());
}
@Override
public Stream stream() throws OrmException {
return selector.stream(getSelect());
}
@Override
public DO one() throws OrmException {
return selector.one(getSelect());
}
@Override
public Optional optional() throws OrmException {
return selector.optional(getSelect());
}
}