public static IError CouldNotCreateFilterForOperation <T>( IFilterField field, IValueNode value, IFilterVisitorContext <T> context) { IFilterInputType filterType = context.Types.OfType <IFilterInputType>().First(); return(ErrorBuilder.New() .SetMessage( DataResources.CouldNotCreateFilterForOperation, context.Operations.Peek().Name, filterType.Print()) .AddLocation(value) .SetExtension("expectedType", new NonNullType(field.Type).Print()) .SetExtension("filterType", filterType.Print()) .Build()); }
private static void CompileMiddleware( ICompletionContext context, ObjectFieldDefinition definition, ITypeReference argumentTypeReference, FieldMiddleware placeholder) { IFilterConvention convention = context.DescriptorContext.GetFilterConvention(); IFilterInputType type = context.GetType <IFilterInputType>(argumentTypeReference); Type middlewareType = _middlewareDefinition.MakeGenericType(type.EntityType); FieldMiddleware middleware = FieldClassMiddlewareFactory.Create(middlewareType, FilterMiddlewareContext.Create(convention)); var index = definition.MiddlewareComponents.IndexOf(placeholder); definition.MiddlewareComponents[index] = middleware; }
public static IError CreateNonNullError <T>( IFilterField field, IValueNode value, IFilterVisitorContext <T> context) { IFilterInputType filterType = context.Types.OfType <IFilterInputType>().First(); return(ErrorBuilder.New() .SetMessage( DataResources.ErrorHelper_CreateNonNullError, context.Operations.Peek().Name, filterType.Visualize()) .AddLocation(value) .SetCode(ErrorCodes.Data.NonNullError) .SetExtension("expectedType", new NonNullType(field.Type).Visualize()) .SetExtension("filterType", filterType.Visualize()) .Build()); }
public static IError CreateNonNullError <T>( IFilterField field, IValueNode value, IFilterVisitorContext <T> context) { IFilterInputType filterType = context.Types.OfType <IFilterInputType>().First(); return(ErrorBuilder.New() .SetMessage( "The provided value for filter `{0}` of type {1} is invalid. " + "Null values are not supported.", context.Operations.Peek().Name, filterType.Visualize()) .AddLocation(value) .SetExtension("expectedType", new NonNullType(field.Type).Visualize()) .SetExtension("filterType", filterType.Visualize()) .Build()); }
private static void CompileMiddleware( ITypeCompletionContext context, ObjectFieldDefinition definition, ITypeReference argumentTypeReference, FieldMiddleware placeholder, string?scope) { IFilterInputType type = context.GetType <IFilterInputType>(argumentTypeReference); IFilterConvention convention = context.DescriptorContext.GetFilterConvention(scope); var fieldDescriptor = ObjectFieldDescriptor.From(context.DescriptorContext, definition); convention.ConfigureField(fieldDescriptor); MethodInfo factory = _factoryTemplate.MakeGenericMethod(type.EntityType.Source); var middleware = (FieldMiddleware)factory.Invoke(null, new object[] { convention }) !; var index = definition.MiddlewareComponents.IndexOf(placeholder); definition.MiddlewareComponents[index] = middleware; }
protected ISchema CreateSchemaWith( IFilterInputType type, FilterConvention convention, params FilterConventionExtension[] extensions) { ISchemaBuilder builder = SchemaBuilder.New() .AddConvention <IFilterConvention>(convention) .AddFiltering() .AddQueryType( c => c.Name("Query") .Field("foo") .Type <StringType>() .Resolver("bar")) .AddType(type); foreach (var extension in extensions) { builder.AddConvention <IFilterConvention>(extension); } return(builder.Create()); }
public ExecutorBuilder(IFilterInputType inputType) { _inputType = inputType; }
public Neo4JFilterVisitorContext(IFilterInputType initialType) : base(initialType) { RuntimeTypes = new Stack <IExtendedType>(); RuntimeTypes.Push(initialType.EntityType); }