Notifier

class negmas.events.Notifier(name: str | None = None, *, id: str | None = None, type_name: str | None = None)[source]

Bases: NamedObject

An object that can notify other objects

Attributes Summary

id

The unique ID of this entity

name

A convenient name of the entity (intended primarily for printing/logging/debugging).

short_type_name

type_name

uuid

The unique ID of this entity

Methods Summary

checkpoint(path[, file_name, info, ...])

Saves a checkpoint of the current object at the given path.

checkpoint_info(file_name)

Returns the information associated with a dump of the object saved in the given file

create(*args, **kwargs)

Creates an object and returns a proxy to it.

from_checkpoint(file_name[, return_info])

Creates an object from a saved checkpoint

notify(notifiable, notification)

set_id(id)

Sets the unique ID of this entity

spawn([spawn_as, spawn_params])

spawn_object(*args, **kwargs)

Attributes Documentation

id

The unique ID of this entity

name

A convenient name of the entity (intended primarily for printing/logging/debugging).

short_type_name
type_name
uuid

The unique ID of this entity

Methods Documentation

checkpoint(path: PathLike, file_name: str | None = None, info: dict[str, Any] | None = None, exist_ok: bool = False, single_checkpoint: bool = True, step_attribs: tuple[str, ...] = ('current_step', '_current_step', '_Entity__current_step', '_step')) Path

Saves a checkpoint of the current object at the given path.

Parameters:
  • path – Full path to a directory to store the checkpoint

  • file_name – Name of the file to dump into. If not given, a unique name is created

  • info – Information to save with the checkpoint (must be json serializable)

  • exist_ok – If true, override existing dump

  • single_checkpoint – If true, keep a single checkpoint for the last step

  • step_attribs – Attributes to represent the time-step of the object. Any of the given attributes will be used in the file name generated if single_checkpoint is False. If single_checkpoint is True, the filename will not contain time-step information

Returns:

full path to the file used to save the checkpoint

classmethod checkpoint_info(file_name: Path | str) dict[str, Any]

Returns the information associated with a dump of the object saved in the given file

Parameters:

file_name – Name of the object

Returns:

classmethod create(*args, **kwargs)

Creates an object and returns a proxy to it.

classmethod from_checkpoint(file_name: Path | str, return_info: bool = False) NamedObject | tuple[NamedObject, dict[str, Any]]

Creates an object from a saved checkpoint

Parameters:
  • file_name

  • return_info – If True, tbe information saved when the file was dumped are returned

Returns:

Either the object or the object and dump-info as a dict (if return_info was true)

Remarks:

  • If info is returned, it is guaranteed to have the following members:
    • time: Dump time

    • type: Type of the dumped object

    • id: ID

    • name: name

notify(notifiable: Notifiable, notification: Notification)[source]
set_id(id: str)

Sets the unique ID of this entity

classmethod spawn(spawn_as='object', spawn_params: dict[str, Any] | None = None, *args, **kwargs)
classmethod spawn_object(*args, **kwargs)