protected DatabaseReader(string filename, IndexManager indexManager, IEnumerable<IWhereQueryConstraint> constraints, QueryMode queryMode = QueryMode.Auto) : base(null, constraints) { byteConverter = new ByteConverter(); this.filename = filename; this.indexManager = indexManager; this.queryMode = queryMode; }
public PracticeDatabaseReader(string filename, IndexManager indexManager, IEnumerable<IWhereQueryConstraint> constraints, QueryMode queryMode = QueryMode.Auto) : base(filename, indexManager, constraints, queryMode) { recordMetaData = new RecordMetaData(); recordMetaData.AddField("date", ColumnType.Int); recordMetaData.AddField("id", ColumnType.String, 6); recordMetaData.AddField("name", ColumnType.String, 40); recordMetaData.AddField("center_name", ColumnType.String, 40); recordMetaData.AddField("address", ColumnType.String, 40); recordMetaData.AddField("city", ColumnType.String, 40); recordMetaData.AddField("region", ColumnType.String, 40); recordMetaData.AddField("postal_code", ColumnType.String, 10); RecordWidth = recordMetaData.RecordWitdh; }
public ViewModel() { CreateDatabaseCommand = new DelegateCommand(CreateDatabase); CreateIndexCommand = new DelegateCommand(() => indexManager.CreateIndex("Practice")); WhereQueryCommand = new DelegateCommand(IndexedQuery); SequentialWhereQueryCommand = new DelegateCommand(SequentialQuery); CountQueryCommand = new DelegateCommand(() => CountQuery("London")); PeppermintQueryCommand = new DelegateCommand(() => AverageQuery("Peppermint Oil")); PostcodesQueryCommand = new DelegateCommand(PostcodeQuery); RegionAverageQueryCommand = new DelegateCommand(RegionQuery); fileSystemScanner = new FileSystemScanner(); indexManager = new IndexManager(fileSystemScanner); DatabaseCreated = fileSystemScanner.DatabaseExists("orders"); IndexOn = String.Join(", ", indexManager.AvailableIndices()); }
public OrderDatabaseReader(string filename, IndexManager indexManager, QueryMode queryMode, IEnumerable<IWhereQueryConstraint> constraints) : base(filename, indexManager, constraints, queryMode) { recordMetaData = new RecordMetaData { ColumnDescriptors = new Dictionary<string, ColumnData> { {"sha", new ColumnData {Offset = 0, Width = 4, Type = ColumnType.String}}, {"pct", new ColumnData {Offset = 4, Width = 4, Type = ColumnType.String}}, {"practice", new ColumnData {Offset = 8, Width = 6, Type = ColumnType.String}}, {"bnf_code", new ColumnData {Offset = 14, Width = 10, Type = ColumnType.String}}, {"bnf_name", new ColumnData {Offset = 24, Width = 40, Type = ColumnType.String}}, {"items", new ColumnData {Offset = 64, Width = sizeof (int), Type = ColumnType.Int}}, { "nic", new ColumnData {Offset = 64 + sizeof (int), Width = sizeof (float), Type = ColumnType.Float} }, { "cost", new ColumnData { Offset = 64 + sizeof (int) + sizeof (float), Width = sizeof (float), Type = ColumnType.Float } }, { "period", new ColumnData { Offset = 64 + sizeof (int) + sizeof (float) + sizeof (int), Width = sizeof (int), Type = ColumnType.Int } } } }; RecordWidth = recordMetaData.RecordWitdh; }