Created by peter on 20/01/17.
Created by peter on 20/01/17.
Created by peter on 20/01/17.
Created by peter on 18/01/17.
Created by peter on 14/01/17.
Created by peter on 14/01/17.
Transforms a map containing canonical RAML or json-schema types to a sequence of source definitions. The number of source definitions isn't always equal to the number of canonical types, because (multiple) inheritance may produce additional source definitions.
Created by peter on 18/01/17.
The generation aggregate contains information that may be needed for source definition generation and information about data and knownledge that was already collected so far in the generation process. The generation process is a recursive operation on the GenerationAggr, which can be expanded during code generation. In other words, new source definitions may be added during code generation, especially the interface definitions are expected to be added then.
The collected source definitions up to 'now'.
The canonical TO map.
The generated source files so far.
The TO map is needed to find all fields that we have to put in a class extending from one or more parents.
The map containing the transfer objects that require an interface definition so far, keyed on the canonical name of the original transfer object. This map is expected to grow while source definitions for transfer objects are generated.
The direct child parents relations are needed to navigate through the class hierarchy of the transfer objects. The toChildParentsMap is build up when the TOs are added to the toMap.
The direct parent children relations are needed to navigate through the class hierarchy of the transfer objects. The toParentChildrenMap is build up when the TOs are added to the toMap.