Ejemplo n.º 1
0
 def get_objects(self,
                 url,
                 query=None,
                 page=0,
                 sort=None,
                 desc=None,
                 model=None):
     query_url = self.__server_uri + self.__api_path + url
     if query is not None:
         query_url += "/query2;q=\"{}\"".format(query_quote(query))
     elif sort is not None and desc is not None:
         query_url += "/query2;"
     query_url += ";page={}".format(page)
     if sort:
         query_url += ";sort={}".format(sort)
     if desc:
         query_url += ";desc={}".format(desc)
     r = self.auth_get(query_url, model=model)
     if r.status_code == codes.ok:
         info("nsi.get_objects", query_url, r)
         results = self.__json_or_none(r)
         return results
     else:
         error("nsi.get_objects", query_url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 2
0
 def get_json_result_type(self, name):
     _url = "{};name={}".format(self.__result_type_url, name)
     r = self.auth_get(_url, model=main_remote.models.CoreResultType)
     if r.status_code == codes.ok:
         info("core.get_json_result_type", _url, r)
         return self.__json_or_none(r)
     else:
         error("core.get_json_result_type", _url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 3
0
 def verify_json_result(self, result, type, model):
     url = "{}/{}/verify".format(self.__result_url, type)
     r = self.auth_post(url, result, model=model)
     if r.status_code == codes.ok:
         info("core.verify_json_result", url, r, result)
         return self.__json_or_none(r)
     else:
         error("core.verify_json_result", url, r, result)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 4
0
 def modify_object(self, url, obj, model):
     _url = self.__server_uri + self.__api_path + url + "/edit"
     r = self.auth_post(_url, obj, model=model)
     if r.status_code == codes.ok:
         info("nsi.modify_object", _url, r, obj)
         return self.__json_or_none(r)
     else:
         error("nsi.modify_object", _url, r, obj)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 5
0
 def create_object(self, url, obj, model):
     _url = self.__server_uri + self.__api_path + url + "/new"
     r = yield from self.auth_post_async(_url, obj, model=model)
     if r.status_code == codes.ok:
         info("nsi.create_object", _url, r, obj)
         return self.__json_or_none(r)
     else:
         error("nsi.create_object", _url, r, obj)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 6
0
 def get_json_result_types(self):
     r = self.auth_get(self.__result_type_url,
                       model=main_remote.models.CoreResultType)
     if r.status_code == codes.ok:
         info("core.get_json_result_types", self.__result_type_url, r)
         return self.__json_or_none(r)
     else:
         error("core.get_json_result_types", self.__result_type_url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 7
0
 def delete_json_result(self, type, id, version, internal_id, model):
     url = "{}/{};id={};version={};internalId={}".format(
         self.__result_url, type, id, version, internal_id)
     r = self.auth_delete(url, model=model)
     if r.status_code == codes.ok:
         info("core.delete_json_result", url, r)
         return self.__json_or_none(r)
     else:
         error("core.delete_json_result", url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 8
0
 def get_page_size(self):
     _url = self.__server_uri + self.__api_path + "/private/settings"
     r = self.auth_get(_url)
     if r.status_code == codes.ok:
         info("nsi.get_page_size", _url, r)
         paging = r.json()["paging"]
         return paging
     else:
         error("nsi.get_page_size", _url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 9
0
 def delete_object(self, url, id, model):
     _url = self.__server_uri + self.__api_path + url + "/" + urllib.parse.quote(
         str(id), safe="")
     r = self.auth_delete(_url, model=model)
     if r.status_code == codes.ok:
         info("nsi.delete_object", _url, r)
         return self.__json_or_none(r)
     else:
         error("nsi.delete_object", _url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 10
0
 def get_nsi_permissions_with_role(self, employee_id, bp_id):
     url = "{}{}/employee/{}/businessprocess/{}/permission".format(
         self.__server_uri, self.__api_path, employee_id, bp_id)
     r = self.auth_get(url, cache_timeout=0)
     if r.status_code == codes.ok:
         info("nsi.get_current_user_nsi_permissions_with_role", url, r)
         res = self.__json_or_none(r)
         return res
     else:
         error("nsi.get_current_user_nsi_permissions_with_role", url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 11
0
 def post_json_result_type(self, result_type):
     _url = self.__result_type_url
     r = self.auth_post(_url,
                        result_type,
                        model=main_remote.models.CoreResultType)
     if r.status_code == codes.ok:
         info("core.post_json_result_type", _url, r, result_type)
         return self.__json_or_none(r)
     else:
         error("core.post_json_result_type", _url, r, result_type)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 12
0
 def get_employee_appointments_by_date(self, employee, date):
     url = "{}{}/employee/{}/appointment/{}".format(self.__server_uri,
                                                    self.__api_path,
                                                    employee, date)
     r = self.auth_get(url, model=main_remote.models.Appointment)
     if r.status_code == codes.ok:
         info("nsi.get_employee_appointments_by_date", url, r)
         res = self.__json_or_none(r)
         return res
     else:
         error("nsi.get_employee_appointments_by_date", url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 13
0
 def get_objects_m2m(self, url, id, related_url, page=0, model=None):
     _url = self.__server_uri + self.__api_path + url + "/" + str(
         id) + related_url + ";page={}"
     url = _url.format(page)
     r = self.auth_get(url, model=model)
     if r.status_code == codes.ok:
         info("nsi.get_objects_m2m", _url, r)
         res = self.__json_or_none(r)
         return res
     else:
         error("nsi.get_objects_m2m", _url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 14
0
 def get_objects_count(self, url, query=None, model=None):
     query_url = self.__server_uri + self.__api_path + url
     if query is not None:
         query_url += "/query2/count;q=\"{}\"".format(query_quote(query))
     else:
         query_url += "/count"
     r = self.auth_get(query_url, model=model)
     if r.status_code == codes.ok:
         info("nsi.get_objects_count", query_url, r)
         result = r.json()
         return result
     else:
         error("nsi.get_objects_count", query_url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 15
0
 def get_object_by_id(self, url, id, model):
     _url = self.__server_uri + self.__api_path + url + "/" + urllib.parse.quote(
         str(id), safe="")
     r = self.auth_get(_url, model=model)
     if r.status_code == codes.ok:
         info("nsi.get_object_by_id", _url, r)
         res = self.__json_or_none(r)
         return res
     elif r.status_code == codes.not_found:
         info("nsi.get_object_by_id", _url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
     else:
         error("nsi.get_object_by_id", _url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 16
0
 def get_objects_agg(self, url, agg, query=None, model=None):
     query_url = self.__server_uri + self.__api_path + url + "/query2/aggregate"
     query_url += ";agg={}".format(agg)
     if query is not None:
         query_url += ";q=\"{}\"".format(query_quote(query))
     r = self.auth_get(query_url, model=model)
     if r.status_code == codes.ok:
         info("nsi.get_objects_agg", query_url, r)
         result = r.json()
         if result == "NaN":
             result = None
         return result
     else:
         error("nsi.get_objects_agg", query_url, r)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 17
0
    def get_allowed_results_count_async(self,
                                        result_type,
                                        permission,
                                        query=None,
                                        parents=None,
                                        model=None):
        params = self.prepare_query_params(result_type,
                                           permission,
                                           query=query,
                                           parents=parents)
        url = "{};{}".format(self.__data_count_url, params)
        r = yield from self.auth_get_async(url, model=model)
        if r.status_code == codes.ok:
            info("core.get_allowed_results_count", url, r, result_type)
            return r.json()

        else:
            error("core.get_allowed_results_count", url, r, result_type)
            raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 18
0
 def get_allowed_results(self,
                         result_type,
                         permission,
                         page=0,
                         query=None,
                         sort=None,
                         desc=False,
                         parents=None,
                         model=None):
     params = self.prepare_query_params(result_type, permission, page,
                                        query, sort, desc, parents)
     url = "{};{}".format(self.__data_url, params)
     r = self.auth_get(url, model=model)
     if r.status_code == codes.ok:
         info("core.get_allowed_results", url, r, result_type)
         res = self.__json_or_none(r)
         return res
     else:
         error("core.get_allowed_results", url, r, result_type)
         raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))
Ejemplo n.º 19
0
    def get_allowed_results_agg(self,
                                result_type,
                                permission,
                                agg,
                                query=None,
                                parents=None,
                                model=None):
        params = self.prepare_query_params(result_type,
                                           permission,
                                           query=query,
                                           parents=parents,
                                           agg=agg)
        url = "{};{}".format(self.__data_agg_url, params)
        r = self.auth_get(url, model=model)
        if r.status_code == codes.ok:
            info("core.get_allowed_results_agg", url, r, result_type)
            result = r.json()
            if result == "NaN":
                result = None
            return result

        else:
            error("core.get_allowed_results_agg", url, r, result_type)
            raise RemoteDatabaseError(remote_error_json=self.__json_or_none(r))