elody 0.0.172__py3-none-any.whl → 0.0.174__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- elody/job.py +36 -0
- elody/policies/authorization/generic_object_detail_policy.py +5 -3
- {elody-0.0.172.dist-info → elody-0.0.174.dist-info}/METADATA +1 -1
- {elody-0.0.172.dist-info → elody-0.0.174.dist-info}/RECORD +7 -7
- {elody-0.0.172.dist-info → elody-0.0.174.dist-info}/LICENSE +0 -0
- {elody-0.0.172.dist-info → elody-0.0.174.dist-info}/WHEEL +0 -0
- {elody-0.0.172.dist-info → elody-0.0.174.dist-info}/top_level.txt +0 -0
elody/job.py
CHANGED
|
@@ -51,6 +51,33 @@ def start_job(
|
|
|
51
51
|
return job["_id"]
|
|
52
52
|
|
|
53
53
|
|
|
54
|
+
def add_document_to_job(
|
|
55
|
+
id,
|
|
56
|
+
id_of_document_job_was_initiated_for,
|
|
57
|
+
type_of_document_job_was_initiated_for,
|
|
58
|
+
*,
|
|
59
|
+
get_rabbit,
|
|
60
|
+
):
|
|
61
|
+
relations = []
|
|
62
|
+
if id_of_document_job_was_initiated_for and type_of_document_job_was_initiated_for:
|
|
63
|
+
relations.append(
|
|
64
|
+
{"key": id_of_document_job_was_initiated_for, "type": "isJobFor"}
|
|
65
|
+
)
|
|
66
|
+
document = {
|
|
67
|
+
"id": id,
|
|
68
|
+
"patch": {
|
|
69
|
+
"relations": (relations),
|
|
70
|
+
},
|
|
71
|
+
}
|
|
72
|
+
_post_crud_hook(crud="update", document=document, get_rabbit=get_rabbit)
|
|
73
|
+
__patch_document_job_was_initiated_for_v2(
|
|
74
|
+
id,
|
|
75
|
+
id_of_document_job_was_initiated_for,
|
|
76
|
+
type_of_document_job_was_initiated_for,
|
|
77
|
+
get_rabbit,
|
|
78
|
+
)
|
|
79
|
+
|
|
80
|
+
|
|
54
81
|
def finish_job(
|
|
55
82
|
id,
|
|
56
83
|
id_of_document_job_was_initiated_for=None,
|
|
@@ -93,3 +120,12 @@ def __patch_document_job_was_initiated_for(id, type, get_rabbit):
|
|
|
93
120
|
"patch": {"relations": [{"key": id, "type": "hasJob"}]},
|
|
94
121
|
}
|
|
95
122
|
_post_crud_hook(crud="update", document=document, get_rabbit=get_rabbit)
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
def __patch_document_job_was_initiated_for_v2(job_id, document_id, type, get_rabbit):
|
|
126
|
+
if id and type:
|
|
127
|
+
document = {
|
|
128
|
+
"document_info_job_was_initiated_for": {"id": document_id, "type": type},
|
|
129
|
+
"patch": {"relations": [{"key": job_id, "type": "hasJob"}]},
|
|
130
|
+
}
|
|
131
|
+
_post_crud_hook(crud="update", document=document, get_rabbit=get_rabbit)
|
|
@@ -5,7 +5,7 @@ from elody.policies.permission_handler import (
|
|
|
5
5
|
get_permissions,
|
|
6
6
|
handle_single_item_request,
|
|
7
7
|
)
|
|
8
|
-
from flask import Request # pyright: ignore
|
|
8
|
+
from flask import g, Request # pyright: ignore
|
|
9
9
|
from inuits_policy_based_auth import BaseAuthorizationPolicy # pyright: ignore
|
|
10
10
|
from inuits_policy_based_auth.contexts.policy_context import ( # pyright: ignore
|
|
11
11
|
PolicyContext,
|
|
@@ -78,7 +78,8 @@ class PutRequestRules:
|
|
|
78
78
|
if request.method != "PUT":
|
|
79
79
|
return None
|
|
80
80
|
|
|
81
|
-
content =
|
|
81
|
+
content = g.get("content") or request.json
|
|
82
|
+
content = get_content(item, request, content)
|
|
82
83
|
return handle_single_item_request(
|
|
83
84
|
user_context, item, permissions, "update", content
|
|
84
85
|
)
|
|
@@ -91,7 +92,8 @@ class PatchRequestRules:
|
|
|
91
92
|
if request.method != "PATCH":
|
|
92
93
|
return None
|
|
93
94
|
|
|
94
|
-
content =
|
|
95
|
+
content = g.get("content") or request.json
|
|
96
|
+
content = get_content(item, request, content)
|
|
95
97
|
return handle_single_item_request(
|
|
96
98
|
user_context, item, permissions, "update", content
|
|
97
99
|
)
|
|
@@ -4,7 +4,7 @@ elody/client.py,sha256=VFjUUaE9edtK1XuAF5T3ayem2UEBr-Anww8AhITYLdI,8575
|
|
|
4
4
|
elody/csv.py,sha256=5LZfr6p8eeK0IDHICfyBgKSMRCM-YXzXaomzl7G1-bc,15518
|
|
5
5
|
elody/error_codes.py,sha256=7ZLY69YScCB0Ghxqf2LiCt-U_JCYA_T8jTMlIDlvv2s,4179
|
|
6
6
|
elody/exceptions.py,sha256=5KSw2sPCZz3lDIJX4LiR2iL9n4m4KIil04D1d3X5rd0,968
|
|
7
|
-
elody/job.py,sha256=
|
|
7
|
+
elody/job.py,sha256=wpq1dSxYxMv1Jv1hSvyxvFI1qNbRkDNghRLhndo57rU,3923
|
|
8
8
|
elody/loader.py,sha256=Mr7zyP5DP5psYerf2-DnP90GiqtFlKZpcLIPD7P4pSU,5242
|
|
9
9
|
elody/schemas.py,sha256=WtKdZEAX-PtEuAaRohyS3Md8H4-8yKVXMkHfCQ2SDR4,4676
|
|
10
10
|
elody/util.py,sha256=1Ty4A3OVSmwawqjKyYW5zkhSwX-jZsC0_XllO_DL05M,8684
|
|
@@ -25,7 +25,7 @@ elody/policies/authentication/multi_tenant_policy.py,sha256=jmV1RTsApt2IV8BgSRcf
|
|
|
25
25
|
elody/policies/authorization/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
26
26
|
elody/policies/authorization/filter_generic_objects_policy.py,sha256=XjKGM__WKG7n-QaopQGwSyvamQkye1DD6a-8mx2Xkwc,6518
|
|
27
27
|
elody/policies/authorization/filter_generic_objects_policy_v2.py,sha256=96lNmlxgzN8Lu4mXLRxAN-_pfGnK8BF5bXa-iSJofE0,6356
|
|
28
|
-
elody/policies/authorization/generic_object_detail_policy.py,sha256=
|
|
28
|
+
elody/policies/authorization/generic_object_detail_policy.py,sha256=Q1MrkXyOtF86jV50TE7qDlxOyl-wEMekdQX-60ZynG4,3550
|
|
29
29
|
elody/policies/authorization/generic_object_mediafiles_policy.py,sha256=bo9OL13-6vLhfG6dc_hg_EfynOk0fUbTZg-DmwTtBkU,2883
|
|
30
30
|
elody/policies/authorization/generic_object_metadata_policy.py,sha256=K-tNO1QIrlACupFSiZ12gH-N7T0s3y2hpPIpiKC_maQ,2783
|
|
31
31
|
elody/policies/authorization/generic_object_relations_policy.py,sha256=NRhywIntTpR69R_Lf1-sKfgWdXd7NW2K-lL8cGqWhhQ,3708
|
|
@@ -40,8 +40,8 @@ tests/data.py,sha256=Q3oxduf-E3m-Z5G_p3fcs8jVy6g10I7zXKL1m94UVMI,2906
|
|
|
40
40
|
tests/unit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
41
41
|
tests/unit/test_csv.py,sha256=NQaOhehfQ4GuXku0Y1SA8DYjJeqqidbF50zEHAi8RZA,15923
|
|
42
42
|
tests/unit/test_utils.py,sha256=g63szcEZyHhCOtrW4BnNbcgVca3oYPIOLjBdIzNwwN0,8784
|
|
43
|
-
elody-0.0.
|
|
44
|
-
elody-0.0.
|
|
45
|
-
elody-0.0.
|
|
46
|
-
elody-0.0.
|
|
47
|
-
elody-0.0.
|
|
43
|
+
elody-0.0.174.dist-info/LICENSE,sha256=gXf5dRMhNSbfLPYYTY_5hsZ1r7UU1OaKQEAQUhuIBkM,18092
|
|
44
|
+
elody-0.0.174.dist-info/METADATA,sha256=kqdvU8GYaYUIkmWUHU9H7mtFOFbkyiYLnYZoOx7Luzw,23336
|
|
45
|
+
elody-0.0.174.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
46
|
+
elody-0.0.174.dist-info/top_level.txt,sha256=E0mImupLj0KmtUUCXRYEoLDRaSkuiGaOIIseAa0oQ-M,21
|
|
47
|
+
elody-0.0.174.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|