Skip to content

Commit af347ed

Browse files
Set page_token explicitly in pagination params to match updated frequenz-client-common
- Set page_token to empty string when not provided, as it is no longer optional - Affects list methods for gridpool orders, trades, and public trades Signed-off-by: camille-bouvy-frequenz <[email protected]>
1 parent 415094f commit af347ed

File tree

1 file changed

+29
-10
lines changed

1 file changed

+29
-10
lines changed

src/frequenz/client/electricity_trading/_client.py

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -804,6 +804,7 @@ async def list_gridpool_orders(
804804
delivery_area: DeliveryArea | None = None,
805805
tag: str | None = None,
806806
page_size: int | None = None,
807+
page_token: str | None = None,
807808
timeout: timedelta | None = None,
808809
) -> AsyncIterator[OrderDetail]:
809810
"""
@@ -817,6 +818,7 @@ async def list_gridpool_orders(
817818
delivery_area: The delivery area to filter by.
818819
tag: The tag to filter by.
819820
page_size: The number of orders to return per page.
821+
page_token: The token identifying a specific page of the listed orders.
820822
timeout: Timeout duration, defaults to None.
821823
822824
Yields:
@@ -832,13 +834,17 @@ async def list_gridpool_orders(
832834
delivery_area=delivery_area,
833835
tag=tag,
834836
)
837+
pagination_params = None
838+
if page_size is not None:
839+
pagination_params = Params(
840+
page_size=page_size,
841+
page_token=page_token if page_token is not None else "",
842+
).to_proto()
835843

836844
request = electricity_trading_pb2.ListGridpoolOrdersRequest(
837845
gridpool_id=gridpool_id,
838846
filter=gridpool_order_filter.to_pb(),
839-
pagination_params=(
840-
Params(page_size=page_size).to_proto() if page_size else None
841-
),
847+
pagination_params=pagination_params,
842848
)
843849
while True:
844850
try:
@@ -869,7 +875,7 @@ async def list_gridpool_orders(
869875
raise
870876

871877
async def list_gridpool_trades(
872-
# pylint: disable=too-many-arguments, too-many-positional-arguments
878+
# pylint: disable=too-many-arguments, too-many-positional-arguments, too-many-locals
873879
self,
874880
gridpool_id: int,
875881
trade_states: list[TradeState] | None = None,
@@ -878,6 +884,7 @@ async def list_gridpool_trades(
878884
delivery_period: DeliveryPeriod | None = None,
879885
delivery_area: DeliveryArea | None = None,
880886
page_size: int | None = None,
887+
page_token: str | None = None,
881888
timeout: timedelta | None = None,
882889
) -> AsyncIterator[Trade]:
883890
"""
@@ -891,6 +898,7 @@ async def list_gridpool_trades(
891898
delivery_period: The delivery period to filter by.
892899
delivery_area: The delivery area to filter by.
893900
page_size: The number of trades to return per page.
901+
page_token: The token identifying a specific page of the listed trades.
894902
timeout: Timeout duration, defaults to None.
895903
896904
Yields:
@@ -906,13 +914,17 @@ async def list_gridpool_trades(
906914
delivery_period=delivery_period,
907915
delivery_area=delivery_area,
908916
)
917+
pagination_params = None
918+
if page_size is not None:
919+
pagination_params = Params(
920+
page_size=page_size,
921+
page_token=page_token if page_token is not None else "",
922+
).to_proto()
909923

910924
request = electricity_trading_pb2.ListGridpoolTradesRequest(
911925
gridpool_id=gridpool_id,
912926
filter=gridpool_trade_filter.to_pb(),
913-
pagination_params=(
914-
Params(page_size=page_size).to_proto() if page_size else None
915-
),
927+
pagination_params=pagination_params,
916928
)
917929

918930
while True:
@@ -951,6 +963,7 @@ async def list_public_trades(
951963
buy_delivery_area: DeliveryArea | None = None,
952964
sell_delivery_area: DeliveryArea | None = None,
953965
page_size: int | None = None,
966+
page_token: str | None = None,
954967
timeout: timedelta | None = None,
955968
) -> AsyncIterator[PublicTrade]:
956969
"""
@@ -962,6 +975,7 @@ async def list_public_trades(
962975
buy_delivery_area: The buy delivery area to filter by.
963976
sell_delivery_area: The sell delivery area to filter by.
964977
page_size: The number of public trades to return per page.
978+
page_token: The token identifying a specific page of the listed trades.
965979
timeout: Timeout duration, defaults to None.
966980
967981
Yields:
@@ -977,11 +991,16 @@ async def list_public_trades(
977991
sell_delivery_area=sell_delivery_area,
978992
)
979993

994+
pagination_params = None
995+
if page_size is not None:
996+
pagination_params = Params(
997+
page_size=page_size,
998+
page_token=page_token if page_token is not None else "",
999+
).to_proto()
1000+
9801001
request = electricity_trading_pb2.ListPublicTradesRequest(
9811002
filter=public_trade_filter.to_pb(),
982-
pagination_params=(
983-
Params(page_size=page_size).to_proto() if page_size else None
984-
),
1003+
pagination_params=pagination_params,
9851004
)
9861005

9871006
while True:

0 commit comments

Comments
 (0)