Source code for xtd.network.server.param

# -*- coding: utf-8
#------------------------------------------------------------------#

__author__    = "Xavier MARCELET <xavier@marcelet.com>"

#------------------------------------------------------------------#

import cherrypy

from xtd.core.param.manager import ParamManager

#------------------------------------------------------------------#

[docs]class ParamPage(object):
[docs] def __init__(self, p_credentials = None): self.m_credentials = p_credentials
@staticmethod
[docs] def get_data(): l_mgr = ParamManager(p_adminDir="unused") l_list = l_mgr.get_names() l_data = { c_name : l_mgr.get(c_name) for c_name in l_list } return l_data
[docs] def check_password(self, p_realm, p_username, p_password): p_realm = p_realm if not self.m_credentials: return True return (p_username in self.m_credentials) and (p_password == self.m_credentials[p_username])
@cherrypy.expose @cherrypy.tools.json_out() #pylint: disable=unused-argument,no-self-use
[docs] def write(self, *p_args, **p_kwds): for c_name, c_val in p_kwds.items(): l_status = ParamManager(p_adminDir="unused").set(c_name, c_val) if not l_status: cherrypy.response.status = 500 return { "status" : "error", "message" : "unable to set parameters '%s' to value '%s'" % (c_name, str(c_val)) } return { "status" : "success", "message" : None }
@cherrypy.expose @cherrypy.tools.json_out() #pylint: disable=unused-argument,no-self-use
[docs] def default(self, *p_args, **p_kwds): return self.get_data()