Skip to content

Commit 23585f4

Browse files
committed
Linting and docs for prefix token functions
Changes to be committed: modified: bco_api/api/scripts/method_specific/POST_api_prefixes_create.py modified: bco_api/api/scripts/method_specific/POST_api_prefixes_token.py modified: bco_api/api/scripts/method_specific/POST_api_prefixes_token_flat.py modified: bco_api/api/views.py
1 parent 092d862 commit 23585f4

File tree

4 files changed

+62
-73
lines changed

4 files changed

+62
-73
lines changed

bco_api/api/scripts/method_specific/POST_api_prefixes_create.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ def POST_api_prefixes_create(request):
3131
rest_framework.response.Response
3232
An HttpResponse that allows its data to be rendered into
3333
arbitrary media types.
34-
3534
"""
3635

3736
# TODO: replace user/group looping with basic filtering
Lines changed: 31 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,35 @@
1-
# User utilities
2-
from ..utilities import UserUtils
3-
4-
# Responses
5-
from rest_framework import status
6-
from rest_framework.response import Response
7-
8-
1+
#!/usr/bin/env python3
2+
"""Get Prefixes for a Token
93
4+
Get all available prefixes and their associated permissions for a given token.
5+
The word 'Token' must be included in the header.
6+
The token has already been validated,
7+
so the user is guaranteed to exist.
108
11-
def POST_api_prefixes_token(
12-
request
13-
):
14-
15-
# Instantiate any necessary imports.
16-
uu = UserUtils.UserUtils()
17-
18-
# The token has already been validated,
19-
# so the user is guaranteed to exist.
20-
21-
# A little expensive, but use the utility
22-
# we already have. Default will return flattened list of permissions
23-
prefixes = uu.prefix_perms_for_user(
24-
user_object = uu.user_from_request(
25-
rq = request
26-
).username,
27-
flatten = False
28-
)
9+
A little expensive, but use the utility
10+
we already have. Default will return flattened list of permissions.
11+
"""
2912

13+
from api.scripts.utilities import UserUtils
14+
from rest_framework import status
15+
from rest_framework.response import Response
3016

31-
return(
32-
Response(
33-
status = status.HTTP_200_OK,
34-
data = prefixes
35-
)
36-
)
17+
def POST_api_prefixes_token(request):
18+
"""Get Prefixes for a Token
19+
20+
Parameters
21+
----------
22+
request: rest_framework.request.Request
23+
Django request object.
24+
25+
Returns
26+
-------
27+
rest_framework.response.Response
28+
An HttpResponse that allows its data to be rendered into
29+
arbitrary media types.
30+
"""
31+
32+
prefixes = UserUtils.UserUtils().prefix_perms_for_user(
33+
user_object = UserUtils.UserUtils().user_from_request(
34+
request = request).username, flatten = False)
35+
return Response(status = status.HTTP_200_OK, data = prefixes)
Lines changed: 26 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,34 @@
1-
# User utilities
2-
from ..utilities import UserUtils
1+
#!/usr/bin/env python3
2+
"""Get Prefixes for a Token, flat list
33
4-
# Responses
4+
Get all available prefixes and their associated permissions for a given token.
5+
The word 'Token' must be included in the header. The token has already been
6+
validated, so the user is guaranteed to exist.
7+
8+
A little expensive, but use the utility we already have. Default will return
9+
flattened list of permissions.
10+
"""
11+
from api.scripts.utilities import UserUtils
512
from rest_framework import status
613
from rest_framework.response import Response
714

15+
def POST_api_prefixes_token_flat(request):
16+
"""Get Prefixes for a Token
817
18+
Parameters
19+
----------
20+
request: rest_framework.request.Request
21+
Django request object.
922
23+
Returns
24+
-------
25+
rest_framework.response.Response
26+
An HttpResponse that allows its data to be rendered into
27+
arbitrary media types.
28+
"""
1029

11-
def POST_api_prefixes_token_flat(
12-
request
13-
):
14-
15-
# Instantiate any necessary imports.
16-
uu = UserUtils.UserUtils()
17-
18-
# The token has already been validated,
19-
# so the user is guaranteed to exist.
20-
21-
# A little expensive, but use the utility
22-
# we already have. Default will return flattened list of permissions
23-
prefixes = uu.prefix_perms_for_user(
24-
user_object = uu.user_from_request(
25-
rq = request
26-
).username,
27-
flatten = True
28-
)
29-
30-
# We only need the permissions that are specific
31-
# to the bco model.
30+
prefixes = UserUtils.UserUtils().prefix_perms_for_user(
31+
user_object = UserUtils.UserUtils().user_from_request(
32+
request = request).username,flatten = True)
3233

33-
return(
34-
Response(
35-
status = status.HTTP_200_OK,
36-
data = prefixes
37-
)
38-
)
34+
return Response(status = status.HTTP_200_OK, data = prefixes)

bco_api/api/views.py

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1166,12 +1166,11 @@ def post(self, request) -> Response:
11661166

11671167
class ApiPrefixesToken(APIView):
11681168
"""
1169-
Get Prefixes for a Token
1169+
Get list of prefixes
11701170
11711171
--------------------
11721172
1173-
# Get all available prefixes and their associated permissions for a given token.
1174-
1173+
Get all available prefixes and their associated permissions for a given token.
11751174
The word 'Token' must be included in the header.
11761175
11771176
For example: 'Token 627626823549f787c3ec763ff687169206626149'.
@@ -1194,16 +1193,12 @@ def post(self, request) -> Response:
11941193

11951194
class ApiPrefixesTokenFlat(APIView):
11961195
"""
1197-
Get Prefixes for a Token in Flat Format
1196+
Get a flat list of prefixes
11981197
11991198
--------------------
12001199
1201-
# Get all available prefixes and their associated permissions for a given token in flat format.
1202-
1203-
# TODO: What does this do? Appears to flatten the prefixes (not sure what for)
1204-
# Answer (Chris, 1/22): These may be easier for a requestor to parse rapidly on a web page.
1205-
1206-
The word 'Token' must be included in the header.
1200+
Get all available prefixes and their associated permissions for a given
1201+
token in flat format. The word 'Token' must be included in the header.
12071202
12081203
For example: 'Token 627626823549f787c3ec763ff687169206626149'.
12091204
"""

0 commit comments

Comments
 (0)