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()
Exemplo n.º 2
0
 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})
Exemplo n.º 3
0
    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()
Exemplo n.º 5
0
 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)
Exemplo n.º 6
0
    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()
Exemplo n.º 7
0
    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)
Exemplo n.º 8
0
    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)
Exemplo n.º 9
0
 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)
Exemplo n.º 10
0
 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})
Exemplo n.º 11
0
 def unfreeze_vault(self):
     did, app_id, err = pre_proc(self.response)
     if err:
         return err
     unfreeze_vault(did)
     return self.response.response_ok()
Exemplo n.º 12
0
 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()