NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

resources.py (2595B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\datadog\api\resources.py
      2 from datadog.api.api_client import APIClient
      3 
      4 class CreateableAPIResource(object):
      5 
      6     @classmethod
      7     def create(cls, attach_host_name = False, method = 'POST', id = None, params = None, **body):
      8         if params is None:
      9             params = {}
     10         if method == 'GET':
     11             return APIClient.submit('GET', cls._class_url, **body)
     12         elif id is None:
     13             return APIClient.submit('POST', cls._class_url, body, attach_host_name=attach_host_name, **params)
     14         else:
     15             return APIClient.submit('POST', (cls._class_url + '/' + str(id)), body, attach_host_name=attach_host_name, **params)
     16 
     17 
     18 class SendableAPIResource(object):
     19 
     20     @classmethod
     21     def send(cls, attach_host_name = False, id = None, **body):
     22         if id is None:
     23             return APIClient.submit('POST', cls._class_url, body, attach_host_name=attach_host_name)
     24         else:
     25             return APIClient.submit('POST', cls._class_url + '/' + str(id), body, attach_host_name=attach_host_name)
     26 
     27 
     28 class UpdatableAPIResource(object):
     29 
     30     @classmethod
     31     def update(cls, id, params = None, **body):
     32         if params is None:
     33             params = {}
     34         return APIClient.submit('PUT', (cls._class_url + '/' + str(id)), body, **params)
     35 
     36 
     37 class DeletableAPIResource(object):
     38 
     39     @classmethod
     40     def delete(cls, id, **params):
     41         return APIClient.submit('DELETE', (cls._class_url + '/' + str(id)), **params)
     42 
     43 
     44 class GetableAPIResource(object):
     45 
     46     @classmethod
     47     def get(cls, id, **params):
     48         return APIClient.submit('GET', (cls._class_url + '/' + str(id)), **params)
     49 
     50 
     51 class ListableAPIResource(object):
     52 
     53     @classmethod
     54     def get_all(cls, **params):
     55         return APIClient.submit('GET', cls._class_url, **params)
     56 
     57 
     58 class SearchableAPIResource(object):
     59 
     60     @classmethod
     61     def _search(cls, **params):
     62         return APIClient.submit('GET', cls._class_url, **params)
     63 
     64 
     65 class ActionAPIResource(object):
     66 
     67     @classmethod
     68     def _trigger_class_action(cls, method, name, id = None, **params):
     69         if id is None:
     70             return APIClient.submit(method, cls._class_url + '/' + name, params)
     71         else:
     72             return APIClient.submit(method, cls._class_url + '/' + str(id) + '/' + name, params)
     73 
     74     @classmethod
     75     def _trigger_action(cls, method, name, id = None, **params):
     76         if id is None:
     77             return APIClient.submit(method, name, params)
     78         else:
     79             return APIClient.submit(method, name + '/' + str(id), params)