Exemple #1
0
        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));
            }
        }