public FlexibleStructureBuilder() { _typeConfigurations = new StructureTypeConfigurations(); _typeFactory = new StructureTypeFactory(); _schemaFactory = new StructureSchemaFactory(); _indexesFactory = new StructureIndexesFactory(); _schemas = new ConcurrentDictionary <Type, IStructureSchema>(); }
public StructureSchemas(IStructureTypeFactory structureTypeFactory, IStructureSchemaBuilder structureSchemaBuilder) { Ensure.That(structureTypeFactory, "structureTypeFactory").IsNotNull(); Ensure.That(structureSchemaBuilder, "StructureSchemaBuilder").IsNotNull(); StructureTypeFactory = structureTypeFactory; StructureSchemaBuilder = structureSchemaBuilder; _schemas = new ConcurrentDictionary <Type, IStructureSchema>(); _schemaFactoryFn = t => StructureSchemaBuilder.CreateSchema(StructureTypeFactory.CreateFor(t)); }