public static ISchemaBuilder BindResolver <TResolver>(
            this ISchemaBuilder builder,
            BindingBehavior bindingBehavior,
            Action <IBindResolver <TResolver> > configure)
            where TResolver : class
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }

            if (bindingBehavior == BindingBehavior.Explicit &&
                configure == null)
            {
                throw new ArgumentNullException(nameof(configure));
            }

            IResolverTypeBindingBuilder bindingBuilder =
                ResolverTypeBindingBuilder.New()
                .SetFieldBinding(bindingBehavior)
                .SetResolverType(typeof(TResolver));

            if (configure != null)
            {
                configure(new BindResolver <TResolver>(bindingBuilder));
            }

            return(builder.AddBinding(bindingBuilder.Create()));
        }
Ejemplo n.º 2
0
 public BindFieldResolver(
     IResolverTypeBindingBuilder typeBuilder,
     IResolverFieldBindingBuilder fieldBuilder)
 {
     _typeBuilder = typeBuilder
                    ?? throw new ArgumentNullException(nameof(typeBuilder));
     _fieldBuilder = fieldBuilder
                     ?? throw new ArgumentNullException(nameof(fieldBuilder));
 }
Ejemplo n.º 3
0
        public IBindResolver <TResolver> BindResolver <TResolver>(
            BindingBehavior bindingBehavior)
            where TResolver : class
        {
            IResolverTypeBindingBuilder builder =
                ResolverTypeBindingBuilder.New()
                .SetFieldBinding(bindingBehavior)
                .SetResolverType(typeof(TResolver));

            _bindingBuilders.Add(builder);
            return(new BindResolver <TResolver>(builder));
        }
Ejemplo n.º 4
0
 public BoundResolver(IResolverTypeBindingBuilder builder)
 {
     _builder = builder
                ?? throw new ArgumentNullException(nameof(builder));
 }
Ejemplo n.º 5
0
 public BindResolver(IResolverTypeBindingBuilder typeBuilder)
 {
     _typeBuilder = typeBuilder
                    ?? throw new ArgumentNullException(nameof(typeBuilder));
 }