mirror of
https://github.com/pgadmin-org/pgadmin4.git
synced 2025-02-10 07:26:01 -06:00
Fixed cognitive complexity issues reported by SonarQube.
This commit is contained in:
parent
7420673a0f
commit
e8b81db977
@ -295,24 +295,25 @@ class ServerNode(PGChildNodeView):
|
||||
required_ssl_fields_server_mode = ['sslcert', 'sslkey']
|
||||
|
||||
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,
|
||||
# we will set dummy SSL certificate file path which will
|
||||
# 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
|
||||
import os
|
||||
file_extn = '.key' if field.endswith('key') else '.crt'
|
||||
dummy_ssl_file = os.path.join(
|
||||
'<STORAGE_DIR>', '.postgresql',
|
||||
'postgresql' + file_extn
|
||||
)
|
||||
data[field] = dummy_ssl_file
|
||||
# Set file manager directory from preference
|
||||
import os
|
||||
file_extn = '.key' if field.endswith('key') else '.crt'
|
||||
dummy_ssl_file = os.path.join(
|
||||
'<STORAGE_DIR>', '.postgresql',
|
||||
'postgresql' + file_extn
|
||||
)
|
||||
data[field] = dummy_ssl_file
|
||||
# For Desktop mode, we will allow to default
|
||||
else:
|
||||
data[field] = None
|
||||
else:
|
||||
data[field] = None
|
||||
|
||||
return flag, data
|
||||
|
||||
@ -534,28 +535,10 @@ class ServerNode(PGChildNodeView):
|
||||
conn = manager.connection()
|
||||
connected = conn.connected()
|
||||
|
||||
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])
|
||||
)
|
||||
self._server_modify_disallowed_when_connected(
|
||||
connected, data, disp_lbl)
|
||||
|
||||
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
|
||||
idx = self._set_valid_attr_value(data, config_param_map, server)
|
||||
|
||||
if idx == 0:
|
||||
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
|
||||
def list(self, gid):
|
||||
"""
|
||||
|
@ -623,34 +623,39 @@ class EventTriggerView(PGChildNodeView):
|
||||
data=data, o_data=old_data
|
||||
)
|
||||
else:
|
||||
required_args = {
|
||||
'name': 'Name',
|
||||
'eventowner': 'Owner',
|
||||
'eventfunname': 'Trigger function',
|
||||
'enabled': 'Enabled status',
|
||||
'eventname': 'Events'
|
||||
}
|
||||
err = []
|
||||
for arg in required_args:
|
||||
if arg not in data:
|
||||
err.append(required_args.get(arg, arg))
|
||||
if err:
|
||||
return make_json_response(
|
||||
status=410,
|
||||
success=0,
|
||||
errormsg=gettext(
|
||||
"Could not find the required parameter ({})."
|
||||
).format(arg)
|
||||
)
|
||||
sql = render_template(
|
||||
"/".join([self.template_path, 'create.sql']),
|
||||
data=data
|
||||
)
|
||||
sql += "\n"
|
||||
sql += render_template(
|
||||
"/".join([self.template_path, 'grant.sql']),
|
||||
data=data
|
||||
sql = self._get_create_with_grant_sql(data)
|
||||
return sql
|
||||
|
||||
def _get_create_with_grant_sql(self, data):
|
||||
|
||||
required_args = {
|
||||
'name': 'Name',
|
||||
'eventowner': 'Owner',
|
||||
'eventfunname': 'Trigger function',
|
||||
'enabled': 'Enabled status',
|
||||
'eventname': 'Events'
|
||||
}
|
||||
err = []
|
||||
for arg in required_args:
|
||||
if arg not in data:
|
||||
err.append(required_args.get(arg, arg))
|
||||
if err:
|
||||
return make_json_response(
|
||||
status=410,
|
||||
success=0,
|
||||
errormsg=gettext(
|
||||
"Could not find the required parameter ({})."
|
||||
).format(arg)
|
||||
)
|
||||
sql = render_template(
|
||||
"/".join([self.template_path, 'create.sql']),
|
||||
data=data
|
||||
)
|
||||
sql += "\n"
|
||||
sql += render_template(
|
||||
"/".join([self.template_path, 'grant.sql']),
|
||||
data=data
|
||||
)
|
||||
return sql
|
||||
|
||||
@check_precondition
|
||||
|
Loading…
Reference in New Issue
Block a user