Example #1
0
        public bool Search()
        {
            var client  = new SearchProviderClient(QuelleControlConfig.search.host);
            var request = new QRequestSearch(this.statement);             // (IQuelleSearchRequest)
            IQuelleSearchResult response = client.api.Search(request);

            return(response != null && response.messages.Count == 0);
        }
Example #2
0
        public bool Search(ISearchProvider provider)
        {
            var request = new QRequestSearch(this.statement);             // (IQuelleSearchRequest)
            IQuelleSearchResult response = provider != null?provider.Search(request) : null;

            if (response != null)
            {
                var messages = response.messages;
                var errors   = new List <String>();
                var warnings = new List <String>();

                if (messages != null)
                {
                    foreach (var entry in messages)
                    {
                        if (entry.Key == "errors")
                        {
                            foreach (var message in entry.Value)
                            {
                                if (!errors.Contains(message))
                                {
                                    errors.Add(message);
                                }
                            }
                        }
                    }
                    foreach (var entry in messages)
                    {
                        if (entry.Key != "errors")
                        {
                            foreach (var message in entry.Value)
                            {
                                if (!warnings.Contains(message))
                                {
                                    warnings.Add(message);
                                }
                            }
                        }
                    }

                    foreach (var error in errors)
                    {
                        Console.Out.WriteLine("Error: " + error);
                    }

                    foreach (var warning in warnings)
                    {
                        Console.Out.WriteLine("Warning: " + warning);
                    }
                }
            }
            if (errors.Count == 0 && response.matches != null)
            {
                foreach (var book in response.matches)
                {
                    UInt16 b        = book.Key;
                    var    chapters = response.matches[book.Key];
                    foreach (var chapter in book.Value)
                    {
                        UInt16 c      = chapter.Key;
                        var    verses = Quelle.DriverDefault.Utility.ExpandBitArray(chapter.Value);
                        foreach (var verse in verses)
                        {
                            UInt16 v = verse;
                            Console.Out.WriteLine(b.ToString() + ':' + c.ToString() + ':' + v.ToString());
                        }
                    }
                }
            }

            return(response != null && (response.messages == null || response.messages.Count == 0));
        }