otupy.types.base.enumerated_id.EnumeratedID

class EnumeratedID(value=<no_arg>, names=None, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: Enumerated

OpenC2 EnumeratedID

Implements OpenC2 EnumeratedID: >A set of unnamed integral constants. The API value is an id.

The current implementation does not check the values to be integer. However, coversion to/from integer is explicitly done during the intermediary dictionary serialization, hence throwing an Exception if the IDs are not integers.

Methods

extend

Extends the Enumarated

todict

Converts to dictionary

fromdict

Builds instance from dictionary

__init__(*args, **kwds)
classmethod extend(name, value=None)

Extends the Enumarated

Extends the definition with a new <name, value> pair.

Parameters:
  • name – The name (tag) used to identify a new element in the Enumeration.

  • value – The numeric index associated to the Enumerated (optional).

Returns:

None

classmethod fromdict(dic, e)

Builds instance from dictionary

It is used during deserialization to create an otupy instance from the text message. It takes an Encoder instance that is used to recursively build instances of the inner objects (the Encoder provides standard methods to create instances of base objects like strings, integers, boolean).

Parameters:
  • dic – The intermediary dictionary representation from which the object is built.

  • e – The Encoder that is being used.

Returns:

An instance of this class initialized from the dictionary values.

todict(e)

Converts to dictionary

It is used to convert this object to an intermediary representation during serialization. It takes an Encoder argument that is used to recursively serialize inner data and structures (the Encoder provides standard methods for converting base types to dictionaries)..

Parameters:

e – The Encoder that is being used.

Returns:

A dictionary compliants to the Language Specification’s serialization rules.