![]() |
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
(PowerBuilder) 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
integer li_rc integer li_Success oleobject loo_HttpCurl string ls_TargetCurl string ls_FnName oleobject loo_PlanJson li_Success = 0 loo_HttpCurl = create oleobject li_rc = loo_HttpCurl.ConnectToNewObject("Chilkat.HttpCurl") if li_rc < 0 then destroy loo_HttpCurl MessageBox("Error","Connecting to COM object failed") return end if // The target curl command requires {{order_id}}. ls_TargetCurl = "curl -X GET https://api.example.com/orders/{{order_id}}" // Define a helper function that produces order_id from customer_id. ls_FnName = "getOrderId" loo_HttpCurl.AddFunction(ls_FnName,"curl -X GET https://api.example.com/order-id?customer={{customer_id}}") loo_HttpCurl.AddOutput(ls_FnName,"order.id","order_id") // Define a helper function that produces customer_id from account_name. ls_FnName = "getCustomerId" loo_HttpCurl.AddFunction(ls_FnName,"curl -X GET https://api.example.com/customer-id?account={{account_name}}") loo_HttpCurl.AddOutput(ls_FnName,"customer.id","customer_id") // Provide the starting known input. loo_HttpCurl.SetVar("account_name","acme") // Examine the execution plan without running any requests. loo_PlanJson = create oleobject li_rc = loo_PlanJson.ConnectToNewObject("Chilkat.JsonObject") loo_PlanJson.EmitCompact = 0 li_Success = loo_HttpCurl.ExaminePlan(ls_TargetCurl,loo_PlanJson) // Success is expected to be 1. Write-Debug "success = " + string(li_Success) Write-Debug loo_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": [] // }] // } destroy loo_HttpCurl destroy loo_PlanJson |
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.