mirror of
https://git.ianrenton.com/ian/spothole.git
synced 2026-09-21 14:57:42 +00:00
Autogenerated type safety parameterisation of all methods
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
from __future__ import annotations
|
||||
|
||||
import logging
|
||||
import re
|
||||
import threading
|
||||
@@ -11,6 +13,7 @@ from tornado.web import Application
|
||||
from core.activity_utils import get_ref_regex_for_activity
|
||||
from core.config import ALLOW_SPOTTING, ALLOW_UPSTREAM_SPOTTING, RECAPTCHA_SECRET_KEY
|
||||
from core.constants import UNKNOWN_BAND
|
||||
from core.live_data_cache import LiveDataCache
|
||||
from core.utils import infer_band_from_freq, safe_json_dumps
|
||||
from data.spot import Spot
|
||||
from providers.spot.spot_provider import SpotProvider
|
||||
@@ -25,19 +28,19 @@ class APISpotHandler(tornado.web.RequestHandler):
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
application: "Application",
|
||||
application: Application,
|
||||
request: httputil.HTTPServerRequest,
|
||||
**kwargs: Any,
|
||||
):
|
||||
self._spots = None
|
||||
self._spot_providers = None
|
||||
) -> None:
|
||||
self._spots: LiveDataCache | None = None
|
||||
self._spot_providers: list[SpotProvider] | None = None
|
||||
super().__init__(application, request, **kwargs)
|
||||
|
||||
def initialize(self, spots, spot_providers=None):
|
||||
def initialize(self, spots: LiveDataCache, spot_providers: list[SpotProvider] | None = None) -> None:
|
||||
self._spots = spots
|
||||
self._spot_providers = spot_providers or []
|
||||
|
||||
def post(self):
|
||||
def post(self) -> None:
|
||||
try:
|
||||
# Reject if not allowed
|
||||
if not ALLOW_SPOTTING:
|
||||
@@ -241,7 +244,7 @@ class APISpotHandler(tornado.web.RequestHandler):
|
||||
self.set_header("Cache-Control", "no-store")
|
||||
self.set_header("Content-Type", "application/json")
|
||||
|
||||
def _find_provider(self, provider_name, activity) -> SpotProvider | None:
|
||||
def _find_provider(self, provider_name: str, activity: str) -> SpotProvider | None:
|
||||
"""Find an enabled provider by name that can submit spots for the given activity."""
|
||||
|
||||
for p in self._spot_providers:
|
||||
@@ -250,7 +253,7 @@ class APISpotHandler(tornado.web.RequestHandler):
|
||||
return None
|
||||
|
||||
@staticmethod
|
||||
def _verify_recaptcha(token):
|
||||
def _verify_recaptcha(token: str) -> bool:
|
||||
"""Verify a Google reCAPTCHA v2 token. Returns True if valid."""
|
||||
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user