Пример #1
0
        public IBindFieldResolver <TResolver> Resolve(NameString fieldName)
        {
            IResolverFieldBindingBuilder builder =
                ResolverFieldBindingBuilder.New()
                .SetField(fieldName);

            return(new BindFieldResolver <TResolver>(_builder, builder));
        }
Пример #2
0
 public BindFieldResolver(
     IResolverTypeBindingBuilder typeBuilder,
     IResolverFieldBindingBuilder fieldBuilder)
 {
     _typeBuilder = typeBuilder
                    ?? throw new ArgumentNullException(nameof(typeBuilder));
     _fieldBuilder = fieldBuilder
                     ?? throw new ArgumentNullException(nameof(fieldBuilder));
 }
        public IResolverTypeBindingBuilder AddField(
            IResolverFieldBindingBuilder builder)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }

            if (!builder.IsComplete())
            {
                // TODO : resources
                throw new ArgumentException("notcompleted", nameof(builder));
            }

            if (builder is ResolverFieldBindingBuilder b)
            {
                _bindingInfo.Fields = _bindingInfo.Fields.Add(b.Create());
                return(this);
            }

            // TODO : resources
            throw new NotSupportedException("builder not supported");
        }
        public IResolverTypeBindingBuilder AddField(
            IResolverFieldBindingBuilder builder)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }

            if (!builder.IsComplete())
            {
                throw new ArgumentException(
                          TypeResources.ResolverTypeBindingBuilder_FieldNotComplete,
                          nameof(builder));
            }

            if (builder is ResolverFieldBindingBuilder b)
            {
                _fields.Add(b);
                return(this);
            }

            throw new NotSupportedException(
                      TypeResources.ResolverTypeBindingBuilder_FieldBuilderNotSupported);
        }