try: data_str = json.dumps(data) except ValueError as e: logger.error('Invalid JSON data: %s' % data_str) raise access_stats_thrift.ValueError(str(e)) return data_str def document(self, code, collection): try: data = self._stats.document(code, collection) except ValueError as err: logger.error('Server Error: %s' % data_str) raise access_stats_thrift.ServerError( 'Fail to retrieve data from server: %s' % err.message) except access_stats_thrift.ServerError as e: logger.exception(e) raise access_stats_thrift.ServerError('Unknow Server Error') except Exception as e: logger.exception(e) raise access_stats_thrift.ServerError('Unknow Server Error') result = json.dumps(data) return result main = thriftpywrap.ConsoleApp(access_stats_thrift.AccessStats, Dispatcher)
logger.exception(e) raise citedby_thrift.ServerError( 'Server Error: controller.query_by_pid(%s, %s)' % (query, metaonly)) def citedby_doi(self, query, metaonly): try: return json.dumps( self._controller.query_by_doi(query, metaonly=metaonly)) except Exception as e: logger.exception(e) raise citedby_thrift.ServerError( 'Server Error: controller.query_by_doi(%s, %s)' % (query, metaonly)) def citedby_meta(self, title, author_surname, year, metaonly): try: return json.dumps( self._controller.query_by_meta(title, author_surname, year, metaonly=metaonly)) except Exception as e: logger.exception(e) raise citedby_thrift.ServerError( 'Server Error: controller.citedbymeta(%s, %s, %s, %s)' % (title, author_surname, year, metaonly)) main = thriftpywrap.ConsoleApp(citedby_thrift.Citedby, Dispatcher)
return False def exists_article(self, code, collection): try: return self._databroker.exists_article(code, collection) except: raise articlemeta_thrift.ServerError( 'Server error: DataBroker.exists_article') return False def exists_issue(self, code, collection): try: return self._databroker.exists_issue(code, collection) except: raise articlemeta_thrift.ServerError( 'Server error: DataBroker.exists_issue') return False def exists_journal(self, code, collection): try: return self._databroker.exists_journal(code, collection) except: raise articlemeta_thrift.ServerError( 'Server error: DataBroker.exists_journal') return False main = thriftpywrap.ConsoleApp(articlemeta_thrift.ArticleMeta, Dispatcher)
count=item['doc_count']) for item in data['aff_countries']['buckets'] ] except: raise publication_stats_thrift.ServerError( 'Fail to retrieve data from server') return result def document_types(self, filters=None): data = self._stats_dispatcher('article', aggs=['document_type'], filters=filters) try: result = [ publication_stats_thrift.aggs(key=item['key'], count=item['doc_count']) for item in data['document_type']['buckets'] ] except: raise publication_stats_thrift.ServerError( 'Fail to retrieve data from server') return result main = thriftpywrap.ConsoleApp(publication_stats_thrift.PublicationStats, Dispatcher)