All Downloads are FREE. Search and download functionalities are using the official Maven repository.

db.sql.api.cmd.executor.method.selectMethod.ISelectMethods Maven / Gradle / Ivy

package db.sql.api.cmd.executor.method.selectMethod;


import db.sql.api.Cmd;
import db.sql.api.Getter;
import db.sql.api.cmd.basic.IColumn;
import db.sql.api.cmd.executor.ISubQuery;

import java.util.function.Function;

public interface ISelectMethods
        extends
        ISelectCmdMethod,
        ISelectGetterMethod,
        ISelectGetterFunMethod,
        ISelectMultiGetterMethod,
        ISelectMultiGetterFunMethod,
        ISelectSubQueryMethod,
        ISelectSubQueryGetterMethod,
        ISelectSubQueryGetterFunMethod,
        ISelectSubQueryMultiGetterMethod,
        ISelectSubQueryMultiGetterFunMethod {

    @Override
    default  SELF select(ISubQuery subQuery, Getter... columns) {
        for (Getter column : columns) {
            this.select(subQuery, column);
        }
        return (SELF) this;
    }

    SELF select(String columnName);

    SELF selectWithFun(String columnName, Function f);

    default SELF select(boolean when, String columnName) {
        if (!when) {
            return (SELF) this;
        }
        return this.select(columnName);
    }

    default SELF selectWithFun(boolean when, String columnName, Function f) {
        if (!when) {
            return (SELF) this;
        }
        return this.selectWithFun(columnName, f);
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy