public bool DeleteDisk(UserDto userDto, DiskDto diskDto) { Authenticate(userDto); Authenticate(userDto, diskDto); var disks = Persistence.Disks(userDto); if (disks == null) return false; return Persistence.RemoveDisk(diskDto); }
public SynchronizationState FetchSynchronizationState(UserDto userDto, DiskDto diskDto) { Authenticate(userDto); Authenticate(userDto, diskDto); var serverDisk = Persistence.FindDisk(diskDto); var localChanges = diskDto.LastServerVersion < diskDto.LocalVersion; var serverChanges = diskDto.LastServerVersion < serverDisk.LocalVersion; if (localChanges) return serverChanges ? SynchronizationState.Conflicted : SynchronizationState.LocalChanges; return serverChanges ? SynchronizationState.RemoteChanges : SynchronizationState.UpToDate; }
public DiskDto CreateDisk(UserDto userDto, DiskOptionsDto optionsDto) { if (userDto == null) throw new ArgumentNullException("userDto"); if (optionsDto == null) throw new ArgumentNullException("optionsDto"); var disk = new DiskDto { UserId = userDto.Id }; _db.Insert(disk); optionsDto.DiskId = disk.Id; _db.Insert(optionsDto); return disk; }
public void InitTestPersistence() { _testHelper = new TestHelper("../../Testfiles/DiskReadWriteTest"); _userDto = new UserDto { Login = "******", HashedPassword = "******" }; }
public DiskOptionsDto GetDiskOptions(UserDto userDto, DiskDto diskDto) { Authenticate(userDto); Authenticate(userDto, diskDto); return Persistence.LoadDiskOptions(diskDto.Id); }
public IList<DiskDto> Disks(UserDto userDto) { Authenticate(userDto); return Persistence.Disks(userDto); }
public DiskDto CreateDisk(UserDto userDto, DiskOptionsDto optionsDto) { Authenticate(userDto); return Persistence.CreateDisk(userDto, optionsDto); }
private void Authenticate(UserDto userDto, DiskDto diskDto) { var disk = Persistence.Disk(diskDto); diskDto.UserId = disk.UserId; if (diskDto.UserId != userDto.Id) ErrorOccured(string.Format("You don't have access to the disk {0}", diskDto.Id)); }
private void Authenticate(UserDto userDto) { var user = Login(userDto.Login, userDto.HashedPassword); userDto.Id = user.Id; }
public void WriteBlock(UserDto userDto, int diskId, long blockNr, byte[] content) { Authenticate(userDto); Authenticate(userDto, new DiskDto { Id = diskId }); using (var b = GetBlockManipulator(diskId)) { b.WriteBlock(blockNr, content); } }
public void UpdateDisk(UserDto userDto, DiskDto diskDto) { Authenticate(userDto); Authenticate(userDto, diskDto); Persistence.UpdateDisk(diskDto); }
public void SetDiskOptions(UserDto userDto, DiskDto diskDto, DiskOptionsDto optionsDto) { Authenticate(userDto); Authenticate(userDto, diskDto); Persistence.SaveDiskOptions(diskDto.Id, optionsDto); }
public byte[] ReadBlock(UserDto userDto, int diskId, long blockNr) { Authenticate(userDto); Authenticate(userDto, new DiskDto { Id = diskId }); using (var b = GetBlockManipulator(diskId)) { return b.ReadBlock(blockNr); } }
/// <summary> /// Creates a user. /// </summary> /// <param name="login">The login.</param> /// <param name="hashedPassword">The hashed password.</param> /// <returns></returns> public UserDto CreateUser(string login, string hashedPassword) { var u = new UserDto { Login = login, HashedPassword = hashedPassword }; _db.Insert(u); return u; }
public bool UserExists(UserDto userDto) { if (userDto == null) throw new ArgumentNullException("userDto"); return _db.Find<UserDto>(userDto.Id) != null; }
public IList<DiskDto> Disks(UserDto userDto) { if (userDto == null) throw new ArgumentNullException("userDto"); return _db.Table<DiskDto>().Where(d => d.UserId == userDto.Id).ToList(); }