add (cached) /api/datapackge endpoint

This commit is contained in:
Fabian Dill 2021-07-21 22:55:44 +02:00
parent 2fc4006dfa
commit 312f13e254
2 changed files with 11 additions and 3 deletions

View File

@ -6,7 +6,7 @@ import logging
import json import json
import functools import functools
from collections import OrderedDict, Counter, deque from collections import OrderedDict, Counter, deque
from typing import List, Dict, Optional, Set, Iterable, Union from typing import List, Dict, Optional, Set, Iterable, Union, Any
import secrets import secrets
import random import random
@ -23,7 +23,7 @@ class MultiWorld():
plando_items: List plando_items: List
plando_connections: List plando_connections: List
er_seeds: Dict[int, str] er_seeds: Dict[int, str]
worlds: Dict[int, "AutoWorld.World"] worlds: Dict[int, Any]
is_race: bool = False is_race: bool = False
class AttributeProxy(): class AttributeProxy():

View File

@ -4,14 +4,15 @@ from uuid import UUID
from flask import Blueprint, abort from flask import Blueprint, abort
from ..models import Room from ..models import Room
from .. import cache
api_endpoints = Blueprint('api', __name__, url_prefix="/api") api_endpoints = Blueprint('api', __name__, url_prefix="/api")
from . import generate, user # trigger registration from . import generate, user # trigger registration
# unsorted/misc endpoints # unsorted/misc endpoints
@api_endpoints.route('/room_status/<suuid:room>') @api_endpoints.route('/room_status/<suuid:room>')
def room_info(room: UUID): def room_info(room: UUID):
room = Room.get(id=room) room = Room.get(id=room)
@ -22,3 +23,10 @@ def room_info(room: UUID):
"last_port": room.last_port, "last_port": room.last_port,
"last_activity": room.last_activity, "last_activity": room.last_activity,
"timeout": room.timeout} "timeout": room.timeout}
@api_endpoints.route('/datapackage')
@cache.cached()
def get_datapackge():
from worlds import network_data_package
return network_data_package