예제 #1
0
        private static InputFieldDefinition CreateDefinition(
            IDescriptorContext context,
            string?scope,
            InputObjectType filterType)
        {
            FilterOperationFieldDefinition?definition = FilterOperationFieldDescriptor
                                                        .New(context, scope, Operations.Or)
                                                        .CreateDefinition();

            definition.Type = new SchemaTypeReference(
                new ListType(new NonNullType(filterType)));

            return(definition);
        }
        /// <inheritdoc />
        public IFilterOperationFieldDescriptor Operation(int operationId)
        {
            FilterOperationFieldDescriptor?fieldDescriptor =
                Operations.FirstOrDefault(t => t.Definition.Id == operationId);

            if (fieldDescriptor is null)
            {
                fieldDescriptor = FilterOperationFieldDescriptor.New(
                    Context,
                    operationId,
                    Definition.Scope);
                Operations.Add(fieldDescriptor);
            }

            return(fieldDescriptor);
        }
        /// <inheritdoc />
        public IFilterInputTypeDescriptor Ignore(int operationId)
        {
            FilterOperationFieldDescriptor?fieldDescriptor =
                Operations.FirstOrDefault(t => t.Definition.Id == operationId);

            if (fieldDescriptor is null)
            {
                fieldDescriptor = FilterOperationFieldDescriptor.New(
                    Context,
                    operationId,
                    Definition.Scope);
                Operations.Add(fieldDescriptor);
            }

            fieldDescriptor.Ignore();
            return(this);
        }
예제 #4
0
 private static InputFieldDefinition CreateDefinition(
     IDescriptorContext context,
     string?scope) =>
 FilterOperationFieldDescriptor
 .New(context, DefaultOperations.Or, scope)
 .CreateDefinition();