public IEntitySetBuilder InitializeSet(
            IBindableModelBuilder modelBuilder,
            IEntityTypeBuilder entityTypeBuilder,
            ISignature signature,
            IEnumerable <string> entityTypes,
            string space)
        {
            var entitySetBuilder =
                modelBuilder.CreateEntitySetBuilder(this.GetSetName(signature), entityTypeBuilder)
                .WithSupportedOperations(Operation.Get | Operation.Post | Operation.Patch);

            modelBuilder.WithBinding(entitySetBuilder, this.CreateEntitySetBinding(signature, entityTypes, space));
            return(entitySetBuilder);
        }
        public IEntitySetBuilder InitializeSingleton(
            IBindableModelBuilder modelBuilder,
            IEntityTypeBuilder entityTypeBuilder,
            ISignature signature,
            IEnumerable <string> entityTypes,
            string space)
        {
            var singletonBuilder =
                modelBuilder.CreateEntitySetBuilder(this.GetSetName(signature), entityTypeBuilder)
                .AsSingleton()
                .WithSupportedOperations(Operation.Get | Operation.Patch);

            modelBuilder.WithBinding(
                singletonBuilder,
                new SignatureSingletonBinding(this.factonQueryService, this.queryBuilderFactory, signature, entityTypes, space));

            return(singletonBuilder);
        }