| #!/usr/bin/python |
| |
| import time |
| import json |
| import jsonpath |
| |
| import conf |
| |
| |
| def get_ne_info_list_from_db(ne_filter): |
| with open(conf.NE_INFO_TABLE) as f_ne_info: |
| ne_info_table = json.load(f_ne_info) |
| |
| if ne_info_table: |
| ne_info_list = jsonpath.jsonpath(ne_info_table, ne_filter) |
| return ne_info_list if ne_info_list else [] |
| else: |
| return [] |
| |
| |
| def get_ne_info_from_db_by_id(ne_id): |
| ne_filter = '$..[?(@.nEIdentification == "%s")]' % ne_id |
| |
| ne_info_list = get_ne_info_list_from_db(ne_filter) |
| |
| return ne_info_list[0] if ne_info_list else None |
| |
| |
| def update_ne_info(ne_info): |
| with open(conf.NE_INFO_TABLE) as f_ne_info: |
| ne_info_table = json.load(f_ne_info) |
| |
| ne_info["updateTime"] = time.asctime() |
| |
| if ne_info_table: |
| for i in range(0, len(ne_info_table)): |
| if ne_info_table[i]["nEIdentification"] == ne_info["nEIdentification"]: |
| ne_info_table[i] = ne_info |
| break |
| else: |
| ne_info_table.append(ne_info) |
| else: |
| ne_info_table = [ne_info] |
| |
| with open(conf.NE_INFO_TABLE, 'w') as f_ne_info: |
| json.dump(ne_info_table, f_ne_info, indent=2) |
| |
| |
| def send_notification(notification, process_id): |
| notification_file = conf.NOTIFICATION_DIR + '/%s-%d' % (notification['notificationType'], process_id) |
| |
| with open(notification_file, 'w') as f_notification: |
| f_notification.write(json.dumps(notification)) |