private ICommand StorageEngineOpenXIndex(ICommand command) { StorageEngineOpenXIndexCommand cmd = (StorageEngineOpenXIndexCommand)command; StorageEngine.OpenXTable(cmd.Name, cmd.KeyType, cmd.RecordType); IDescriptor locator = StorageEngine[cmd.Name]; return(new StorageEngineOpenXIndexCommand(locator.ID)); }
public ITable <IData, IData> OpenXTable(string name, DataType keyType, DataType recordType) { var cmd = new StorageEngineOpenXIndexCommand(name, keyType, recordType); InternalExecute(cmd); var descriptor = new Descriptor(cmd.ID, name, keyType, recordType); var index = new XTableRemote(this, descriptor); indexes.TryAdd(name, index); return(index); }