nepse_client.dummy_id_manager

Dummy ID management for NEPSE API requests.

This module manages the generation and caching of dummy IDs used in POST request payloads, ensuring they stay synchronized with market status.

Classes

AsyncDummyIDManager

Asynchronous dummy ID manager.

DummyIDManager

Synchronous dummy ID manager.

class nepse_client.dummy_id_manager.DummyIDManager[source]

Bases: _DummyIDManagerBase

Synchronous dummy ID manager.

Manages dummy IDs for synchronous NEPSE client, automatically updating when the date changes or market status is updated.

__init__(market_status_function=None, date_function=<built-in method now of type object>)[source]

Initialize synchronous dummy ID manager.

Parameters:
  • market_status_function (Callable | None)

  • date_function (Callable)

populateData(force=False)[source]

Fetch and populate dummy ID data.

Parameters:

force (bool) – Force refresh even if data exists

Return type:

None

getDummyID()[source]

Get current dummy ID, updating if necessary.

Return type:

int

Returns:

Current dummy ID

class nepse_client.dummy_id_manager.AsyncDummyIDManager[source]

Bases: _DummyIDManagerBase

Asynchronous dummy ID manager.

Manages dummy IDs for asynchronous NEPSE client, with support for concurrent operations and proper async synchronization.

__init__(market_status_function=None, date_function=<built-in method now of type object>)[source]

Initialize asynchronous dummy ID manager.

Parameters:
  • market_status_function (Callable | None)

  • date_function (Callable)

async populateData(force=False)[source]

Fetch and populate dummy ID data asynchronously.

Ensures only one update operation happens at a time, even with concurrent requests.

Parameters:

force (bool) – Force refresh even if data exists

Return type:

None

async getDummyID()[source]

Get current dummy ID, updating if necessary.

Return type:

int

Returns:

Current dummy ID