|
1 | 1 | from .helper_functions import * |
2 | 2 |
|
3 | | -NODES_PATH = '/users/{0}/nodes/{1}' |
4 | | - |
5 | 3 |
|
6 | 4 | class Nodes(): |
7 | 5 | def __init__(self, client): |
8 | 6 | self.client = client |
9 | 7 |
|
10 | | - def create_node_path(self, node_id=None): |
| 8 | + def create_node_path(self, user_id, node_id=None): |
| 9 | + path = '/users/{0}/nodes'.format(user_id) |
11 | 10 | if node_id: |
12 | | - return NODES_PATH.format(self.client.user_id, node_id) |
| 11 | + return path + '/' + node_id |
13 | 12 | else: |
14 | | - return NODES_PATH.replace('/{1}', '').format(self.client.user_id) |
15 | | - |
16 | | - def add(self, **kwargs): |
17 | | - if not 'payload' in kwargs: |
18 | | - return create_custom_error_message(error_message='Missing the "payload" parameter.') |
19 | | - path = self.create_node_path() |
20 | | - response = self.client.post(path, kwargs['payload']) |
21 | | - return analyze_response(response) |
22 | | - |
23 | | - def verify(self, **kwargs): |
24 | | - micro_keys = ['payload', 'node_id'] |
25 | | - ok_micro, error_micro = checkKwargs(micro_keys, kwargs) |
26 | | - mfa_keys = ['payload'] |
27 | | - ok_mfa, error_mfa = checkKwargs(mfa_keys, kwargs) |
28 | | - response = None |
29 | | - if ok_micro: |
30 | | - path = self.create_node_path(kwargs['node_id']) |
31 | | - response = self.client.patch(path, kwargs['payload']) |
32 | | - elif ok_mfa: |
33 | | - path = self.create_node_path() |
34 | | - response = self.client.post(path, kwargs['payload']) |
| 13 | + return path |
| 14 | + |
| 15 | + def add(self, user_id, payload, **kwargs): |
| 16 | + path = self.create_node_path(user_id) |
| 17 | + response = self.client.post(path, payload) |
| 18 | + return response |
| 19 | + |
| 20 | + def get(self, user_id, node_id=None, **kwargs): |
| 21 | + path = self.create_node_path(user_id, node_id) |
| 22 | + response = self.client.get(path) |
| 23 | + return response |
| 24 | + |
| 25 | + def update(self, user_id, node_id, **kwargs): |
| 26 | + path = self.create_node_path(user_id, node_id) |
| 27 | + response = self.client.patch(path, payload) |
| 28 | + return response |
| 29 | + |
| 30 | + def verify(self, user_id, payload, node_id=None, **kwargs): |
| 31 | + if node_id: |
| 32 | + # PATCH to verify microdeposits |
| 33 | + self.update(user_id, payload, node_id, **kwargs) |
35 | 34 | else: |
36 | | - return error_micro |
37 | | - return analyze_response(response) |
| 35 | + # POST to verify MFA |
| 36 | + path = self.create_node_path(user_id) |
| 37 | + response = self.client.post(path, payload) |
| 38 | + return response |
38 | 39 |
|
39 | | - def delete(self, **kwargs): |
40 | | - if not 'node_id' in kwargs: |
41 | | - return create_custom_error_message(error_message='Missing "node_id" argument') |
42 | | - path = self.create_node_path(kwargs['node_id']) |
| 40 | + def delete(self, user_id, **kwargs): |
| 41 | + path = self.create_node_path(user_id, node_id) |
43 | 42 | response = self.client.delete(path) |
44 | | - return analyze_response(response) |
45 | | - |
46 | | - def get(self, **kwargs): |
47 | | - path = None |
48 | | - if 'node_id' in kwargs: |
49 | | - path = self.create_node_path(kwargs['node_id']) |
50 | | - elif self.client.user_id: |
51 | | - path = self.create_node_path() |
52 | | - else: |
53 | | - return create_custom_error_message(error_message='Set the user id before making this API call.') |
54 | | - response = self.client.get(path) |
55 | | - return analyze_response(response) |
| 43 | + return response |
0 commit comments