Fixed cognitive complexity issues reported by SonarQube.

This commit is contained in:
Rahul Shirsat 2020-07-10 11:44:33 +05:30 committed by Akshay Joshi
parent 7420673a0f
commit e8b81db977
2 changed files with 80 additions and 61 deletions

View File

@ -295,13 +295,14 @@ class ServerNode(PGChildNodeView):
required_ssl_fields_server_mode = ['sslcert', 'sslkey'] required_ssl_fields_server_mode = ['sslcert', 'sslkey']
for field in ssl_fields: for field in ssl_fields:
if field not in data: if field in data:
continue
elif config.SERVER_MODE and \
field in required_ssl_fields_server_mode:
# In Server mode, # In Server mode,
# we will set dummy SSL certificate file path which will # we will set dummy SSL certificate file path which will
# prevent using default SSL certificates from web servers # prevent using default SSL certificates from web servers
if config.SERVER_MODE and \
field in required_ssl_fields_server_mode:
# Set file manager directory from preference # Set file manager directory from preference
import os import os
file_extn = '.key' if field.endswith('key') else '.crt' file_extn = '.key' if field.endswith('key') else '.crt'
@ -534,28 +535,10 @@ class ServerNode(PGChildNodeView):
conn = manager.connection() conn = manager.connection()
connected = conn.connected() connected = conn.connected()
if connected: self._server_modify_disallowed_when_connected(
for arg in ( connected, data, disp_lbl)
'hostaddr', 'db', 'sslmode',
'role', 'service'
):
if arg in data:
return forbidden(
errmsg=gettext(
"'{0}' is not allowed to modify, "
"when server is connected."
).format(disp_lbl[arg])
)
for arg in config_param_map: idx = self._set_valid_attr_value(data, config_param_map, server)
if arg in data:
value = data[arg]
# sqlite3 do not have boolean type so we need to convert
# it manually to integer
if arg == 'sslcompression':
value = 1 if value else 0
setattr(server, config_param_map[arg], value)
idx += 1
if idx == 0: if idx == 0:
return make_json_response( return make_json_response(
@ -591,6 +574,37 @@ class ServerNode(PGChildNodeView):
) )
) )
def _set_valid_attr_value(self, data, config_param_map, server):
idx = 0
for arg in config_param_map:
if arg in data:
value = data[arg]
# sqlite3 do not have boolean type so we need to convert
# it manually to integer
if arg == 'sslcompression':
value = 1 if value else 0
setattr(server, config_param_map[arg], value)
idx += 1
return idx
def _server_modify_disallowed_when_connected(
self, connected, data, disp_lbl):
if connected:
for arg in (
'hostaddr', 'db', 'sslmode',
'role', 'service'
):
if arg in data:
return forbidden(
errmsg=gettext(
"'{0}' is not allowed to modify, "
"when server is connected."
).format(disp_lbl[arg])
)
@login_required @login_required
def list(self, gid): def list(self, gid):
""" """

View File

@ -623,6 +623,11 @@ class EventTriggerView(PGChildNodeView):
data=data, o_data=old_data data=data, o_data=old_data
) )
else: else:
sql = self._get_create_with_grant_sql(data)
return sql
def _get_create_with_grant_sql(self, data):
required_args = { required_args = {
'name': 'Name', 'name': 'Name',
'eventowner': 'Owner', 'eventowner': 'Owner',