當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript ConfigUtil.addSytacticSuffix函數代碼示例

本文整理匯總了TypeScript中utility/ConfigUtil.addSytacticSuffix函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript addSytacticSuffix函數的具體用法?TypeScript addSytacticSuffix怎麽用?TypeScript addSytacticSuffix使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了addSytacticSuffix函數的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: deliverStream

export async function deliverStream(sponsor: PluginBase,
    config: GmeConfig.GmeConfig, payload: string): Promise<GmeClasses.Result> {
    sponsor.logger.info("deliver multipart/form-data to URI");

    if (!config.hasOwnProperty("deliveryUrl")) {
        return Promise.reject(new Error("No uri provided."));
    }
    let configDictionary: any = config;

    try {
        let fileName = await addSytacticSuffix(config, configDictionary["topic"]);

        let form = new FormData();
        form.append("filename", payload, {
            filename: fileName,
            contentType: "text/plain",
            knownLength: payload.length
        });
        sponsor.logger.info(`payload being written: ${fileName}`);
        let uri = configDictionary["deliveryUrl"];
        form.submit(uri, (_error: any, response: any): void => {
            response.resume();
        });
        sponsor.sendNotification(`payload ${fileName} written`);
        sponsor.result.setSuccess(true);
        sponsor.sendNotification("resolved");
        return Promise.resolve(sponsor.result);
    }
    catch (err) {
        sponsor.sendNotification(`problem writing url: ${err.message}`);
        return Promise.reject(err.message);
    }
}
開發者ID:phreed,項目名稱:webgme-immortals,代碼行數:33,代碼來源:StreamDelivery.ts

示例2: deliverFile

export async function deliverFile(sponsor: PluginBase, config: GmeConfig.GmeConfig, payload: string): Promise<GmeClasses.Result> {
    sponsor.logger.info(`deliver file of size: ${payload.length}`);

    let configDictionary: any = config;
    if (!configDictionary.hasOwnProperty("topic")) {
        return Promise.reject(new Error("No file name provided."));
    }
    sponsor.sendNotification("config has property");

    try {
        let targetFileName = await addSytacticSuffix(config, configDictionary["topic"]);
        fs.ensureFileSync(targetFileName);
        let fileName = targetFileName;

        sponsor.logger.info(`file being written: ${fileName} in ${process.cwd()}`);
        fs.writeFileSync(fileName, payload);
        sponsor.sendNotification(`file ${fileName} written`);
        sponsor.result.setSuccess(true);
        return Promise.resolve(sponsor.result);
    }
    catch (err) {
        sponsor.sendNotification(`problem writing file: ${err.message}`);
        return Promise.reject(err.message);
    }
}
開發者ID:phreed,項目名稱:webgme-immortals,代碼行數:25,代碼來源:FileDelivery.ts

示例3: deliverArtifact

export async function deliverArtifact(sponsor: PluginBase, config: GmeConfig.GmeConfig, payload: string): Promise<GmeClasses.Result> {

    let configDictionary: any = config;
    sponsor.logger.info("deliver artifact");

    if (!configDictionary.hasOwnProperty("topic")) {
        return Promise.reject(new Error("No file name provided."));
    }
    sponsor.sendNotification("config has property");

    try {
        let artifactName = "stream-";
        switch (configDictionary["schematicVersion"]) {
            case "schema-tree:1.0.0":
                artifactName += "schema-tree";
                break;
            case "schema-flat:1.0.0":
                artifactName += "schema-flat";
                break;
            case "model-tree:1.0.0":
                artifactName += "model-tree";
                break;
            case "model-flat:1.0.0":
                artifactName += "model-flat";
                break;
        }
        let artifact = await sponsor.blobClient.createArtifact(artifactName);

        sponsor.sendNotification("artifact created");
        let pushedTopic = addSytacticSuffix(config, configDictionary["topic"]);


        sponsor.sendNotification(`adding: ${pushedTopic}`);
        let hash = await artifact.addFile(pushedTopic, payload);

        sponsor.sendNotification(`saving: ${hash}`);
        let reHash = await artifact.save();

        sponsor.sendNotification(`adding artifact: ${reHash}`);
        sponsor.result.addArtifact(reHash);
        sponsor.result.setSuccess(true);
        sponsor.sendNotification("resolution");
        return Promise.resolve(sponsor.result);
    } catch (err) {
        sponsor.sendNotification(`problem in file delivery: ${err.message}`);
        return Promise.reject(err.message);
    }
}
開發者ID:phreed,項目名稱:webgme-immortals,代碼行數:48,代碼來源:ArtifactDelivery.ts

示例4: deliverSinglepart

export async function deliverSinglepart(sponsor: PluginBase,
    config: GmeConfig.GmeConfig, payload: string): Promise<GmeClasses.Result> {
    sponsor.logger.info("deliver single-part to URI");

    if (!config.hasOwnProperty("deliveryUrl")) {
        return Promise.reject(new Error("No uri provided."));
    }
    let configDictionary: any = config;

    let fileName = addSytacticSuffix(config, configDictionary["topic"]);
    let deliveryUrl = configDictionary["deliveryUrl"];
    try {
        let urlMap = await url.parse(deliveryUrl);
        let postOptions: http.RequestOptions = {
            method: "POST",
            headers: {
                "Content-Type": "text/plain",
                "Content-Disposition": `attachment; filename=${fileName}`,
                "Content-Length": Buffer.byteLength(payload)
            },
            hostname: urlMap.hostname,
            port: Number(urlMap.port),
            path: urlMap.path
        };
        let postReq = http.request(postOptions, (res) => {
            res.setEncoding("utf8");
            res.on("data", (chunk: any) => {
                console.log(`Response: ${chunk}`);
            });
        });
        await postReq.write(payload);
        postReq.end();

        sponsor.sendNotification(`payload written to ${deliveryUrl} as ${fileName}`);
        sponsor.result.setSuccess(true);
        sponsor.sendNotification("resolved");
        return Promise.resolve(sponsor.result);
    } catch (err) {
        sponsor.sendNotification(`problem writing payload to url: ${err.message} as ${fileName} `);
        return Promise.reject(err.message);
    }
}
開發者ID:phreed,項目名稱:webgme-immortals,代碼行數:42,代碼來源:UriDelivery.ts


注:本文中的utility/ConfigUtil.addSytacticSuffix函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。