Generate query :param criteria: Filter criteria :type criteria: `dict` :return: :rtype:
(session, criteria)
| 100 | |
| 101 | |
| 102 | def config_gen_query(session, criteria): |
| 103 | """Generate query |
| 104 | |
| 105 | :param criteria: Filter criteria |
| 106 | :type criteria: `dict` |
| 107 | :return: |
| 108 | :rtype: |
| 109 | """ |
| 110 | query = session.query(Config) |
| 111 | if criteria.get("key", None): |
| 112 | if isinstance(criteria["key"], str): |
| 113 | query = query.filter_by(key=criteria["key"]) |
| 114 | if isinstance(criteria["key"], list): |
| 115 | query = query.filter(Config.key.in_(criteria["key"])) |
| 116 | if criteria.get("section", None): |
| 117 | if isinstance(criteria["section"], str): |
| 118 | query = query.filter_by(section=criteria["section"]) |
| 119 | if isinstance(criteria["section"], list): |
| 120 | query = query.filter(Config.section.in_(criteria["section"])) |
| 121 | if criteria.get("dirty", None): |
| 122 | if isinstance(criteria.get("dirty"), list): |
| 123 | criteria["dirty"] = criteria["dirty"][0] |
| 124 | query = query.filter_by(dirty=str2bool(criteria["dirty"])) |
| 125 | return query.order_by(Config.key) |
| 126 | |
| 127 | |
| 128 | def get_all_config_dicts(session, criteria=None): |
no test coverage detected