) ids_of_saved_schemas[oca_schema_base_dri] = payload_id else: ids_of_saved_schemas[ oca_schema_base_dri] = "Invalid format, DRIs should start with 'DRI:'" return ids_of_saved_schemas async def pds_oca_data_format_serialize_item_recursive(context, key, val): new_val = val if isinstance(val, dict): new_val = await pds_oca_data_format_serialize_dict_recursive( context, val) elif val.startswith("DRI:"): new_val = await pds_load(context, val[4:]) new_val = await pds_oca_data_format_serialize_dict_recursive( context, new_val) return new_val async def pds_oca_data_format_serialize_dict_recursive(context, dct): new_dict = {} for k, v in dct.items(): new_dict[k] = await pds_oca_data_format_serialize_item_recursive( context, k, v) return new_dict run_standalone_async(__name__, __test_pds_link)
"client_id": "af34d25dc21d5ee5ad0a8da9d035954dac0a286b7fce2028222657e76c89b406", "client_secret": "3563ca90d9a6be2387849c2253f565ba68a58bd77f83404ffeb77727a019d7ab", "grant_type": "client_credentials", "scope": "admin", }, "local, default": {}, } context = await build_context() vault_1 = OwnYourDataVault() vault_1.settings["client_id"] = "QXw8w203kibmQYdXRHiS1lrtxy-o7rmdwILqAF2RnWI" vault_1.settings["client_secret"] = "4CbCqomFaqaMbpMyASpaRlKc2IDJnKvddsgtf2M5Ss0" vault_1.settings["api_url"] = "https://data-vault.eu" usage_vault_1 = await vault_1.get_usage_policy() vault_2 = OwnYourDataVault() vault_2.settings[ "client_id" ] = "af34d25dc21d5ee5ad0a8da9d035954dac0a286b7fce2028222657e76c89b406" vault_2.settings[ "client_secret" ] = "3563ca90d9a6be2387849c2253f565ba68a58bd77f83404ffeb77727a019d7ab" vault_2.settings["api_url"] = "https://sc.dip-clinic.data-container.net" vault_2.settings["scope"] = "admin" usage_vault_2 = await vault_2.get_usage_policy() usage, msg = await verify_usage_policy(usage_vault_2, usage_vault_1) print(usage, msg) run_standalone_async(__name__, test_usage_policy)
payload_id = await pds_save_a( context, body.get("payload"), table=body.get("oca_schema_dri") ) except PDSError as err: raise web.HTTPInternalServerError(reason=err.message) return web.json_response({"success": True, "payload_id": payload_id}) async def test_save(): context = await build_context() payload_id = await pds_save_a(context, "asdd", table="123") print(payload_id) run_standalone_async(__name__, test_save) @docs( tags=["PersonalDataStorage"], summary="Retrieve data from a public data storage using data id", ) async def get_record(request: web.BaseRequest): context = request.app["request_context"] payload_id = request.match_info["payload_id"] try: result = await pds_load(context, payload_id) except PDSError as err: raise web.HTTPInternalServerError(reason=err.roll_up)