1
0
mirror of https://github.com/EDCD/EDMarketConnector.git synced 2025-04-14 08:17:13 +03:00

CAPI: Avoid '... EDO Settlement?' for 'Update' in space

1. Logged out in space
2. Logged back in
3. Run EDMC
4. Hit Update button, get "Docked but unknown station: EDO Settlement?"

In investigating this I realised that the entire else needed to be "if
docked according to CAPI".

Then it became clear that there was a redundant conditional, as the
enclosing one is already testing:

`capi_response.capi_data['lastStarport']['name'] != monitor.station:`

Making the:

`if last_station != monitor.station`

conditional un-necessary.
This commit is contained in:
Athanasius 2021-10-20 14:50:03 +01:00
parent 3e046c1f65
commit 3f0f1fe39f
No known key found for this signature in database
GPG Key ID: AE3E527847057C7D

View File

@ -1072,24 +1072,13 @@ class AppWindow(object):
f"{monitor.state['OnFoot']!r} and {monitor.station!r}")
raise companion.ServerLagging()
else:
last_station = None
if capi_response.capi_data['commander']['docked']:
last_station = capi_response.capi_data['lastStarport']['name']
if monitor.station is None:
# Likely (re-)Embarked on ship docked at an EDO settlement.
# Both Disembark and Embark have `"Onstation": false` in Journal.
# So there's nothing to tell us which settlement we're (still,
# or now, if we came here in Apex and then recalled ship) docked at.
logger.debug("monitor.station is None - so EDO settlement?")
raise companion.NoMonitorStation()
if last_station != monitor.station:
# CAPI lastStarport must match
logger.warning(f"({capi_response.capi_data['lastStarport']['name']!r} != {monitor.station!r})"
f" AND {last_station!r} != {monitor.station!r}")
raise companion.ServerLagging()
elif capi_response.capi_data['commander']['docked'] and monitor.station is None:
# Likely (re-)Embarked on ship docked at an EDO settlement.
# Both Disembark and Embark have `"Onstation": false` in Journal.
# So there's nothing to tell us which settlement we're (still,
# or now, if we came here in Apex and then recalled ship) docked at.
logger.debug("docked AND monitor.station is None - so EDO settlement?")
raise companion.NoMonitorStation()
self.capi_query_holdoff_time = capi_response.query_time + companion.capi_query_cooldown