private void removeFromList(Map source, TypeDefinition value) { List<TypeDefinition> list = (List<TypeDefinition>) source.get(value.getName()); if (list == null) { return; } list.remove(value); }
private <T extends TypeDefinition> Optional<GraphQLError> define(Map<String, T> source, Map<String, T> target, T newEntry) { String name = newEntry.getName(); T olderEntry = source.get(name); if (olderEntry != null) { return Optional.of(handleReDefinition(olderEntry, newEntry)); } else { target.put(name, newEntry); } return Optional.empty(); }
private <T extends TypeDefinition> Optional<T> getType(String typeName, Class<T> typeDefClass, Document doc) { if (typeName == null) { return Optional.empty(); } return doc.getDefinitions().stream() .filter(def -> typeDefClass.isAssignableFrom(def.getClass())) .map(typeDefClass::cast) .filter(defT -> defT.getName().equals(typeName)) .findFirst(); } }
public TypeExtensionMissingBaseTypeError(TypeDefinition typeExtensionDefinition) { super(typeExtensionDefinition, format("The extension '%s' type %s is missing its base underlying type", typeExtensionDefinition.getName(), BaseError.lineCol(typeExtensionDefinition) )); } }
private String nonExecutableDefinitionMessage(Definition definition) { String definitionName; if (definition instanceof TypeDefinition) { definitionName = ((TypeDefinition) definition).getName(); } else if (definition instanceof SchemaDefinition) { definitionName = "schema"; } else { definitionName = "provided"; } return nonExecutableDefinitionMessage(definitionName); }
public TypeExtensionDirectiveRedefinitionError(TypeDefinition typeExtensionDefinition, Directive directive) { super(typeExtensionDefinition, format("The extension '%s' type %s has redefined the directive called '%s'", typeExtensionDefinition.getName(), BaseError.lineCol(typeExtensionDefinition), directive.getName() )); } }
public MissingInterfaceTypeError(String typeOfType, TypeDefinition typeDefinition, TypeName typeName) { super(typeDefinition, format("The %s type '%s' is not present when resolving type '%s' %s", typeOfType, typeName.getName(), typeDefinition.getName(), lineCol(typeDefinition))); } }
private static String formatMessage(TypeDefinition typeDefinition, String fieldName, AbstractNode<?> fieldDefinition) { return format("'%s' extension type %s tried to redefine field '%s' %s", typeDefinition.getName(), BaseError.lineCol(typeDefinition), fieldName, BaseError.lineCol(fieldDefinition) ); } }
public NotAnOutputTypeError(Type rawType, TypeDefinition typeDefinition) { super(rawType, format("The type '%s' %s is not an output type, but was used to declare the output type of a field %s", typeDefinition.getName(), lineCol(typeDefinition), lineCol(rawType))); } }
public NonUniqueNameError(TypeDefinition typeDefinition, FieldDefinition fieldDefinition) { super(typeDefinition, format("The type '%s' %s has declared a field with a non unique name '%s'", typeDefinition.getName(), lineCol(typeDefinition), fieldDefinition.getName())); }
public NonUniqueDirectiveError(TypeDefinition typeDefinition, EnumValueDefinition enumValueDefinition, String directiveName) { super(typeDefinition, format("The '%s' type with enum value '%s' %s has declared a directive with a non unique name '%s'", typeDefinition.getName(), enumValueDefinition.getName(), lineCol(typeDefinition), directiveName)); }
public InvalidDeprecationDirectiveError(TypeDefinition typeDefinition, EnumValueDefinition enumValueDefinition) { super(typeDefinition, format("The %s type with enum value '%s' %s has declared an invalid deprecation directive. Its must be @deprecated(reason : \"xyz\")", typeDefinition.getName(), enumValueDefinition.getName(), lineCol(typeDefinition))); }
public NotAnInputTypeError(Type rawType, TypeDefinition typeDefinition) { super(rawType, format("The type '%s' %s is not an input type, but was used as an input type %s", typeDefinition.getName(), lineCol(typeDefinition), lineCol(rawType))); } }
public NonUniqueDirectiveError(TypeDefinition typeDefinition, FieldDefinition fieldDefinition, String directiveName) { super(typeDefinition, format("The type '%s' with field '%s' %s has declared a directive with a non unique name '%s'", typeDefinition.getName(), fieldDefinition.getName(), lineCol(typeDefinition), directiveName)); }
public NonUniqueNameError(TypeDefinition typeDefinition, EnumValueDefinition enumValueDefinition) { super(typeDefinition, format("The type '%s' %s has declared an enum value with a non unique name '%s'", typeDefinition.getName(), lineCol(typeDefinition), enumValueDefinition.getName())); }
public NonUniqueArgumentError(TypeDefinition typeDefinition, FieldDefinition fieldDefinition, String argumentName) { super(typeDefinition, format("The type '%s' with field '%s' %s has declared an argument with a non unique name '%s'", typeDefinition.getName(), fieldDefinition.getName(), lineCol(typeDefinition), argumentName)); }
public InvalidDeprecationDirectiveError(TypeDefinition typeDefinition, FieldDefinition fieldDefinition) { super(typeDefinition, format("The type '%s' with field '%s' %s has declared an invalid deprecation directive. Its must be @deprecated(reason : \"xyz\")", typeDefinition.getName(), fieldDefinition.getName(), lineCol(typeDefinition))); }
public NonUniqueArgumentError(TypeDefinition typeDefinition, InputValueDefinition inputValueDefinition, String argumentName) { super(typeDefinition, format("The type '%s' with input value '%s' %s has declared an argument with a non unique name '%s'", typeDefinition.getName(), inputValueDefinition.getName(), lineCol(typeDefinition), argumentName)); }
public TypeExtensionEnumValueRedefinitionError(TypeDefinition typeDefinition, EnumValueDefinition enumValueDefinition) { super(typeDefinition, format("'%s' extension type %s tried to redefine enum value '%s' %s", typeDefinition.getName(), BaseError.lineCol(typeDefinition), enumValueDefinition.getName(), BaseError.lineCol(enumValueDefinition) )); } }