Internal Structure
1. Class Representation
- class microesb.microesb.JSONTransformer[source]
Bases:
object
JSON transfomer class.
- __init__()[source]
- Variables:
_json_dict (dict[dict]) – recursive internal properties processing dict
- json_transform()[source]
json_transform() method.
Recursive generate _json_dict for complete object hierarchy.
- property json
json() method.
- Returns:
json.dumps(self._json_dict)
- Return type:
str (json dump)
Decorated with @property so direct property access possible
- property json_dict
json_dict() method.
- Returns:
self._json_dict
- Return type:
dict
Decorated with @property so direct property access possible
- class microesb.microesb.BaseHandler[source]
Bases:
JSONTransformer
Abstract Base Class (ABC) Meta Class.
- __init__()[source]
- Variables:
logger (classref) – logging logger reference
_SYSProperties (dict[SYSProperties]) – internal properties processing dict
_SYSParentObject (classref) – internal (hierarchical) class instance ref
_SYSClassNames (list[classref]) – internal class refs dict (should be renamed to _SYSClassRefs)
- add_properties(properties, parent_instance)[source]
add_properties() method.
- Parameters:
properties (dict) – system properties dictionary
parent_instance (classref) – parent class instance reference
The ClassMapper recursively adds instance properties by calling add_properties() method on initialization for each existing class instance.
- _add_sys_default_properties(properties)[source]
_add_sys_default_properties() method.
- Parameters:
properties (dict) – system properties dictionary
Enhance (add) system default properties dictionary by properties dict defined inside this method.
Currently ‘SYSServiceMethod’ is the only system property added.
- Returns:
properties
- Return type:
dict
- _set_property(key, value)[source]
_set_property() method.
- Parameters:
key (str) – property key name
value (str) – property value
- property parent_object
parent_object() method.
- Returns:
self._SYSParentObject
- Return type:
classref
Decorated with @property so direct property access possible
- property properties
properties() method.
- Returns:
self._SYSProperties
- Return type:
dict
Decorated with @property so direct property access possible
- property class_count
class_count() method.
- Returns:
len(self._SYSClassNames)
- Return type:
int
Decorated with @property so direct property access possible
- property class_name
class_name() method.
- Returns:
self.__class__.__name__
- Return type:
str
Decorated with @property so direct property access possible
- class microesb.microesb.ClassHandler[source]
Bases:
BaseHandler
ClassHandler class. Inherits BaseHandler class.
- __init__()[source]
- Variables:
_SYSType (str) – const internal system type to differentiate handler types
- __add__(args)[source]
overloaded internal __add__() method (+ operator).
- Parameters:
args (dict) – class setup dictionary
_add_class() “wrapper” primary used for ClassMapper.
>>> args = { >>> 'class_name': class_name, >>> 'class_ref': class_ref >>> } >>> parent_instance + args
- __iter__()[source]
overloaded internal __iter__() method.
Overloaded for using iter() on class references.
- _add_class(*, class_name, class_ref)[source]
_add_class() method.
- Parameters:
* (dict) – used for passing params as **args dictionary
class_name (str) – class name
class_ref (classref) – class instance reference
Append class_name to self._SYSClassNames. Setup new class instance in global namespace.
Primary called by overloaded __add__() method.
- class microesb.microesb.MultiClassHandler[source]
Bases:
BaseHandler
MultiObject handler class.
- __init__()[source]
- Variables:
_SYSType (str) – const internal system type to differentiate handler types
_object_container (list[object]) – object instance container
- __iter__()[source]
overloaded internal __iter__() method.
Overloaded for using iter() on class references.
- _add_class()[source]
_add_class() method.
- Returns:
instance
- Return type:
object instance
Setup class instance and append it to self._object_container.
- set_properties(property_list)[source]
set_properties() method.
- Parameters:
property_list (list) – properties dictionary
Setup class instance and append it to self._object_container.
- class microesb.microesb.ClassMapper(*, class_references, class_mappings, class_properties)[source]
Bases:
ClassHandler
Class Mapper class.
- __init__(*, class_references, class_mappings, class_properties)[source]
- Parameters:
* (dict) – used for passing params as **args dictionary
class_references (dict) – class references dictionary
class_mappings (dict) – class mappings dictionary
class_properties (dict) – class properties dictionary
- Variables:
_class_mappings (dict) – set from class_mappings param
_class_properties (dict) – set from class_properties param
_class_references (dict) – set from class_references param
_class_hierarchy (dict) – internally used to map parent instances
- _get_mapping(class_name)[source]
_get_mapping() method.
- Parameters:
class_name (str) – mapping class_name
- Returns:
self._class_mappings[class_name]
- Return type:
str
Get class name from class_mappings dictionary by class_name.
- get_references()[source]
get_references() method.
- Returns:
self._class_references
- Return type:
dict
Get class references dictionary.
- _map(*, class_name, property_ref, parent_instance, children={})[source]
_map() method.
- Parameters:
* (dict) – used for passing params as **args dictionary
class_name (str) – (root) class name
property_ref (dict) – property reference dictionary
parent_instance (classref) – property reference dictionary
children (dict) – children definition dictionary
Recursive map class hierarchy / class instances.
- class microesb.microesb.ServiceMapper(*, class_mapper, service_call_data)[source]
Bases:
ClassHandler
Service Mapper class.
- __init__(*, class_mapper, service_call_data)[source]
- Parameters:
* (dict) – used for passing params as **args dictionary
class_mapper (classref) – class mapper instance reference
service_call_data (dict) – service call metadata dictionary
- Variables:
_class_mapper (classref) – set from class_mapper param
- _map(*, class_name, parent_instance, hierarchy, children={}, property_ref=None)[source]
_map() method.
- Parameters:
* (dict) – used for passing params as **args dictionary
class_name (str) – (root) class name
parent_instance (classref) – property reference dictionary
hierarchy (dict) – (root) class setup item
children (dict) – children definition dictionary
property_ref (dict) – property reference dictionary
Recursive process class hierarchy / service properties mapping.