# TDhelper LIb
helper class lib.

# ***Cache***

## 1. pools
## 2. ring cache

# ***db***

## 1. sqllite
## 2. mongodb
## 3. mysql

# ***Decorators***
## 1. log

# ***document***

## 1. file
## 2. excel

# ***Event***

## 1. Event
## 2. classEvent
## 3. webEvent

# ***generic***


# ***MagicCls***
running time dynamic create class.
mapping any object to an object. 

# ***Msg***
genneric msg helper class.

# ***network***
http, socket helper.

# ***robot***
robot class. 

# ***Scheduler***
not finished

# ***simulate***
not finished

# ***Spider***

# ***structs***
not finished

# ***web***
## permission module
### ***1. register***
permission register class.
#### ***Methods***
<div style="width:40px;">NO.</div> | <div style="width:150px;">name</div> | <div style="width:415px;">description</div>
:---:|:---|:---
1 | [Register](#perRegister) | -
2 | [RegisterByCfg](#perRegisterByCfg) | -

<a href="#Register">***Register***</a>
<div style="width:150px;">name</div> | <div style="width:260px;">description</div> | type | required | default
:--- | :--- | :---: | :---: | :---
serviceClass | - | class | yes | -

<a href="#perRegisterByCfg">***RegisterByCfg***</a>
<div style="width:150px;">name</div> | <div style="width:260px;">description</div> | type | required | default
:--- | :--- | :---: | :---: | :---
Cfg | - | dict | yes | -

### ***2. perACL***
#### web project check ACL.

#### ***Methods***
<div style="width:40px;">NO.</div> | <div style="width:150px;">name</div> | <div style="width:415px;">description</div>
:---:|:---|:---
1 | [perACL](#perACL) | -
2 | [addRPCHandle](#addRPCHandle) | -
3 | [AccessControlLists](#accessControlLists) | -

<a href="#perACL">***perACL***</a>

Initialize.

<div style="width:150px;">name</div> | <div style="width:260px;">description</div> | type | required | default
:--- | :--- | :---: | :---: | :---
rpc_key | - | str | yes | -
params_container_class | - | str | yes | -
platformKey | - | str | no | None
tokenKey | - | str | no | usr-token

<a href="#addRPCHandle">***addRPCHandle***</a>

Add ACL RPC handle method.

<div style="width:150px;">name</div> | <div style="width:260px;">description</div> | type | required | default
:--- | :--- | :---: | :---: | :---
handle | - | RPC | yes | -

<a href="#accessControlLists">***AccessControlLists***</a>

decotrator method. @perACL.accessControlLists()

<div style="width:150px;">name</div> | <div style="width:260px;">description</div> | type | required | default
:--- | :--- | :---: | :---: | :---
premissionKey | - | str | no | None
debug | - | Boolen | no | False
