diff options
author | Wojtek Kosior <koszko@koszko.org> | 2022-09-08 17:59:40 +0200 |
---|---|---|
committer | Wojtek Kosior <koszko@koszko.org> | 2022-09-28 14:03:18 +0200 |
commit | 45e5cf8dc3ca936e2db8e7e45689d0a3331aad43 (patch) | |
tree | 83f0b13f0fbb6d29862ac91ac0597e1c5c64719e /src/hydrilla/proxy/state.py | |
parent | 04853ff19450c5925a7c9bacc11abe90e75f8510 (diff) | |
download | haketilo-hydrilla-45e5cf8dc3ca936e2db8e7e45689d0a3331aad43.tar.gz haketilo-hydrilla-45e5cf8dc3ca936e2db8e7e45689d0a3331aad43.zip |
[proxy] make package auto-installation work
Diffstat (limited to 'src/hydrilla/proxy/state.py')
-rw-r--r-- | src/hydrilla/proxy/state.py | 33 |
1 files changed, 28 insertions, 5 deletions
diff --git a/src/hydrilla/proxy/state.py b/src/hydrilla/proxy/state.py index 03b6291..491a865 100644 --- a/src/hydrilla/proxy/state.py +++ b/src/hydrilla/proxy/state.py @@ -337,7 +337,7 @@ class ResourceVersionStore(Store[ResourceVersionRef]): @dc.dataclass(frozen=True) class PayloadKey: """....""" - payload_ref: 'PayloadRef' + ref: 'PayloadRef' mapping_identifier: str @@ -348,13 +348,22 @@ class PayloadKey: @dc.dataclass(frozen=True) class PayloadData: """....""" - payload_ref: 'PayloadRef' + ref: 'PayloadRef' explicitly_enabled: bool unique_token: str pattern_path_segments: tuple[str, ...] eval_allowed: bool cors_bypass_allowed: bool + global_secret: bytes + +@dc.dataclass(frozen=True) +class PayloadDisplayInfo: + ref: 'PayloadRef' + + mapping_info: MappingVersionDisplayInfo + pattern: str + has_problems: bool @dc.dataclass(frozen=True) class FileData: @@ -371,7 +380,15 @@ class PayloadRef(Ref): ... @abstractmethod - def get_mapping(self) -> MappingVersionRef: + def has_problems(self) -> bool: + ... + + @abstractmethod + def get_display_info(self) -> PayloadDisplayInfo: + ... + + @abstractmethod + def ensure_items_installed(self) -> None: """....""" ... @@ -387,6 +404,9 @@ class PayloadRef(Ref): """....""" ... +class PayloadStore(Store[PayloadRef]): + pass + class MappingUseMode(Enum): """ @@ -449,8 +469,11 @@ class HaketiloState(ABC): ... @abstractmethod - def get_payload(self, payload_id: str) -> PayloadRef: - """....""" + def payload_store(self) -> PayloadStore: + ... + + @abstractmethod + def get_secret(self) -> bytes: ... @abstractmethod |