public List<Result> Query(Query query) { if (query == null) throw new ArgumentNullException("query", "query is null."); if (query.ActionParameters.Count < 1) return ShowUsage(query); _context.API.StartLoadingBar(); BaseSynonymService service; service = new ThesaurusSynonymService(_settings, _context); try { string queryString = service.GetQueryString(query.GetAllRemainingParameter()); var response = service.GetResponse(queryString); return service.TransformResponseToResults(response); } finally { _context.API.StopLoadingBar(); } }