expose sde
This commit is contained in:
33
api/esi.py
33
api/esi.py
@@ -1,33 +0,0 @@
|
||||
import datetime
|
||||
import os
|
||||
import redis
|
||||
import pickle
|
||||
from esy.client import ESIClient
|
||||
from esy.auth import ESIAuthenticator
|
||||
|
||||
|
||||
class ESICache(object):
|
||||
def __init__(self, **kwargs):
|
||||
self._r = redis.Redis(**kwargs)
|
||||
# self._r = redis.StrictRedis(host=redis_url, port=redis_port, db=db)
|
||||
|
||||
def get(self, key):
|
||||
# return pickle.loads(self._r[key])
|
||||
return pickle.loads(self._r.get(key))
|
||||
|
||||
def set(self, key, data, cached_until: datetime.datetime):
|
||||
self._r.set(key, pickle.dumps(data), ex=cached_until - datetime.datetime.now(datetime.timezone.utc))
|
||||
|
||||
def __contains__(self, item):
|
||||
# return item in self._r
|
||||
return self._r.exists(item)
|
||||
|
||||
|
||||
esi_client_id = os.getenv('ESI_CLIENT_ID')
|
||||
esi_secret_key = os.getenv('ESI_SECRET_KEY')
|
||||
|
||||
esi_cache = ESICache(host=os.getenv("REDIS_URL"), port=int(os.getenv("REDIS_PORT")), db="0",
|
||||
password=os.getenv("REDIS_PASSWD"))
|
||||
|
||||
esi_client = ESIClient.get_client(user_agent=os.getenv('ESI_USER_AGENT'), cache=esi_cache)
|
||||
esi_auth = ESIAuthenticator()
|
||||
52
api/serializers_sde.py
Normal file
52
api/serializers_sde.py
Normal file
@@ -0,0 +1,52 @@
|
||||
from api.models_sde import *
|
||||
from rest_framework import serializers
|
||||
|
||||
|
||||
class SDEIconSerializer(serializers.HyperlinkedModelSerializer):
|
||||
class Meta:
|
||||
model = SDEIcon
|
||||
# fields = ['id', 'iconFile', 'description']
|
||||
fields = "__all__"
|
||||
|
||||
|
||||
class SDECategorySerializer(serializers.HyperlinkedModelSerializer):
|
||||
class Meta:
|
||||
model = SDECategory
|
||||
# fields = ['id', 'icon', 'name', 'published']
|
||||
fields = "__all__"
|
||||
|
||||
|
||||
class SDEGroupSerializer(serializers.HyperlinkedModelSerializer):
|
||||
class Meta:
|
||||
model = SDEGroup
|
||||
# fields = ['id', 'category', 'name', 'published', 'useBasePrice', 'fittableNonSingleton', 'anchored', 'anchorable', 'icon']
|
||||
fields = "__all__"
|
||||
|
||||
|
||||
class SDEMarektGroupSerializer(serializers.HyperlinkedModelSerializer):
|
||||
class Meta:
|
||||
model = SDEMarektGroup
|
||||
# fields = ['id', 'icon', 'name', 'description', 'hasTypes', 'parent_marketgroup']
|
||||
fields = "__all__"
|
||||
|
||||
|
||||
class SDEMetaGroupSerializer(serializers.HyperlinkedModelSerializer):
|
||||
class Meta:
|
||||
model = SDEMetaGroup
|
||||
# fields = ['id', 'icon', 'name', 'iconSuffix']
|
||||
fields = "__all__"
|
||||
|
||||
|
||||
class SDETypeSerializer(serializers.HyperlinkedModelSerializer):
|
||||
class Meta:
|
||||
model = SDEType
|
||||
# fields = ['id', 'group', 'marketgroup', 'metagroup', 'name', 'description', 'published', 'basePrice', 'icon', 'volume', 'portionSize', 'materials']
|
||||
fields = "__all__"
|
||||
|
||||
|
||||
class SDETypeMaterialSerializer(serializers.HyperlinkedModelSerializer):
|
||||
class Meta:
|
||||
model = SDETypeMaterial
|
||||
# fields = ['type', 'material', 'quantity']
|
||||
fields = "__all__"
|
||||
|
||||
47
api/views_sde.py
Normal file
47
api/views_sde.py
Normal file
@@ -0,0 +1,47 @@
|
||||
from api.models_sde import *
|
||||
from api.serializers_sde import *
|
||||
from rest_framework import viewsets
|
||||
|
||||
|
||||
class SDEIconViewSet(viewsets.ModelViewSet):
|
||||
queryset = SDEIcon.objects.all()
|
||||
serializer_class = SDEIconSerializer
|
||||
# permission_classes = [permissions.IsAuthenticated]
|
||||
|
||||
|
||||
class SDECategoryViewSet(viewsets.ModelViewSet):
|
||||
queryset = SDECategory.objects.all()
|
||||
serializer_class = SDECategorySerializer
|
||||
# permission_classes = [permissions.IsAuthenticated]
|
||||
|
||||
|
||||
class SDEGroupViewSet(viewsets.ModelViewSet):
|
||||
queryset = SDEGroup.objects.all()
|
||||
serializer_class = SDEGroupSerializer
|
||||
# permission_classes = [permissions.IsAuthenticated]
|
||||
|
||||
|
||||
class SDEMarketGroupViewSet(viewsets.ModelViewSet):
|
||||
queryset = SDEMarektGroup.objects.all()
|
||||
serializer_class = SDEMarektGroupSerializer
|
||||
# permission_classes = [permissions.IsAuthenticated]
|
||||
|
||||
|
||||
class SDEMetaGroupViewSet(viewsets.ModelViewSet):
|
||||
queryset = SDEMetaGroup.objects.all()
|
||||
serializer_class = SDEMetaGroupSerializer
|
||||
# permission_classes = [permissions.IsAuthenticated]
|
||||
|
||||
|
||||
class SDETypeViewSet(viewsets.ModelViewSet):
|
||||
queryset = SDEType.objects.all()
|
||||
serializer_class = SDETypeSerializer
|
||||
# permission_classes = [permissions.IsAuthenticated]
|
||||
|
||||
|
||||
class SDETypeMaterialViewSet(viewsets.ModelViewSet):
|
||||
queryset = SDETypeMaterial.objects.all()
|
||||
serializer_class = SDETypeMaterialSerializer
|
||||
# permission_classes = [permissions.IsAuthenticated]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user