|
14 | 14 |
|
15 | 15 | from pori_python.types import ParsedVariant, PositionalVariant, Record |
16 | 16 |
|
17 | | -from .constants import DEFAULT_LIMIT, DEFAULT_URL, TYPES_TO_NOTATION, AA_3to1_MAPPING |
| 17 | +from .constants import DEFAULT_LIMIT, TYPES_TO_NOTATION, AA_3to1_MAPPING |
18 | 18 |
|
19 | 19 | QUERY_CACHE: Dict[Any, Any] = {} |
20 | 20 |
|
@@ -98,7 +98,7 @@ def cache_key(request_body) -> str: |
98 | 98 | class GraphKBConnection: |
99 | 99 | def __init__( |
100 | 100 | self, |
101 | | - url: str = os.environ.get("GRAPHKB_URL", DEFAULT_URL), |
| 101 | + url: str = os.environ.get("GRAPHKB_URL", ""), |
102 | 102 | username: str = "", |
103 | 103 | password: str = "", |
104 | 104 | use_global_cache: bool = True, |
@@ -143,6 +143,8 @@ def request(self, endpoint: str, method: str = "GET", **kwargs) -> Dict: |
143 | 143 | Returns: |
144 | 144 | dict: the json response as a python dict |
145 | 145 | """ |
| 146 | + if not self.url: |
| 147 | + raise ValueError("no GraphKBConnection url set - cannot make a login demo") |
146 | 148 | url = join_url(self.url, endpoint) |
147 | 149 | self.request_count += 1 |
148 | 150 | connect_timeout = 7 |
@@ -222,6 +224,8 @@ def login_demo(self) -> None: |
222 | 224 | 1. get a first token from KeyCloak using username and password; self.login_demo() |
223 | 225 | 2. get a second token from the GraphKB API using keyCloakToken; self.login() |
224 | 226 | """ |
| 227 | + if not self.url: |
| 228 | + raise ValueError("no GraphKBConnection url set - cannot make a login demo") |
225 | 229 | url_parts = urlsplit(self.url) |
226 | 230 | base_url = f"{url_parts.scheme}://{url_parts.netloc}" |
227 | 231 |
|
@@ -250,8 +254,11 @@ def login(self, username: str, password: str, pori_demo: bool = False) -> None: |
250 | 254 | connect_timeout = 7 |
251 | 255 | read_timeout = 61 |
252 | 256 |
|
253 | | - # KBDEV-1328. Alt. GraphKB login for GSC's PORI online demo |
254 | | - if pori_demo or "pori-demo" in self.url: |
| 257 | + if not self.url: |
| 258 | + raise ValueError("no GraphKBConnection url set - cannot login") |
| 259 | + elif pori_demo or "pori-demo" in self.url: |
| 260 | + # KBDEV-1328. Alt. GraphKB login for GSC's PORI online demo |
| 261 | + logger.warning("login demo") |
255 | 262 | self.login_demo() |
256 | 263 |
|
257 | 264 | # use requests package directly to avoid recursion loop on login failure |
|
0 commit comments