summaryrefslogtreecommitdiff
path: root/grc/core/schema_checker/flow_graph.py
blob: b31f03cbcffdba8ab14f95fc6d687b9c26387935 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from .utils import Spec, expand

OPTIONS_SCHEME = expand(
    parameters=Spec(types=dict, required=False, item_scheme=(str, str)),
    states=Spec(types=dict, required=False, item_scheme=(str, str)),
)

BLOCK_SCHEME = expand(
    name=str,
    id=str,
    **OPTIONS_SCHEME
)

FLOW_GRAPH_SCHEME = expand(
    options=Spec(types=dict, required=False, item_scheme=OPTIONS_SCHEME),
    blocks=Spec(types=dict, required=False, item_scheme=BLOCK_SCHEME),
    connections=list,

    metadata=Spec(types=dict, required=True, item_scheme=expand(
        file_format=Spec(types=int, required=True, item_scheme=None),
    ))

)