Skip to content

Code Structure

maxlandon edited this page Mar 9, 2019 · 4 revisions

The Code Structure of EffectiveCouscous is devised around several key principles and constraints. These constraints might be imposed by:

  • The Maltego client,
  • The Canari Framework (Python tool for writing transforms and their entities),
  • Other needs and problems we might have identified, such as time-saving or practicality constraints.

As of now, the following principles and constraints that drive this project are:

  • Maltego imposes a Java-based namespace structure for Entities.
  • As such, the inheritance of Transforms by Entities is heavily influenced by this namespace.
  • A strict need for similarity between Entities and Transforms code base.

Consequently, devising a unified structure in the Python code was utterly important, so that both developers and users can easily access it for maintenance/enhancement/additions.