diff --git a/swh/lister/core/lister_transports.py b/swh/lister/core/lister_transports.py --- a/swh/lister/core/lister_transports.py +++ b/swh/lister/core/lister_transports.py @@ -7,7 +7,6 @@ from datetime import datetime from email.utils import parsedate from pprint import pformat -from xmlrpc import client import requests import xmltodict @@ -21,62 +20,6 @@ from .lister_base import FetchError -class ListerXMLRPCTransport(abc.ABC): - """Use the xmlrpc library for making Lister endpoint requests. - - To be used in conjunction with SWHListerBase or a subclass of it. - """ - SERVER = AbstractAttribute('string containing the server to contact for ' - 'information') - - def __init__(self): - self.lister_version = __version__ - - def get_client(self, path): - """Initialize client to query for result - - """ - return client.ServerProxy(path) - - def request_uri(self, _): - """Same uri called once - - """ - return self.SERVER - - def request_params(self, identifier): - """Cannot pass any parameters to query to the xmlrpc client so cannot - even pass our user-agent specifics. - - """ - return {} - - def transport_quota_check(self, response): - """No rate limit dealing explained. - - """ - return False, 0 - - def transport_request(self, identifier): - """Implements SWHListerBase.transport_request - - """ - path = self.request_uri(identifier) - try: - return self.get_client(path) - except Exception as e: - raise FetchError(e) - - def transport_response_to_string(self, response): - """Implements SWHListerBase.transport_response_to_string for XMLRPC - given responses. - - """ - s = pformat(self.SERVER) - s += '\n#\n' + pformat(response) # Note: will potentially be big - return s - - class SWHListerHttpTransport(abc.ABC): """Use the Requests library for making Lister endpoint requests. diff --git a/swh/lister/core/models.py b/swh/lister/core/models.py --- a/swh/lister/core/models.py +++ b/swh/lister/core/models.py @@ -36,29 +36,9 @@ task_id = Column(Integer) origin_id = Column(Integer) - def __init__(self, uid=None, name=None, full_name=None, - html_url=None, origin_url=None, origin_type=None, - description=None, task_id=None, origin_id=None): - self.uid = uid - self.last_seen = datetime.now() - - if name is not None: - self.name = name - if full_name is not None: - self.full_name = full_name - if html_url is not None: - self.html_url = html_url - if origin_url is not None: - self.origin_url = origin_url - if origin_type is not None: - self.origin_type = origin_type - if description is not None: - self.description = description - - if task_id is not None: - self.task_id = task_id - if origin_id is not None: - self.origin_id = origin_id + def __init__(self, **kw): + kw['last_seen'] = datetime.now() + super().__init__(**kw) class IndexingModelBase(ModelBase, metaclass=ABCSQLMeta): @@ -68,15 +48,3 @@ # The value used for sorting, segmenting, or api query paging, # because uids aren't always sequential. indexable = AbstractAttribute('Column(, index=True)') - - def __init__(self, uid=None, name=None, full_name=None, - html_url=None, origin_url=None, origin_type=None, - description=None, task_id=None, origin_id=None, - indexable=None): - super().__init__( - uid=uid, name=name, full_name=full_name, html_url=html_url, - origin_url=origin_url, origin_type=origin_type, - description=description, task_id=task_id, origin_id=origin_id) - - if indexable is not None: - self.indexable = indexable diff --git a/swh/lister/github/models.py b/swh/lister/github/models.py --- a/swh/lister/github/models.py +++ b/swh/lister/github/models.py @@ -13,8 +13,4 @@ uid = Column(Integer, primary_key=True) indexable = Column(Integer, index=True) - fork = Column(Boolean) - - def __init__(self, *args, **kwargs): - self.fork = kwargs.pop('fork', False) - super().__init__(*args, **kwargs) + fork = Column(Boolean, default=False) diff --git a/swh/lister/gitlab/models.py b/swh/lister/gitlab/models.py --- a/swh/lister/gitlab/models.py +++ b/swh/lister/gitlab/models.py @@ -15,14 +15,3 @@ uid = Column(String, primary_key=True) instance = Column(String, index=True) - - def __init__(self, uid=None, indexable=None, name=None, - full_name=None, html_url=None, origin_url=None, - origin_type=None, description=None, task_id=None, - origin_id=None, instance=None): - super().__init__(uid=uid, name=name, - full_name=full_name, html_url=html_url, - origin_url=origin_url, origin_type=origin_type, - description=description, task_id=task_id, - origin_id=origin_id) - self.instance = instance