l2tscaffolder.definitions package

Submodules

l2tscaffolder.definitions.interface module

Interface defining how a project class looks like.

class l2tscaffolder.definitions.interface.ScaffolderDefinition[source]

Bases: object

Scaffolder definition interface.

NAME = 'undefined'
ValidatePath(root_path: str) → bool[source]

Validates the path to the root directory of the project.

Parameters:root_path (str) – the path to the root of the project directory.
Returns:whether the given path is the correct root path of the project.
Return type:bool

l2tscaffolder.definitions.manager module

The definition manager.

class l2tscaffolder.definitions.manager.DefinitionManager[source]

Bases: object

The definition manager.

classmethod DeregisterDefinition(definition_class: Type[l2tscaffolder.definitions.interface.ScaffolderDefinition])[source]

Deregisters a definition class.

Definition classes are identified by their NAME attribute.

Parameters:definition_class (type) – definition class (subclass of ScaffolderDefinition).
Raises:KeyError – if definition class is not set for the corresponding name.
classmethod GetDefinitionByName(name: str) → Type[l2tscaffolder.definitions.interface.ScaffolderDefinition][source]

Returns a definition class based on registered name.

Parameters:name (str) – name of the definition.
Returns:
definition class or None
if name is not registered.
Return type:interface.ScaffolderDefinition
classmethod GetDefinitionNames() → Iterator[str][source]

Yields all names of registered definition classes.

Yields:str – definition names.
classmethod GetDefinitionObjects() → Iterator[l2tscaffolder.definitions.interface.ScaffolderDefinition][source]

Yields instances of each registered definition class.

Yields:ScaffolderDefinition – definition object.
classmethod RegisterDefinition(definition_class: Type[l2tscaffolder.definitions.interface.ScaffolderDefinition])[source]

Registers a definition class.

Definition classes are identified by their NAME attribute.

Parameters:definition_class (ScaffolderDefinition) – definition class.
Raises:KeyError – if definition class is already set for the corresponding name.

l2tscaffolder.definitions.plaso module

The plaso definition class.

class l2tscaffolder.definitions.plaso.PlasoProject[source]

Bases: l2tscaffolder.definitions.interface.ScaffolderDefinition

Plaso project definition.

NAME = 'plaso'
ValidatePath(root_path: str) → bool[source]

Validates the path to a Plaso development tree.

Parameters:root_path (str) – the path to the root of the project directory.
Returns:
whether the given path is the correct root path to a Plaso
development tree.
Return type:bool

l2tscaffolder.definitions.timesketch module

The Timesketch definition class.

class l2tscaffolder.definitions.timesketch.TimesketchProject[source]

Bases: l2tscaffolder.definitions.interface.ScaffolderDefinition

Timesketch project definition.

NAME = 'timesketch'
ValidatePath(root_path: str) → bool[source]

Validates the path to a Timesketch development tree.

Parameters:root_path (str) – the path to the root of the project directory.
Returns:
whether the given path is the correct root path to a Timesketch
development tree.
Return type:bool

l2tscaffolder.definitions.turbinia module

The Turbinia definition class.

class l2tscaffolder.definitions.turbinia.TurbiniaProject[source]

Bases: l2tscaffolder.definitions.interface.ScaffolderDefinition

Turbinia project definition.

NAME = 'turbinia'
ValidatePath(root_path: str) → bool[source]

Validates the path to a Timesketch development tree.

Parameters:root_path (str) – the path to the root of the project directory.
Returns:
whether the given path is the correct root path to a Timesketch
development tree.
Return type:bool

Module contents

This file imports Python modules that registers definitions.