private void SearchContact() { SearchCClientCapsula searchCapsula = TextEncoder.ReadJson <SearchCClientCapsula>(stream); SearchCServerCapsula ret; using (Context context = new Context(config)) { ret = new SearchCServerCapsula(context.Users .Where(u => u.Id == searchCapsula.UserId) .SingleOrDefault()); if (!ret.Succeeded) { ret = new SearchCServerCapsula(context.Users .Where(u => u.UserName == searchCapsula.UserName) .SingleOrDefault()); } if (!ret.Succeeded) { ret = new SearchCServerCapsula(context.Users .Where(u => u.PublicCertificateSha256 == searchCapsula.CertificateHash) .SingleOrDefault()); } } TextEncoder.SendJson(stream, ret); }
public SearchCServerCapsula SearchContact(SearchCClientCapsula searchCClientCapsula) { lock (mutex) { ThrowExceptionIfNotConnected(); BinaryEncoder.SendCommand(stream, ConnectionCommand.SEARCH_CONTACT); TextEncoder.SendJson(stream, searchCClientCapsula); return(TextEncoder.ReadJson <SearchCServerCapsula>(stream)); } }