Skip to content

Commit f1ce0d1

Browse files
committed
Review feedback
1 parent 6a6ab98 commit f1ce0d1

File tree

2 files changed

+9
-11
lines changed

2 files changed

+9
-11
lines changed

src/apify/_actor.py

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import sys
66
from contextlib import suppress
77
from datetime import datetime, timedelta, timezone
8+
from functools import cached_property
89
from typing import TYPE_CHECKING, Any, Literal, TypeVar, cast, overload
910

1011
from lazy_object_proxy import Proxy
@@ -340,7 +341,7 @@ async def init(self) -> None:
340341
await self.event_manager.__aenter__()
341342
self.log.debug('Event manager initialized')
342343

343-
await self._get_charging_manager_implementation().__aenter__()
344+
await self._get_charging_manager_implementation.__aenter__()
344345
self.log.debug('Charging manager initialized')
345346

346347
self._is_initialized = True
@@ -384,7 +385,7 @@ async def finalize() -> None:
384385
await self.event_manager.wait_for_all_listeners_to_complete(timeout=event_listeners_timeout)
385386

386387
await self.event_manager.__aexit__(None, None, None)
387-
await self._get_charging_manager_implementation().__aexit__(None, None, None)
388+
await self._get_charging_manager_implementation.__aexit__(None, None, None)
388389

389390
await asyncio.wait_for(finalize(), cleanup_timeout.total_seconds())
390391
self._is_initialized = False
@@ -579,9 +580,7 @@ async def push_data(self, data: dict | list[dict], charged_event_name: str | Non
579580
data = data if isinstance(data, list) else [data]
580581

581582
max_charged_count = (
582-
self._get_charging_manager_implementation().calculate_max_event_charge_count_within_limit(
583-
charged_event_name
584-
)
583+
self.get_charging_manager().calculate_max_event_charge_count_within_limit(charged_event_name)
585584
if charged_event_name is not None
586585
else None
587586
)
@@ -652,12 +651,11 @@ async def set_value(
652651
def get_charging_manager(self) -> ChargingManager:
653652
"""Retrieve the charging manager to access granular pricing information."""
654653
self._raise_if_not_initialized()
655-
return self._get_charging_manager_implementation()
654+
return self._get_charging_manager_implementation
656655

656+
@cached_property
657657
def _get_charging_manager_implementation(self) -> ChargingManagerImplementation:
658-
if not self._charging_manager:
659-
self._charging_manager = ChargingManagerImplementation(self.config, self.apify_client)
660-
return self._charging_manager
658+
return ChargingManagerImplementation(self.config, self.apify_client)
661659

662660
async def charge(self, event_name: str, count: int = 1) -> ChargeResult:
663661
"""Charge for a specified number of events - sub-operations of the Actor.

tests/unit/actor/test_configuration.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -197,11 +197,11 @@ async def test_storage_retrieved_is_same_with_equivalent_config() -> None:
197197
"""Test that retrieving storage depends on used configuration. If two equivalent configuration(even if they are
198198
different instances) are used it returns same storage."""
199199
config_actor = ApifyConfiguration()
200-
apify_crawler = ApifyConfiguration()
200+
config_crawler = ApifyConfiguration()
201201

202202
async with Actor(configuration=config_actor):
203203
actor_kvs = await Actor.open_key_value_store()
204-
crawler = BasicCrawler(configuration=apify_crawler)
204+
crawler = BasicCrawler(configuration=config_crawler)
205205
crawler_kvs = await crawler.get_key_value_store()
206206

207207
assert actor_kvs is crawler_kvs

0 commit comments

Comments
 (0)