Skip to content

Commit ed13d7b

Browse files
committed
Merge pull request #1288 from swagger-api/revert-1281-python_log
Revert "[Python] Fix issue in python client"
2 parents e8d40a1 + c59e2b8 commit ed13d7b

File tree

4 files changed

+60
-93
lines changed

4 files changed

+60
-93
lines changed

modules/swagger-codegen/src/main/resources/python/api_client.mustache

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ from .rest import ApiException
2525

2626
import os
2727
import re
28-
import sys
2928
import urllib
3029
import json
3130
import mimetypes

modules/swagger-codegen/src/main/resources/python/configuration.mustache

Lines changed: 29 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Copyright 2015 SmartBear Software
1515
See the License for the specific language governing permissions and
1616
limitations under the License.
1717

18-
ref: https://github.com/swagger-api/swagger-codegen
18+
ref: https://github.com/swagger-api/swagger-codegen
1919
"""
2020

2121
from __future__ import absolute_import
@@ -27,11 +27,10 @@ try:
2727
except ImportError:
2828
# for python3
2929
import http.client as httplib
30-
30+
3131
import sys
3232
import logging
3333

34-
from six import iteritems
3534

3635
def singleton(cls, *args, **kw):
3736
instances = {}
@@ -73,23 +72,36 @@ class Configuration(object):
7372
self.password = ""
7473

7574
# Logging Settings
76-
self.logger = {}
77-
self.logger["package_logger"] = logging.getLogger("{{packageName}}")
78-
self.logger["urllib3_logger"] = logging.getLogger("urllib3")
79-
# Log format
8075
self.logging_format = '%(asctime)s %(levelname)s %(message)s'
8176
# Debug file location
82-
self.logging_stream_handler = None
83-
self.logging_file_handler = None
84-
self.logging_file = None
77+
self.__logging_file = None
8578
# Debug switch
86-
self.debug = False
79+
self.__debug = False
80+
self.init_logger()
8781

8882
# SSL/TLS verification
8983
# Set this to false to skip verifying SSL certificate when calling API from https server.
9084
self.verify_ssl = True
9185
# Set this to customize the certificate file to verify the peer.
9286
self.ssl_ca_cert = None
87+
88+
def init_logger(self):
89+
"""
90+
Initializes logger settings.
91+
"""
92+
self.logger = logging.getLogger()
93+
formatter = logging.Formatter(self.logging_format)
94+
stream_handler = logging.StreamHandler()
95+
stream_handler.setFormatter(formatter)
96+
self.logger.addHandler(stream_handler)
97+
if self.__debug:
98+
self.logger.setLevel(logging.DEBUG)
99+
else:
100+
self.logger.setLevel(logging.WARNING)
101+
if self.__logging_file:
102+
file_handler = logging.FileHandler(self.__logging_file)
103+
file_handler.setFormatter(formatter)
104+
self.logger.addFilter(file_handler)
93105

94106
@property
95107
def logging_file(self):
@@ -99,23 +111,10 @@ class Configuration(object):
99111
def logging_file(self, value):
100112
self.__logging_file = value
101113
if self.__logging_file:
102-
# If set logging file,
103-
# then add file handler and remove stream handler.
104-
self.logging_file_handler = logging.FileHandler(self.__logging_file)
105-
self.logging_file_handler.setFormatter(self.logging_formatter)
106-
for _, logger in iteritems(self.logger):
107-
logger.addHandler(self.logging_file_handler)
108-
if self.logging_stream_handler:
109-
logger.removeHandler(self.logging_stream_handler)
110-
else:
111-
# If not set logging file,
112-
# then add stream handler and remove file handler.
113-
self.logging_stream_handler = logging.StreamHandler()
114-
self.logging_stream_handler.setFormatter(self.logging_formatter)
115-
for _, logger in iteritems(self.logger):
116-
logger.addHandler(self.logging_stream_handler)
117-
if self.logging_file_handler:
118-
logger.removeHandler(self.logging_file_handler)
114+
formater = logging.Formatter(self.logging_format)
115+
file_handler = logging.FileHandler(self.__logging_file)
116+
file_handler.setFormatter(formater)
117+
self.logger.addHandler(file_handler)
119118

120119
@property
121120
def debug(self):
@@ -126,26 +125,13 @@ class Configuration(object):
126125
self.__debug = value
127126
if self.__debug:
128127
# if debug status is True, turn on debug logging
129-
for _, logger in iteritems(self.logger):
130-
logger.setLevel(logging.DEBUG)
128+
self.logger.setLevel(logging.DEBUG)
131129
# turn on httplib debug
132130
httplib.HTTPConnection.debuglevel = 1
133131
else:
134132
# if debug status is False, turn off debug logging,
135133
# setting log level to default `logging.WARNING`
136-
for _, logger in iteritems(self.logger):
137-
logger.setLevel(logging.WARNING)
138-
# turn off httplib debug
139-
httplib.HTTPConnection.debuglevel = 0
140-
141-
@property
142-
def logging_format(self):
143-
return self.__logging_format
144-
145-
@logging_format.setter
146-
def logging_format(self, value):
147-
self.__logging_format = value
148-
self.logging_formatter = logging.Formatter(self.__logging_format)
134+
self.logger.setLevel(logging.WARNING)
149135

150136
def get_api_key_with_prefix(self, identifier):
151137
"""

samples/client/petstore/python/swagger_client/api_client.py

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525

2626
import os
2727
import re
28-
import sys
2928
import urllib
3029
import json
3130
import mimetypes
@@ -181,19 +180,16 @@ def sanitize_for_serialization(self, obj):
181180
If obj is str, int, float, bool, return directly.
182181
If obj is datetime.datetime, datetime.date
183182
convert to string in iso8601 format.
184-
If obj is list, sanitize each element in the list.
183+
If obj is list, santize each element in the list.
185184
If obj is dict, return the dict.
186185
If obj is swagger model, return the properties dict.
187186
188187
:param obj: The data to serialize.
189188
:return: The serialized form of data.
190189
"""
191-
types = (str, int, float, bool, tuple)
192-
if sys.version_info < (3,0):
193-
types = types + (unicode,)
194190
if isinstance(obj, type(None)):
195191
return None
196-
elif isinstance(obj, types):
192+
elif isinstance(obj, (str, int, float, bool, tuple)):
197193
return obj
198194
elif isinstance(obj, list):
199195
return [self.sanitize_for_serialization(sub_obj)

samples/client/petstore/python/swagger_client/configuration.py

Lines changed: 29 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
See the License for the specific language governing permissions and
1616
limitations under the License.
1717
18-
ref: https://github.com/swagger-api/swagger-codegen
18+
ref: https://github.com/swagger-api/swagger-codegen
1919
"""
2020

2121
from __future__ import absolute_import
@@ -27,11 +27,10 @@
2727
except ImportError:
2828
# for python3
2929
import http.client as httplib
30-
30+
3131
import sys
3232
import logging
3333

34-
from six import iteritems
3534

3635
def singleton(cls, *args, **kw):
3736
instances = {}
@@ -73,23 +72,36 @@ def __init__(self):
7372
self.password = ""
7473

7574
# Logging Settings
76-
self.logger = {}
77-
self.logger["package_logger"] = logging.getLogger("swagger_client")
78-
self.logger["urllib3_logger"] = logging.getLogger("urllib3")
79-
# Log format
8075
self.logging_format = '%(asctime)s %(levelname)s %(message)s'
8176
# Debug file location
82-
self.logging_stream_handler = None
83-
self.logging_file_handler = None
84-
self.logging_file = None
77+
self.__logging_file = None
8578
# Debug switch
86-
self.debug = False
79+
self.__debug = False
80+
self.init_logger()
8781

8882
# SSL/TLS verification
8983
# Set this to false to skip verifying SSL certificate when calling API from https server.
9084
self.verify_ssl = True
9185
# Set this to customize the certificate file to verify the peer.
9286
self.ssl_ca_cert = None
87+
88+
def init_logger(self):
89+
"""
90+
Initializes logger settings.
91+
"""
92+
self.logger = logging.getLogger()
93+
formatter = logging.Formatter(self.logging_format)
94+
stream_handler = logging.StreamHandler()
95+
stream_handler.setFormatter(formatter)
96+
self.logger.addHandler(stream_handler)
97+
if self.__debug:
98+
self.logger.setLevel(logging.DEBUG)
99+
else:
100+
self.logger.setLevel(logging.WARNING)
101+
if self.__logging_file:
102+
file_handler = logging.FileHandler(self.__logging_file)
103+
file_handler.setFormatter(formatter)
104+
self.logger.addFilter(file_handler)
93105

94106
@property
95107
def logging_file(self):
@@ -99,23 +111,10 @@ def logging_file(self):
99111
def logging_file(self, value):
100112
self.__logging_file = value
101113
if self.__logging_file:
102-
# If set logging file,
103-
# then add file handler and remove stream handler.
104-
self.logging_file_handler = logging.FileHandler(self.__logging_file)
105-
self.logging_file_handler.setFormatter(self.logging_formatter)
106-
for _, logger in iteritems(self.logger):
107-
logger.addHandler(self.logging_file_handler)
108-
if self.logging_stream_handler:
109-
logger.removeHandler(self.logging_stream_handler)
110-
else:
111-
# If not set logging file,
112-
# then add stream handler and remove file handler.
113-
self.logging_stream_handler = logging.StreamHandler()
114-
self.logging_stream_handler.setFormatter(self.logging_formatter)
115-
for _, logger in iteritems(self.logger):
116-
logger.addHandler(self.logging_stream_handler)
117-
if self.logging_file_handler:
118-
logger.removeHandler(self.logging_file_handler)
114+
formater = logging.Formatter(self.logging_format)
115+
file_handler = logging.FileHandler(self.__logging_file)
116+
file_handler.setFormatter(formater)
117+
self.logger.addHandler(file_handler)
119118

120119
@property
121120
def debug(self):
@@ -126,26 +125,13 @@ def debug(self, value):
126125
self.__debug = value
127126
if self.__debug:
128127
# if debug status is True, turn on debug logging
129-
for _, logger in iteritems(self.logger):
130-
logger.setLevel(logging.DEBUG)
128+
self.logger.setLevel(logging.DEBUG)
131129
# turn on httplib debug
132130
httplib.HTTPConnection.debuglevel = 1
133131
else:
134132
# if debug status is False, turn off debug logging,
135133
# setting log level to default `logging.WARNING`
136-
for _, logger in iteritems(self.logger):
137-
logger.setLevel(logging.WARNING)
138-
# turn off httplib debug
139-
httplib.HTTPConnection.debuglevel = 0
140-
141-
@property
142-
def logging_format(self):
143-
return self.__logging_format
144-
145-
@logging_format.setter
146-
def logging_format(self, value):
147-
self.__logging_format = value
148-
self.logging_formatter = logging.Formatter(self.__logging_format)
134+
self.logger.setLevel(logging.WARNING)
149135

150136
def get_api_key_with_prefix(self, identifier):
151137
"""

0 commit comments

Comments
 (0)