diff --git a/server/extension/sql/200_quotas.sql b/server/extension/sql/200_quotas.sql index 0f5fec2..c5d4f36 100644 --- a/server/extension/sql/200_quotas.sql +++ b/server/extension/sql/200_quotas.sql @@ -54,3 +54,20 @@ RETURNS boolean AS $$ else: raise 'not implemented' $$ LANGUAGE plpythonu; + + +CREATE OR REPLACE FUNCTION cdb_dataservices_server.cdb_provider( + username TEXT, + orgname TEXT, + service TEXT) +RETURNS TEXT AS $$ + plpy.execute("SELECT cdb_dataservices_server._connect_to_redis('{0}')".format(username)) + redis_conn = GD["redis_connection_{0}".format(username)]['redis_metrics_connection'] + + if service == 'isolines': + plpy.execute("SELECT cdb_dataservices_server._get_isolines_routing_config({0}, {1})".format(plpy.quote_nullable(username), plpy.quote_nullable(orgname))) + user_isolines_config = GD["user_isolines_routing_config_{0}".format(username)] + return user_isolines_config.provider + else: + raise 'not implemented' +$$ LANGUAGE plpythonu;