def upload_file(self, file_name): did, app_id, response = pre_proc(self.response, access_vault=VAULT_ACCESS_WR) if response is not None: return response file_name = filter_path_root(file_name) full_path_name, err = query_upload_get_filepath(did, app_id, file_name) if err: return self.response.response_err(err["status_code"], err["description"]) try: with open(full_path_name, "bw") as f: chunk_size = 4096 while True: chunk = request.stream.read(chunk_size) if len(chunk) == 0: break f.write(chunk) file_size = os.path.getsize(full_path_name.as_posix()) inc_vault_file_use_storage_byte(did, file_size) except Exception as e: return self.response.response_err(INTERNAL_SERVER_ERROR, f"Exception: {str(e)}") return self.response.response_ok()
def get_vault_package_order_list(self): did, app_id, err = pre_proc(self.response) if err: return err info_list = list(get_order_info_list(did, app_id)) for info in info_list: self.__id_to_order_id(info) return self.response.response_ok({"order_info_list": info_list})
def upload_file(self, file_name): did, app_id, response = pre_proc(self.response, access_vault=VAULT_ACCESS_WR) if response is not None: return response _, resp_err = v2_wrapper(self.ipfs_files.upload_file_with_path)(did, app_id, file_name) if resp_err: return resp_err return self.response.response_ok()
def create_free_vault_backup(self): did, app_id, err = pre_proc(self.response) if err: return err service = get_vault_backup_service(did) if service: return self.response.response_ok() free_info = PaymentConfig.get_free_backup_info() setup_vault_backup_service(did, free_info["maxStorage"], free_info["serviceDays"]) return self.response.response_ok()
def get_vault_backup_service_info(self): did, app_id, err = pre_proc(self.response) if err: return err info = get_vault_backup_service(did) if not info: return self.response.response_err( NOT_FOUND, "vault backup service not found") else: del info["_id"] data = dict() info[VAULT_BACKUP_SERVICE_USE_STORAGE] = info[ VAULT_BACKUP_SERVICE_USE_STORAGE] / (1024 * 1024) data["vault_service_info"] = info return self.response.response_ok(data)
def create_free_vault(self): did, app_id, err = pre_proc(self.response) if err: return err service = get_vault_service(did) if service: data = {"existing": True} return self.response.response_ok(data) free_info = PaymentConfig.get_free_vault_info() setup_vault_service(did, free_info["maxStorage"], free_info["serviceDays"]) return self.response.response_ok()
def get_sub_channels(self): did, app_id, err = pre_proc(self.response) if err: return err channel_list = pub_get_sub_channels(did, app_id) if not channel_list: return self.response.response_err(NOT_FOUND, "not found channel of " + did) channel_name_list = list() for channel in channel_list: channel_name_list.append(channel[PUB_CHANNEL_NAME]) data = {"channels": channel_name_list} return self.response.response_ok(data)
def get_vault_service_info(self): did, app_id, err = pre_proc(self.response) if err: return err info = get_vault_service(did) if not info: return self.response.response_err(NOT_FOUND, "vault service not found") else: del info["_id"] data = dict() info[VAULT_SERVICE_MAX_STORAGE] = float(info[VAULT_SERVICE_MAX_STORAGE]) \ if info[VAULT_SERVICE_MAX_STORAGE] < 1024 * 1024 \ else info[VAULT_SERVICE_MAX_STORAGE] / (1024 * 1024) info[VAULT_SERVICE_FILE_USE_STORAGE] = info[ VAULT_SERVICE_FILE_USE_STORAGE] / (1024 * 1024) info[VAULT_SERVICE_DB_USE_STORAGE] = info[ VAULT_SERVICE_DB_USE_STORAGE] / (1024 * 1024) data["vault_service_info"] = info return self.response.response_ok(data)
def get_vault_package_info(self): did, app_id, err = pre_proc(self.response) if err: return err data = PaymentConfig.get_all_package_info() return self.response.response_ok(data)
def get_version(self): did, app_id, err = pre_proc(self.response) if err: return err version = PaymentConfig.get_version() return self.response.response_ok({"version": version})
def unfreeze_vault(self): did, app_id, err = pre_proc(self.response) if err: return err unfreeze_vault(did) return self.response.response_ok()
def remove_vault(self): did, app_id, err = pre_proc(self.response) if err: return err delete_user_vault(did) return self.response.response_ok()