Пример #1
0
 def lists(cls):
   cls.fetchRequest('Lists')
   headers = cls.headers()
   try:
     return json.loads(requests.get(base_url.format(server, "Lists"), headers=headers).text)['Response']
   except Exception as e:
     print e
Пример #2
0
 def fetchRequest(cls, method, json_data=None, listRequest=False, headers=None):
   if headers:
     pass
   elif listRequest:
     headers = cls.listHeaders()
   else:
     headers = cls.headers()
   try:
     if json_data:
       response = requests.post(base_url.format(server, method), headers=headers, json=json_data)
     else:
       response = requests.post(base_url.format(server, method), headers=headers)
     if response.ok:
       return json.loads(response.text)
   except Exception as e:
     return e
Пример #3
0
 def delete(self, list_item_id):
   headers = self.__class__.listHeaders()
   headers['ListItemId'] = list_item_id
   try:
     return json.loads(requests.delete(base_url.format(server, "Set"), headers=headers).text)
   except Exception as e:
     print e
Пример #4
0
 def find(cls, filter=None, **kwargs):
   headers = cls.listHeaders()
   cls.check_query()
   cls._query['list'] = headers['List']
   if kwargs: map(lambda (x, y): cls._query['where'].append({"type": "equal", "column": x, "value": y}), [(k, v) for k, v in kwargs.iteritems()])
   if filter: map(lambda (x, y): cls._query['where'].append({"type": "equal", "column": x, "value": y}), [(k, v) for k, v in filter.iteritems()])
   try:
     import json
     response = requests.post(base_url.format(server, "List"), headers=headers, json=cls._query)
     if response.status_code == 401:
       cls.get_access_token()
     cls._query = {}
     if response.ok:
       _result = json.loads(response.text)
       if type(_result) == list:
         if len(_result) == 1:
           result = _result[0]
           newObj = cls()
           for key in result.iterkeys():
             newObj[key] = result[key]
           return newObj
         else:
           result = []
           for t in json.loads(response.text):
             newObj = cls()
             for key in t.iterkeys():
               newObj[key] = t[key]
             result.append(newObj)
           return result
   except Exception as e:
     print e
Пример #5
0
 def delete(self, list_item_id):
     headers = self.__class__.listHeaders()
     headers['ListItemId'] = list_item_id
     try:
         return json.loads(
             requests.delete(base_url.format(server, "Set"),
                             headers=headers).text)
     except Exception as e:
         print e
Пример #6
0
 def lists(cls):
     cls.fetchRequest('Lists')
     headers = cls.headers()
     try:
         return json.loads(
             requests.get(base_url.format(server, "Lists"),
                          headers=headers).text)['Response']
     except Exception as e:
         print e
Пример #7
0
 def create_custom_pk_for_cl(cls, cl):
     headers = cls.headers()
     headers["List"] = "CustomPkCounter"
     response = requests.post(base_url.format(server, "Add"),
                              headers=headers,
                              json={
                                  "cl": cl,
                                  "count": 1
                              })
     if response.ok:
         return json.loads(response.text)
Пример #8
0
 def handle_custom_pk(cls):
   query = query_defaults
   query['count'] = 1
   query['list'] = 'CustomPkCounter'
   query['where'].append({"type": "equal", "column": "cl", "value": cls.__name__})
   headers = cls.headers()
   last = json.loads(requests.post(base_url.format(server, "List"), headers=headers, json=query).text)
   if last not in EMPTY_VALUES:
     return last[0]['count'] + 1
   cls.create_custom_pk_for_cl(cls.__name__)
   return 1
Пример #9
0
 def fetchRequest(cls,
                  method,
                  json_data=None,
                  listRequest=False,
                  headers=None):
     if headers:
         pass
     elif listRequest:
         headers = cls.listHeaders()
     else:
         headers = cls.headers()
     try:
         if json_data:
             response = requests.post(base_url.format(server, method),
                                      headers=headers,
                                      json=json_data)
         else:
             response = requests.post(base_url.format(server, method),
                                      headers=headers)
         if response.ok:
             return json.loads(response.text)
     except Exception as e:
         return e
Пример #10
0
 def find(cls, filter=None, **kwargs):
     headers = cls.listHeaders()
     cls.check_query()
     cls._query['list'] = headers['List']
     if kwargs:
         map(
             lambda (x, y): cls._query['where'].append({
                 "type": "equal",
                 "column": x,
                 "value": y
             }), [(k, v) for k, v in kwargs.iteritems()])
     if filter:
         map(
             lambda (x, y): cls._query['where'].append({
                 "type": "equal",
                 "column": x,
                 "value": y
             }), [(k, v) for k, v in filter.iteritems()])
     try:
         import json
         response = requests.post(base_url.format(server, "List"),
                                  headers=headers,
                                  json=cls._query)
         if response.status_code == 401:
             cls.get_access_token()
         cls._query = {}
         if response.ok:
             _result = json.loads(response.text)
             if type(_result) == list:
                 if len(_result) == 1:
                     result = _result[0]
                     newObj = cls()
                     for key in result.iterkeys():
                         newObj[key] = result[key]
                     return newObj
                 else:
                     result = []
                     for t in json.loads(response.text):
                         newObj = cls()
                         for key in t.iterkeys():
                             newObj[key] = t[key]
                         result.append(newObj)
                     return result
     except Exception as e:
         print e
Пример #11
0
 def handle_custom_pk(cls):
     query = query_defaults
     query['count'] = 1
     query['list'] = 'CustomPkCounter'
     query['where'].append({
         "type": "equal",
         "column": "cl",
         "value": cls.__name__
     })
     headers = cls.headers()
     last = json.loads(
         requests.post(base_url.format(server, "List"),
                       headers=headers,
                       json=query).text)
     if last not in EMPTY_VALUES:
         return last[0]['count'] + 1
     cls.create_custom_pk_for_cl(cls.__name__)
     return 1
Пример #12
0
 def create_custom_pk_for_cl(cls, cl):
   headers = cls.headers()
   headers["List"] = "CustomPkCounter"
   response = requests.post(base_url.format(server, "Add"), headers=headers, json={"cl": cl, "count": 1})
   if response.ok:
     return json.loads(response.text)