U vi @sDdZddlmZmZmZddlmZmZmZm Z Gddde Z dS)zaLabels are a way to add visual metadata to dashboards, tasks, and other items in the InfluxDB UI.)ListDictUnion) LabelsServiceLabelCreateRequestLabel LabelUpdatec@seZdZdZddZdeeeeefedddZedd d Z e eefdd d Z eeed ddZ e ddddZedddZe ddddZdS) LabelsApiz-Implementation for '/api/v2/labels' endpoint.cCs||_t|j|_dS)zInitialize defaults.N)Z_influxdb_clientrZ api_client_service)selfinfluxdb_clientr R/opt/alt/python38/lib/python3.8/site-packages/influxdb_client/client/labels_api.py__init__ szLabelsApi.__init__N)nameorg_id propertiesreturncCst|||d}|jj|djS)z Create a new label. :param name: label name :param org_id: organization id :param properties: optional label properties :return: created label )rrr)Zlabel_create_request)rr Z post_labelslabel)r rrrZ label_requestr r r create_labels zLabelsApi.create_label)rcCs*t}|j|_|j|_|jj|j|djS)z Update an existing label name and properties. :param label: label :return: the updated label )label_id label_update)rrrr Zpatch_labels_ididr)r rrr r r update_labelszLabelsApi.update_labelcCs0d}t|tr|}t|tr"|j}|jj|dS)zL Delete the label. :param label: label id or Label Nr) isinstancestrrrr Zdelete_labels_id)r rrr r r delete_label(s   zLabelsApi.delete_label) cloned_namerrcCs*d}|jdk r|j}|j|||jdS)z Create the new instance of the label as a copy existing label. :param cloned_name: new label name :param label: existing label :return: clonned Label N)rrr)rcopyrr)r rrZcloned_propertiesr r r clone_label8s  zLabelsApi.clone_labelr)rcKs|jjf|jS)zs Get all available labels. :key str org_id: The organization ID. :return: labels r Z get_labelslabels)r kwargsr r r find_labelsFszLabelsApi.find_labelsrcCs|jj|djS)z\ Retrieve the label by id. :param label_id: :return: Label r)r Z get_labels_idr)r rr r rfind_label_by_idPszLabelsApi.find_label_by_idcCs|jj|djS)z Get the list of all labels for given organization. :param org_id: organization id :return: list of labels )rr!)r rr r rfind_label_by_orgYszLabelsApi.find_label_by_org)N)__name__ __module__ __qualname____doc__rrrrrrrrr rr$r%r&r r r rr s    r N) r*typingrrrr rrrrobjectr r r r rs