![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java JavaScript Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Unicode C++) Viewing a Simple Three-Step Execution PlanSee more CURL ExamplesThis example demonstrates a straightforward, valid dependency chain that results in a three-step execution plan. The goal is not to execute the requests, but to inspect how the plan is constructed using The target Because
When Note: This example requires Chilkat v11.5.0 or greater. For more information, see https://www.chilkatsoft.com/curl_dependency_engine.asp
#include <CkHttpCurlW.h> #include <CkJsonObjectW.h> void ChilkatSample(void) { bool success = false; CkHttpCurlW httpCurl; // The target curl command requires {{order_id}}. const wchar_t *targetCurl = L"curl -X GET https://api.example.com/orders/{{order_id}}"; // Define a helper function that produces order_id from customer_id. const wchar_t *fnName = L"getOrderId"; httpCurl.AddFunction(fnName,L"curl -X GET https://api.example.com/order-id?customer={{customer_id}}"); httpCurl.AddOutput(fnName,L"order.id",L"order_id"); // Define a helper function that produces customer_id from account_name. fnName = L"getCustomerId"; httpCurl.AddFunction(fnName,L"curl -X GET https://api.example.com/customer-id?account={{account_name}}"); httpCurl.AddOutput(fnName,L"customer.id",L"customer_id"); // Provide the starting known input. httpCurl.SetVar(L"account_name",L"acme"); // Examine the execution plan without running any requests. CkJsonObjectW planJson; planJson.put_EmitCompact(false); success = httpCurl.ExaminePlan(targetCurl,planJson); // Success is expected to be true. wprintf(L"success = %d\n",success); wprintf(L"%s\n",planJson.emit()); // Expected result: // // { // "plan": [{ // "function": "getCustomerId", // "inputs": ["account_name"], // "outputs": ["customer_id"] // },{ // "function": "getOrderId", // "inputs": ["customer_id"], // "outputs": ["order_id"] // },{ // "function": "targetCurl", // "inputs": ["order_id"], // "outputs": [] // }] // } } |
||||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.