tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

serializer.py (1572B)


      1 # mypy: allow-untyped-defs
      2 
      3 from datetime import datetime
      4 
      5 
      6 def serialize_session(session):
      7    return {
      8        "token": session.token,
      9        "types": session.test_types,
     10        "user_agent": session.user_agent,
     11        "labels": session.labels,
     12        "timeouts": session.timeouts,
     13        "test_state": session.test_state,
     14        "last_completed_test": session.last_completed_test,
     15        "tests": session.tests,
     16        "pending_tests": session.pending_tests,
     17        "running_tests": session.running_tests,
     18        "status": session.status,
     19        "browser": session.browser,
     20        "date_created": millis_to_iso(session.date_created),
     21        "date_started": millis_to_iso(session.date_started),
     22        "date_finished": millis_to_iso(session.date_finished),
     23        "is_public": session.is_public,
     24        "reference_tokens": session.reference_tokens,
     25        "expiration_date": millis_to_iso(session.expiration_date),
     26        "type": session.type,
     27        "malfunctioning_tests": session.malfunctioning_tests
     28    }
     29 
     30 def serialize_sessions(sessions):
     31    serialized_sessions = []
     32    for session in sessions:
     33        serialized_sessions.append(serialize_session(session))
     34    return serialized_sessions
     35 
     36 def serialize_device(device):
     37    return {
     38        "token": device.token,
     39        "user_agent": device.user_agent,
     40        "name": device.name,
     41        "last_active": millis_to_iso(device.last_active)
     42    }
     43 
     44 def millis_to_iso(millis):
     45    if millis is None:
     46        return None
     47    return datetime.utcfromtimestamp(millis/1000.0).isoformat() + "+00:00"