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

graphql.scalars.numeric.PositiveIntScalar Maven / Gradle / Ivy

There is a newer version: 2023-01-24T02-11-56-babda5f
Show newest version
package graphql.scalars.numeric;

import graphql.Internal;
import graphql.schema.GraphQLScalarType;

import java.util.function.Function;

/**
 * Access this via {@link graphql.scalars.ExtendedScalars#PositiveInt}
 */
@Internal
public final class PositiveIntScalar {

    private PositiveIntScalar() {}

    public static final GraphQLScalarType INSTANCE = GraphQLScalarType.newScalar()
            .name("PositiveInt")
            .description("An Int scalar that must be a positive value")
            .coercing(new IntCoercing() {
                @Override
                protected Integer check(Integer i, Function exceptionMaker) {
                    if (i <= 0) {
                        throw exceptionMaker.apply("The value must be a positive integer");
                    }
                    return i;
                }
            })
            .build();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy