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

org.babyfish.jimmer.sql.loader.graphql.Loaders Maven / Gradle / Ivy

There is a newer version: 0.9.19
Show newest version
package org.babyfish.jimmer.sql.loader.graphql;

import org.babyfish.jimmer.meta.ImmutableProp;
import org.babyfish.jimmer.meta.TypedProp;
import org.babyfish.jimmer.sql.ast.table.Table;

import java.util.function.Function;

/**
 * This interface is designed for Spring-GraphQL;
 *
 * - If you use GraphQL, please use this interface, not ObjectFetcher
 * - If you do not use GraphQL, please use Object Fetcher, not this interface
 */
public interface Loaders {

     ValueLoader value(TypedProp.Scalar prop);

     ReferenceLoader reference(TypedProp.Reference prop);

     ListLoader list(TypedProp.ReferenceList prop);

    , TE, TT extends Table>
    FilterableReferenceLoader reference(
            Class sourceTableType,
            Function block
    );

    , TE, TT extends Table>
    FilterableListLoader list(
            Class sourceTableType,
            Function block
    );
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy