Skip to content

Commit e4acbb7

Browse files
committed
feat: add --verbose and --no-mail
1 parent ac5ac39 commit e4acbb7

File tree

2 files changed

+22
-7
lines changed

2 files changed

+22
-7
lines changed

openlrw/client.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import json
2020
import sys
2121
import base64
22+
import argparse
2223

2324
from openlrw.oneroster import OneRoster
2425
from openlrw.exceptions import *
@@ -44,6 +45,11 @@ class OpenLRW(object):
4445

4546
URI = ""
4647

48+
parser = argparse.ArgumentParser()
49+
parser.add_argument('--verbose', action='store_true', help='Print all the HTTP calls')
50+
parser.add_argument('--no-mail', action='store_true', help='Disable the email server')
51+
options = parser.parse_args()
52+
4753
def __init__(self, url, username, password):
4854
"""
4955
Constructor
@@ -90,7 +96,8 @@ def mail_server(self, subject, message):
9096
:param message:
9197
:return:
9298
"""
93-
if self._host_mail:
99+
100+
if self._host_mail and not self.options.nomail:
94101
self._mail = smtplib.SMTP(str(self._host_mail))
95102
self._mail.sendmail(self._from_mail, self._to_mail, "Subject: " + subject + " \n\n" + message)
96103

@@ -214,10 +221,10 @@ def generate_jwt(self):
214221
"""
215222
headers = {'X-Requested-With': 'XMLHttpRequest'}
216223
data = {"username": self._username, "password": self._password}
217-
print(OpenLRW.URI)
218224
try:
219225
response = requests.post(OpenLRW.URI + Routes.AUTH, headers=headers, json=data)
220-
Routes.print_post(self.URI + Routes.AUTH, response)
226+
if self.options.verbose:
227+
Routes.print_post(self.URI + Routes.AUTH, response)
221228
res = response.json()
222229
return res['token']
223230
except requests.RequestException:

openlrw/oneroster.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,8 @@ def http_get(route, jwt):
4141
"""
4242
from openlrw.client import OpenLRW
4343
response = requests.get(str(OpenLRW.URI + route), headers={'X-Requested-With': 'XMLHttpRequest', 'Authorization': 'Bearer ' + str(jwt)})
44-
Routes.print_get(route, response)
44+
if OpenLRW.options.verbose:
45+
Routes.print_get(route, response)
4546

4647
if response.status_code == 401:
4748
raise ExpiredTokenException
@@ -61,7 +62,9 @@ def http_post(route, data, jwt):
6162
"""
6263
from openlrw.client import OpenLRW
6364
response = requests.post(str(OpenLRW.URI + route), headers={'X-Requested-With': 'XMLHttpRequest', 'Authorization': 'Bearer ' + str(jwt)}, json=data)
64-
Routes.print_post(route, response)
65+
66+
if OpenLRW.options.verbose:
67+
Routes.print_post(route, response)
6568

6669
if response.status_code == 401:
6770
raise ExpiredTokenException
@@ -82,7 +85,10 @@ def http_delete(route, jwt):
8285
"""
8386
from openlrw.client import OpenLRW
8487
response = requests.delete(str(OpenLRW.URI + route), headers={'X-Requested-With': 'XMLHttpRequest', 'Authorization': 'Bearer ' + str(jwt)})
85-
Routes.print_delete(route, response)
88+
89+
if OpenLRW.options.verbose:
90+
Routes.print_delete(route, response)
91+
8692
if response.status_code == 401:
8793
raise ExpiredTokenException(response)
8894
elif response.status_code == 500:
@@ -101,7 +107,9 @@ def http_patch(route, data, jwt):
101107
"""
102108
from openlrw.client import OpenLRW
103109
response = requests.patch(str(OpenLRW.URI + route), headers={'X-Requested-With': 'XMLHttpRequest', 'Authorization': 'Bearer ' + str(jwt)}, json=data)
104-
Routes.print_patch(route, response)
110+
if OpenLRW.options.verbose:
111+
Routes.print_patch(route, response)
112+
105113
if response.status_code == 401:
106114
raise ExpiredTokenException
107115
elif response.status_code == 400:

0 commit comments

Comments
 (0)