001 002package com.commercetools.api.models.error; 003 004import java.time.*; 005import java.util.*; 006import java.util.function.Function; 007 008import javax.annotation.Nullable; 009import javax.validation.constraints.NotNull; 010 011import com.fasterxml.jackson.annotation.*; 012import com.fasterxml.jackson.databind.annotation.*; 013 014import io.vrap.rmf.base.client.utils.Generated; 015 016/** 017 * GraphQLQueryComplexityLimitExceededError 018 * 019 * <hr> 020 * Example to create an instance using the builder pattern 021 * <div class=code-example> 022 * <pre><code class='java'> 023 * GraphQLQueryComplexityLimitExceededError graphQLQueryComplexityLimitExceededError = GraphQLQueryComplexityLimitExceededError.builder() 024 * .build() 025 * </code></pre> 026 * </div> 027 */ 028@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen") 029@JsonDeserialize(as = GraphQLQueryComplexityLimitExceededErrorImpl.class) 030public interface GraphQLQueryComplexityLimitExceededError extends GraphQLErrorObject { 031 032 /** 033 * discriminator value for GraphQLQueryComplexityLimitExceededError 034 */ 035 String QUERY_COMPLEXITY_LIMIT_EXCEEDED = "QueryComplexityLimitExceeded"; 036 037 /** 038 * 039 * @return code 040 */ 041 @NotNull 042 @JsonProperty("code") 043 public String getCode(); 044 045 /** 046 * factory method 047 * @return instance of GraphQLQueryComplexityLimitExceededError 048 */ 049 public static GraphQLQueryComplexityLimitExceededError of() { 050 return new GraphQLQueryComplexityLimitExceededErrorImpl(); 051 } 052 053 /** 054 * factory method to create a shallow copy GraphQLQueryComplexityLimitExceededError 055 * @param template instance to be copied 056 * @return copy instance 057 */ 058 public static GraphQLQueryComplexityLimitExceededError of(final GraphQLQueryComplexityLimitExceededError template) { 059 GraphQLQueryComplexityLimitExceededErrorImpl instance = new GraphQLQueryComplexityLimitExceededErrorImpl(); 060 Optional.ofNullable(template.values()).ifPresent(t -> t.forEach(instance::setValue)); 061 return instance; 062 } 063 064 /** 065 * factory method to create a deep copy of GraphQLQueryComplexityLimitExceededError 066 * @param template instance to be copied 067 * @return copy instance 068 */ 069 @Nullable 070 public static GraphQLQueryComplexityLimitExceededError deepCopy( 071 @Nullable final GraphQLQueryComplexityLimitExceededError template) { 072 if (template == null) { 073 return null; 074 } 075 GraphQLQueryComplexityLimitExceededErrorImpl instance = new GraphQLQueryComplexityLimitExceededErrorImpl(); 076 Optional.ofNullable(template.values()).ifPresent(t -> t.forEach(instance::setValue)); 077 return instance; 078 } 079 080 /** 081 * builder factory method for GraphQLQueryComplexityLimitExceededError 082 * @return builder 083 */ 084 public static GraphQLQueryComplexityLimitExceededErrorBuilder builder() { 085 return GraphQLQueryComplexityLimitExceededErrorBuilder.of(); 086 } 087 088 /** 089 * create builder for GraphQLQueryComplexityLimitExceededError instance 090 * @param template instance with prefilled values for the builder 091 * @return builder 092 */ 093 public static GraphQLQueryComplexityLimitExceededErrorBuilder builder( 094 final GraphQLQueryComplexityLimitExceededError template) { 095 return GraphQLQueryComplexityLimitExceededErrorBuilder.of(template); 096 } 097 098 /** 099 * accessor map function 100 * @param <T> mapped type 101 * @param helper function to map the object 102 * @return mapped value 103 */ 104 default <T> T withGraphQLQueryComplexityLimitExceededError( 105 Function<GraphQLQueryComplexityLimitExceededError, T> helper) { 106 return helper.apply(this); 107 } 108 109 /** 110 * gives a TypeReference for usage with Jackson DataBind 111 * @return TypeReference 112 */ 113 public static com.fasterxml.jackson.core.type.TypeReference<GraphQLQueryComplexityLimitExceededError> typeReference() { 114 return new com.fasterxml.jackson.core.type.TypeReference<GraphQLQueryComplexityLimitExceededError>() { 115 @Override 116 public String toString() { 117 return "TypeReference<GraphQLQueryComplexityLimitExceededError>"; 118 } 119 }; 120 } 121}