8787 from urlparse import urlsplit
8888
8989
90+ BOOLEANS_TRUE = frozenset (('y' , 'yes' , 'on' , '1' , 'true' , 't' , 1 , 1.0 , True ))
91+ BOOLEANS_FALSE = frozenset (('n' , 'no' , 'off' , '0' , 'false' , 'f' , 0 , 0.0 , False ))
92+ BOOLEANS = BOOLEANS_TRUE .union (BOOLEANS_FALSE )
93+
94+
9095def _validate_icruri (base_uri ):
9196 # The icr_uri should specify https, the server name/address, and the path
9297 # to the REST-or-tm management interface "/mgmt/tm/"
@@ -379,7 +384,8 @@ def __init__(self, username, password, **kwargs):
379384 """
380385
381386 # Used for holding debug information
382- self ._debug = []
387+ self ._debug_output = []
388+ self ._debug = False
383389
384390 verify = kwargs .pop ('verify' , False )
385391 timeout = kwargs .pop ('timeout' , 30 )
@@ -436,6 +442,19 @@ def __init__(self, username, password, **kwargs):
436442 if user_agent :
437443 self .append_user_agent (user_agent )
438444
445+ @property
446+ def debug (self ):
447+ return self ._debug
448+
449+ @debug .setter
450+ def debug (self , value ):
451+ if value in BOOLEANS :
452+ self ._debug = value
453+
454+ @property
455+ def debug_output (self ):
456+ return self ._debug_output
457+
439458 @decorate_HTTP_verb_method
440459 def delete (self , uri , ** kwargs ):
441460 """Sends a HTTP DELETE command to the BIGIP REST Server.
@@ -460,7 +479,8 @@ def delete(self, uri, **kwargs):
460479 args2 = get_send_args (kwargs )
461480 req = requests .Request ('DELETE' , uri , ** args1 )
462481 prepared = self .session .prepare_request (req )
463- self ._debug .append (debug_prepared_request (prepared ))
482+ if self .debug :
483+ self ._debug_output .append (debug_prepared_request (prepared ))
464484 return self .session .send (prepared , ** args2 )
465485
466486 @decorate_HTTP_verb_method
@@ -487,7 +507,8 @@ def get(self, uri, **kwargs):
487507 args2 = get_send_args (kwargs )
488508 req = requests .Request ('GET' , uri , ** args1 )
489509 prepared = self .session .prepare_request (req )
490- self ._debug .append (debug_prepared_request (prepared ))
510+ if self .debug :
511+ self ._debug_output .append (debug_prepared_request (prepared ))
491512 return self .session .send (prepared , ** args2 )
492513
493514 @decorate_HTTP_verb_method
@@ -516,7 +537,8 @@ def patch(self, uri, data=None, **kwargs):
516537 args2 = get_send_args (kwargs )
517538 req = requests .Request ('PATCH' , uri , data = data , ** args1 )
518539 prepared = self .session .prepare_request (req )
519- self ._debug .append (debug_prepared_request (prepared ))
540+ if self .debug :
541+ self ._debug_output .append (debug_prepared_request (prepared ))
520542 return self .session .send (prepared , ** args2 )
521543
522544 @decorate_HTTP_verb_method
@@ -547,7 +569,8 @@ def post(self, uri, data=None, json=None, **kwargs):
547569 args2 = get_send_args (kwargs )
548570 req = requests .Request ('POST' , uri , data = data , json = json , ** args1 )
549571 prepared = self .session .prepare_request (req )
550- self ._debug .append (debug_prepared_request (prepared ))
572+ if self .debug :
573+ self ._debug_output .append (debug_prepared_request (prepared ))
551574 return self .session .send (prepared , ** args2 )
552575
553576 @decorate_HTTP_verb_method
@@ -578,7 +601,8 @@ def put(self, uri, data=None, **kwargs):
578601 args2 = get_send_args (kwargs )
579602 req = requests .Request ('PUT' , uri , data = data , ** args1 )
580603 prepared = self .session .prepare_request (req )
581- self ._debug .append (debug_prepared_request (prepared ))
604+ if self .debug :
605+ self ._debug .append (debug_prepared_request (prepared ))
582606 return self .session .send (prepared , ** args2 )
583607
584608 def append_user_agent (self , user_agent ):
0 commit comments