27 lines
623 B
Python
27 lines
623 B
Python
|
from abc import ABC
|
||
|
|
||
|
from core.models import Source
|
||
|
from core.util import logs
|
||
|
|
||
|
log = logs.get_logger("graphql")
|
||
|
|
||
|
|
||
|
class GraphQLClient(ABC):
|
||
|
"""
|
||
|
GraphQL API handler.
|
||
|
"""
|
||
|
|
||
|
async def connect(self):
|
||
|
try:
|
||
|
source = Source.objects.get(name=self.source_name)
|
||
|
except Source.DoesNotExist:
|
||
|
source = Source(
|
||
|
name=self.source_name,
|
||
|
type=self.source_type,
|
||
|
endpoint=self.source_endpoint,
|
||
|
score=self.source_score,
|
||
|
)
|
||
|
source.save()
|
||
|
self.url = source.endpoint
|
||
|
self.source = source
|