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

io.sphere.sdk.shippingmethods.queries.ShippingMethodQuery Maven / Gradle / Ivy

There is a newer version: 2.16.0
Show newest version
/*
This class has been generated by class io.sphere.sdk.annotations.processors.HasQueryEndpointAnnotationProcessor
induced by the annotation io.sphere.sdk.annotations.HasQueryEndpoint.
in the source class io.sphere.sdk.shippingmethods.ShippingMethod.
To render this class the handlebars template 'queries/resourceQueryInterface.hbs' has been used.
*/
package io.sphere.sdk.shippingmethods.queries;

import com.fasterxml.jackson.core.type.TypeReference;
import io.sphere.sdk.shippingmethods.ShippingMethod;
import io.sphere.sdk.shippingmethods.expansion.ShippingMethodExpansionModel;
import io.sphere.sdk.expansion.ExpansionPathContainer;
import io.sphere.sdk.queries.PagedQueryResult;
import io.sphere.sdk.queries.MetaModelQueryDsl;
import io.sphere.sdk.queries.QueryPredicate;
import io.sphere.sdk.queries.QuerySort;



import java.util.List;
import java.util.Locale;
import java.util.function.Function;
import java.util.Optional;

/**
 * {@doc.gen summary shipping methods
 */
public interface ShippingMethodQuery extends MetaModelQueryDsl> {

    /**
     * Creates a container which contains the full Java type information to deserialize the query result (NOT this class) from JSON.
     *
     * @see io.sphere.sdk.json.SphereJsonUtils#readObject(byte[], TypeReference)
     * @see io.sphere.sdk.json.SphereJsonUtils#readObject(String, TypeReference)
     * @see io.sphere.sdk.json.SphereJsonUtils#readObject(com.fasterxml.jackson.databind.JsonNode, TypeReference)
     * @see io.sphere.sdk.json.SphereJsonUtils#readObjectFromResource(String, TypeReference)
     *
     * @return type reference
     */
    static TypeReference> resultTypeReference() {
        return new TypeReference>() {
            @Override
            public String toString() {
                return "TypeReference>";
            }
        };
    }

    static ShippingMethodQuery of() {
        return new ShippingMethodQueryImpl();
    }

    @Override
    ShippingMethodQuery plusPredicates(final Function> m);

    @Override
    ShippingMethodQuery plusPredicates(final QueryPredicate queryPredicate);

    @Override
    ShippingMethodQuery plusPredicates(final List> queryPredicates);

    @Override
    ShippingMethodQuery plusSort(final Function> m);

    @Override
    ShippingMethodQuery plusSort(final List> sort);

    @Override
    ShippingMethodQuery plusSort(final QuerySort sort);

    @Override
    ShippingMethodQuery withPredicates(final Function> predicateFunction);

    @Override
    ShippingMethodQuery withPredicates(final QueryPredicate queryPredicate);

    @Override
    ShippingMethodQuery withPredicates(final List> queryPredicates);

    @Override
    ShippingMethodQuery withSort(final Function> m);

    @Override
    ShippingMethodQuery withSort(final List> sort);

    @Override
    ShippingMethodQuery withSort(final QuerySort sort);

    @Override
    ShippingMethodQuery withSortMulti(final Function>> m);

    @Override
    ShippingMethodQuery plusExpansionPaths(final Function, ExpansionPathContainer> m);

    @Override
    ShippingMethodQuery withExpansionPaths(final Function, ExpansionPathContainer> m);

    @Override
    ShippingMethodQuery withFetchTotal(final boolean fetchTotal);

    @Override
    ShippingMethodQuery withLimit(final Long limit);

    @Override
    ShippingMethodQuery withOffset(final Long offset);

    
    default ShippingMethodQuery byName(final String name) {
        return withPredicates(ShippingMethodQueryModel.of().name().is(name));
    }

    default ShippingMethodQuery byTaxCategory(final io.sphere.sdk.models.Referenceable taxCategory) {
        return withPredicates(m -> m.taxCategory().is(taxCategory));
    }

    default ShippingMethodQuery byIsDefault() {
        return withPredicates(m -> m.isDefault().is(true));
    }

    default ShippingMethodQuery byKey(final String key) {
        return withPredicates(ShippingMethodQueryModel.of().key().is(key));
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy